@@ -20,13 +20,15 @@ type lexErrorTest struct {
2020
2121var lexTests = []lexTest {
2222 {
23- "1 02 1e3 1.2e-4 1_000_000" ,
23+ ".5 1 02 1e3 1.2e-4 1_000_000 _42 " ,
2424 []Token {
25+ {Kind : Number , Value : ".5" },
2526 {Kind : Number , Value : "1" },
2627 {Kind : Number , Value : "02" },
2728 {Kind : Number , Value : "1e3" },
2829 {Kind : Number , Value : "1.2e-4" },
2930 {Kind : Number , Value : "1_000_000" },
31+ {Kind : Identifier , Value : "_42" },
3032 {Kind : EOF },
3133 },
3234 },
@@ -44,18 +46,32 @@ var lexTests = []lexTest{
4446 },
4547 },
4648 {
47- "a and orb" ,
49+ "a and orb().val " ,
4850 []Token {
4951 {Kind : Identifier , Value : "a" },
5052 {Kind : Operator , Value : "and" },
5153 {Kind : Identifier , Value : "orb" },
54+ {Kind : Bracket , Value : "(" },
55+ {Kind : Bracket , Value : ")" },
56+ {Kind : Operator , Value : "." },
57+ {Kind : Identifier , Value : "val" },
5258 {Kind : EOF },
5359 },
5460 },
5561 {
56- `not in` ,
62+ `not in not abc not i not(false) not in ` ,
5763 []Token {
5864 {Kind : Operator , Value : "not in" },
65+ {Kind : Operator , Value : "not" },
66+ {Kind : Identifier , Value : "abc" },
67+ {Kind : Operator , Value : "not" },
68+ {Kind : Identifier , Value : "i" },
69+ {Kind : Operator , Value : "not" },
70+ {Kind : Bracket , Value : "(" },
71+ {Kind : Identifier , Value : "false" },
72+ {Kind : Bracket , Value : ")" },
73+ {Kind : Operator , Value : "not" },
74+ {Kind : Operator , Value : "in" },
5975 {Kind : EOF },
6076 },
6177 },
0 commit comments