Extract public compiler API into its own header file

This commit is contained in:
Max Brunsfeld 2014-02-16 22:13:08 -08:00
parent 0b4e1c8d0d
commit 9e2dc14182
53 changed files with 466 additions and 409 deletions

View file

@ -1,5 +1,6 @@
#include "spec_helper.h"
#include "rules.h"
#include "pattern.h"
#include "character_set.h"
using namespace rules;
@ -11,9 +12,9 @@ describe("parsing pattern rules", []() {
AssertThat(
rule.to_rule_tree(),
EqualsPointer(seq({
character('a'),
character('b'),
character('c')
character({ 'a' }),
character({ 'b' }),
character({ 'c' })
})));
});
@ -23,7 +24,7 @@ describe("parsing pattern rules", []() {
rule.to_rule_tree(),
EqualsPointer(seq({
character({ {'a', 'z'}, {'A', 'Z'} }),
character('-'),
character({ '-' }),
character({ {'0', '9'} })
})));
});
@ -34,16 +35,16 @@ describe("parsing pattern rules", []() {
rule.to_rule_tree(),
EqualsPointer(choice({
seq({
character('a'),
character('b'),
character({ 'a' }),
character({ 'b' }),
}),
seq({
character('c'),
character('d')
character({ 'c' }),
character({ 'd' })
}),
seq({
character('e'),
character('f')
character({ 'e' }),
character({ 'f' })
})
})));
});
@ -73,7 +74,7 @@ describe("parsing pattern rules", []() {
Pattern rule("\\\\");
AssertThat(
rule.to_rule_tree(),
EqualsPointer(character('\\')));
EqualsPointer(character({ '\\' })));
});
it("parses character groups in sequences", []() {
@ -81,12 +82,12 @@ describe("parsing pattern rules", []() {
AssertThat(
rule.to_rule_tree(),
EqualsPointer(seq({
character('"'),
character({ '"' }),
repeat(choice({
character({ '"' }, false),
seq({ character('\\'), character('"') })
seq({ character({ '\\' }), character({ '"' }) })
})),
character('"')
character({ '"' })
})));
});
@ -96,11 +97,11 @@ describe("parsing pattern rules", []() {
rule.to_rule_tree(),
EqualsPointer(seq({
choice({
character('a'),
character('b'),
character({ 'a' }),
character({ 'b' }),
}),
character('c'),
character('d')
character({ 'c' }),
character({ 'd' })
})));
});
@ -109,9 +110,9 @@ describe("parsing pattern rules", []() {
AssertThat(
rule.to_rule_tree(),
EqualsPointer(seq({
character('a'),
character('('),
character('b')
character({ 'a' }),
character({ '(' }),
character({ 'b' })
})));
});
@ -122,12 +123,12 @@ describe("parsing pattern rules", []() {
EqualsPointer(
seq({
repeat(seq({
character('a'),
character('b')
character({ 'a' }),
character({ 'b' })
})),
repeat(seq({
character('c'),
character('d')
character({ 'c' }),
character({ 'd' })
})),
})
));