Merge branch 'master' of https://github.com/stedolan/jq into contains-operator

Conflicts:
	lexer.gen.c
	parser.gen.c
	parser.gen.h
	parser.gen.info
	parser.y
This commit is contained in:
Stephen Roantree committed 2012-10-25 10:02:02 -07:00
commit 50bcbc2271
3 files changed
+289 -280

No files matched your search

+178 -168
View File
@@ -40,30 +40,30 @@ Grammar
29 | Exp "<=" Exp
30 | Exp ">=" Exp
31 | Exp "contains" Exp
32 | String
33 | Term
32 | Term
34 String: QQSTRING_START QQString QQSTRING_END
33 String: QQSTRING_START QQString QQSTRING_END
35 FuncDef: "def" IDENT ':' Exp ';'
36 | "def" IDENT '(' IDENT ')' ':' Exp ';'
34 FuncDef: "def" IDENT ':' Exp ';'
35 | "def" IDENT '(' IDENT ')' ':' Exp ';'
37 QQString: /* empty */
38 | QQString QQSTRING_TEXT
39 | QQString QQSTRING_INTERP_START Exp QQSTRING_INTERP_END
36 QQString: /* empty */
37 | QQString QQSTRING_TEXT
38 | QQString QQSTRING_INTERP_START Exp QQSTRING_INTERP_END
40 ElseBody: "elif" Exp "then" Exp ElseBody
41 | "else" Exp "end"
39 ElseBody: "elif" Exp "then" Exp ElseBody
40 | "else" Exp "end"
42 ExpD: ExpD '|' ExpD
43 | Term
41 ExpD: ExpD '|' ExpD
42 | Term
44 Term: '.'
45 | Term '.' IDENT
46 | '.' IDENT
47 | Term '[' Exp ']'
48 | Term '[' ']'
49 | LITERAL
43 Term: '.'
44 | Term '.' IDENT
45 | '.' IDENT
46 | Term '[' Exp ']'
47 | Term '[' ']'
48 | LITERAL
49 | String
50 | '(' Exp ')'
51 | '[' Exp ']'
52 | '[' ']'
@@ -92,38 +92,38 @@ Terminals, with rules where they appear
$end (0) 0
'$' (36) 6 54
'(' (40) 36 50 56 57 68 69
')' (41) 36 50 56 57 68 69
'(' (40) 35 50 56 57 68 69
')' (41) 35 50 56 57 68 69
'*' (42) 21
'+' (43) 17
',' (44) 16 63 64
'-' (45) 19
'.' (46) 44 45 46
'.' (46) 43 44 45
'/' (47) 23
':' (58) 35 36 65 66 68 69
';' (59) 35 36
':' (58) 34 35 65 66 68 69
';' (59) 34 35
'<' (60) 27
'=' (61) 9
'>' (62) 28
'[' (91) 47 48 51 52 58 59
']' (93) 47 48 51 52 58 59
'[' (91) 46 47 51 52 58 59
']' (93) 46 47 51 52 58 59
'{' (123) 53 60
'|' (124) 6 15 42
'|' (124) 6 15 41
'}' (125) 53 60
error (256) 8 57 58 59 60 64 69
INVALID_CHARACTER (258)
IDENT (259) 6 35 36 45 46 54 55 56 65 67
LITERAL (260) 49
IDENT (259) 6 34 35 44 45 54 55 56 65 67
LITERAL (260) 48
"==" (261) 25
"!=" (262) 26
"//" (263) 12
"as" (264) 6
"def" (265) 35 36
"def" (265) 34 35
"if" (266) 7 8
"then" (267) 7 40
"else" (268) 41
"elif" (269) 40
"end" (270) 41
"then" (267) 7 39
"else" (268) 40
"elif" (269) 39
"end" (270) 40
"and" (271) 11
"or" (272) 10
"|=" (273) 14
@@ -135,11 +135,11 @@ LITERAL (260) 49
"<=" (279) 29
">=" (280) 30
"contains" (281) 31
QQSTRING_START (282) 34
QQSTRING_TEXT (283) 38
QQSTRING_INTERP_START (284) 39
QQSTRING_INTERP_END (285) 39
QQSTRING_END (286) 34
QQSTRING_START (282) 33
QQSTRING_TEXT (283) 37
QQSTRING_INTERP_START (284) 38
QQSTRING_INTERP_END (285) 38
QQSTRING_END (286) 33
Nonterminals, with rules where they appear
@@ -152,22 +152,22 @@ FuncDefs (53)
on left: 3 4, on right: 2 4
Exp (54)
on left: 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32 33, on right: 1 5 6 7 8 9 10 11 12 13 14
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 35 36 39 40
41 47 50 51 56 68
25 26 27 28 29 30 31 32, on right: 1 5 6 7 8 9 10 11 12 13 14 15
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 34 35 38 39 40
46 50 51 56 68
String (55)
on left: 34, on right: 32 66
on left: 33, on right: 49 66
FuncDef (56)
on left: 35 36, on right: 4 5
on left: 34 35, on right: 4 5
QQString (57)
on left: 37 38 39, on right: 34 38 39
on left: 36 37 38, on right: 33 37 38
ElseBody (58)
on left: 40 41, on right: 7 40
on left: 39 40, on right: 7 39
ExpD (59)
on left: 42 43, on right: 42 65 66 68 69
on left: 41 42, on right: 41 65 66 68 69
Term (60)
on left: 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60, on right:
6 33 43 45 47 48 59
on left: 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60,
on right: 6 32 42 44 46 47 59
MkDict (61)
on left: 61 62 63 64, on right: 53 63 64
MkDictPair (62)
@@ -211,15 +211,15 @@ state 1
state 2
49 Term: LITERAL .
48 Term: LITERAL .
$default reduce using rule 49 (Term)
$default reduce using rule 48 (Term)
state 3
35 FuncDef: "def" . IDENT ':' Exp ';'
36 | "def" . IDENT '(' IDENT ')' ':' Exp ';'
34 FuncDef: "def" . IDENT ':' Exp ';'
35 | "def" . IDENT '(' IDENT ')' ':' Exp ';'
IDENT shift, and go to state 18
@@ -248,9 +248,9 @@ state 4
state 5
34 String: QQSTRING_START . QQString QQSTRING_END
33 String: QQSTRING_START . QQString QQSTRING_END
$default reduce using rule 37 (QQString)
$default reduce using rule 36 (QQString)
QQString go to state 21
@@ -287,12 +287,12 @@ state 7
state 8
44 Term: '.' .
46 | '.' . IDENT
43 Term: '.' .
45 | '.' . IDENT
IDENT shift, and go to state 25
$default reduce using rule 44 (Term)
$default reduce using rule 43 (Term)
state 9
@@ -407,9 +407,9 @@ state 13
state 14
32 Exp: String .
49 Term: String .
$default reduce using rule 32 (Exp)
$default reduce using rule 49 (Term)
state 15
@@ -440,17 +440,17 @@ state 15
state 16
6 Exp: Term . "as" '$' IDENT '|' Exp
33 | Term .
45 Term: Term . '.' IDENT
47 | Term . '[' Exp ']'
48 | Term . '[' ']'
32 | Term .
44 Term: Term . '.' IDENT
46 | Term . '[' Exp ']'
47 | Term . '[' ']'
59 | Term . '[' error ']'
"as" shift, and go to state 61
'.' shift, and go to state 62
'[' shift, and go to state 63
$default reduce using rule 33 (Exp)
$default reduce using rule 32 (Exp)
state 17
@@ -476,8 +476,8 @@ state 17
state 18
35 FuncDef: "def" IDENT . ':' Exp ';'
36 | "def" IDENT . '(' IDENT ')' ':' Exp ';'
34 FuncDef: "def" IDENT . ':' Exp ';'
35 | "def" IDENT . '(' IDENT ')' ':' Exp ';'
':' shift, and go to state 65
'(' shift, and go to state 66
@@ -561,9 +561,9 @@ state 20
state 21
34 String: QQSTRING_START QQString . QQSTRING_END
38 QQString: QQString . QQSTRING_TEXT
39 | QQString . QQSTRING_INTERP_START Exp QQSTRING_INTERP_END
33 String: QQSTRING_START QQString . QQSTRING_END
37 QQString: QQString . QQSTRING_TEXT
38 | QQString . QQSTRING_INTERP_START Exp QQSTRING_INTERP_END
QQSTRING_TEXT shift, and go to state 69
QQSTRING_INTERP_START shift, and go to state 70
@@ -639,9 +639,9 @@ state 24
state 25
46 Term: '.' IDENT .
45 Term: '.' IDENT .
$default reduce using rule 46 (Term)
$default reduce using rule 45 (Term)
state 26
@@ -1337,15 +1337,15 @@ state 61
state 62
45 Term: Term '.' . IDENT
44 Term: Term '.' . IDENT
IDENT shift, and go to state 108
state 63
47 Term: Term '[' . Exp ']'
48 | Term '[' . ']'
46 Term: Term '[' . Exp ']'
47 | Term '[' . ']'
59 | Term '[' . error ']'
error shift, and go to state 109
@@ -1422,7 +1422,7 @@ state 64
state 65
35 FuncDef: "def" IDENT ':' . Exp ';'
34 FuncDef: "def" IDENT ':' . Exp ';'
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
@@ -1443,7 +1443,7 @@ state 65
state 66
36 FuncDef: "def" IDENT '(' . IDENT ')' ':' Exp ';'
35 FuncDef: "def" IDENT '(' . IDENT ')' ':' Exp ';'
IDENT shift, and go to state 114
@@ -1478,14 +1478,14 @@ state 68
state 69
38 QQString: QQString QQSTRING_TEXT .
37 QQString: QQString QQSTRING_TEXT .
$default reduce using rule 38 (QQString)
$default reduce using rule 37 (QQString)
state 70
39 QQString: QQString QQSTRING_INTERP_START . Exp QQSTRING_INTERP_END
38 QQString: QQString QQSTRING_INTERP_START . Exp QQSTRING_INTERP_END
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
@@ -1506,9 +1506,9 @@ state 70
state 71
34 String: QQSTRING_START QQString QQSTRING_END .
33 String: QQSTRING_START QQString QQSTRING_END .
$default reduce using rule 34 (String)
$default reduce using rule 33 (String)
state 72
@@ -1566,16 +1566,18 @@ state 78
65 MkDictPair: IDENT ':' . ExpD
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
QQSTRING_START shift, and go to state 5
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
ExpD go to state 119
Term go to state 120
String go to state 14
ExpD go to state 119
Term go to state 120
state 79
@@ -1642,16 +1644,18 @@ state 81
66 MkDictPair: String ':' . ExpD
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
QQSTRING_START shift, and go to state 5
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
ExpD go to state 123
Term go to state 120
String go to state 14
ExpD go to state 123
Term go to state 120
state 82
@@ -2719,9 +2723,9 @@ state 107
state 108
45 Term: Term '.' IDENT .
44 Term: Term '.' IDENT .
$default reduce using rule 45 (Term)
$default reduce using rule 44 (Term)
state 109
@@ -2733,9 +2737,9 @@ state 109
state 110
48 Term: Term '[' ']' .
47 Term: Term '[' ']' .
$default reduce using rule 48 (Term)
$default reduce using rule 47 (Term)
state 111
@@ -2763,7 +2767,7 @@ state 111
29 | Exp . "<=" Exp
30 | Exp . ">=" Exp
31 | Exp . "contains" Exp
47 Term: Term '[' Exp . ']'
46 Term: Term '[' Exp . ']'
"==" shift, and go to state 36
"!=" shift, and go to state 37
@@ -2823,7 +2827,7 @@ state 113
29 | Exp . "<=" Exp
30 | Exp . ">=" Exp
31 | Exp . "contains" Exp
35 FuncDef: "def" IDENT ':' Exp . ';'
34 FuncDef: "def" IDENT ':' Exp . ';'
"==" shift, and go to state 36
"!=" shift, and go to state 37
@@ -2853,7 +2857,7 @@ state 113
state 114
36 FuncDef: "def" IDENT '(' IDENT . ')' ':' Exp ';'
35 FuncDef: "def" IDENT '(' IDENT . ')' ':' Exp ';'
')' shift, and go to state 129
@@ -2939,7 +2943,7 @@ state 116
29 | Exp . "<=" Exp
30 | Exp . ">=" Exp
31 | Exp . "contains" Exp
39 QQString: QQString QQSTRING_INTERP_START Exp . QQSTRING_INTERP_END
38 QQString: QQString QQSTRING_INTERP_START Exp . QQSTRING_INTERP_END
"==" shift, and go to state 36
"!=" shift, and go to state 37
@@ -2983,7 +2987,7 @@ state 118
state 119
42 ExpD: ExpD . '|' ExpD
41 ExpD: ExpD . '|' ExpD
65 MkDictPair: IDENT ':' ExpD .
'|' shift, and go to state 134
@@ -2993,16 +2997,16 @@ state 119
state 120
43 ExpD: Term .
45 Term: Term . '.' IDENT
47 | Term . '[' Exp ']'
48 | Term . '[' ']'
42 ExpD: Term .
44 Term: Term . '.' IDENT
46 | Term . '[' Exp ']'
47 | Term . '[' ']'
59 | Term . '[' error ']'
'.' shift, and go to state 62
'[' shift, and go to state 63
$default reduce using rule 43 (ExpD)
$default reduce using rule 42 (ExpD)
state 121
@@ -3021,7 +3025,7 @@ state 122
state 123
42 ExpD: ExpD . '|' ExpD
41 ExpD: ExpD . '|' ExpD
66 MkDictPair: String ':' ExpD .
'|' shift, and go to state 134
@@ -3052,28 +3056,28 @@ state 126
state 127
47 Term: Term '[' Exp ']' .
46 Term: Term '[' Exp ']' .
$default reduce using rule 47 (Term)
$default reduce using rule 46 (Term)
state 128
35 FuncDef: "def" IDENT ':' Exp ';' .
34 FuncDef: "def" IDENT ':' Exp ';' .
$default reduce using rule 35 (FuncDef)
$default reduce using rule 34 (FuncDef)
state 129
36 FuncDef: "def" IDENT '(' IDENT ')' . ':' Exp ';'
35 FuncDef: "def" IDENT '(' IDENT ')' . ':' Exp ';'
':' shift, and go to state 138
state 130
41 ElseBody: "else" . Exp "end"
40 ElseBody: "else" . Exp "end"
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
@@ -3094,7 +3098,7 @@ state 130
state 131
40 ElseBody: "elif" . Exp "then" Exp ElseBody
39 ElseBody: "elif" . Exp "then" Exp ElseBody
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
@@ -3122,57 +3126,63 @@ state 132
state 133
39 QQString: QQString QQSTRING_INTERP_START Exp QQSTRING_INTERP_END .
38 QQString: QQString QQSTRING_INTERP_START Exp QQSTRING_INTERP_END .
$default reduce using rule 39 (QQString)
$default reduce using rule 38 (QQString)
state 134
42 ExpD: ExpD '|' . ExpD
41 ExpD: ExpD '|' . ExpD
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
QQSTRING_START shift, and go to state 5
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
ExpD go to state 141
Term go to state 120
String go to state 14
ExpD go to state 141
Term go to state 120
state 135
69 MkDictPair: '(' error ')' ':' . ExpD
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
QQSTRING_START shift, and go to state 5
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
ExpD go to state 142
Term go to state 120
String go to state 14
ExpD go to state 142
Term go to state 120
state 136
68 MkDictPair: '(' Exp ')' ':' . ExpD
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
QQSTRING_START shift, and go to state 5
'$' shift, and go to state 6
'(' shift, and go to state 7
'.' shift, and go to state 8
'[' shift, and go to state 9
'{' shift, and go to state 10
ExpD go to state 143
Term go to state 120
String go to state 14
ExpD go to state 143
Term go to state 120
state 137
@@ -3198,7 +3208,7 @@ state 137
state 138
36 FuncDef: "def" IDENT '(' IDENT ')' ':' . Exp ';'
35 FuncDef: "def" IDENT '(' IDENT ')' ':' . Exp ';'
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
@@ -3242,7 +3252,7 @@ state 139
29 | Exp . "<=" Exp
30 | Exp . ">=" Exp
31 | Exp . "contains" Exp
41 ElseBody: "else" Exp . "end"
40 ElseBody: "else" Exp . "end"
"==" shift, and go to state 36
"!=" shift, and go to state 37
@@ -3295,7 +3305,7 @@ state 140
29 | Exp . "<=" Exp
30 | Exp . ">=" Exp
31 | Exp . "contains" Exp
40 ElseBody: "elif" Exp . "then" Exp ElseBody
39 ElseBody: "elif" Exp . "then" Exp ElseBody
"==" shift, and go to state 36
"!=" shift, and go to state 37
@@ -3325,15 +3335,15 @@ state 140
state 141
42 ExpD: ExpD . '|' ExpD
42 | ExpD '|' ExpD .
41 ExpD: ExpD . '|' ExpD
41 | ExpD '|' ExpD .
$default reduce using rule 42 (ExpD)
$default reduce using rule 41 (ExpD)
state 142
42 ExpD: ExpD . '|' ExpD
41 ExpD: ExpD . '|' ExpD
69 MkDictPair: '(' error ')' ':' ExpD .
'|' shift, and go to state 134
@@ -3343,7 +3353,7 @@ state 142
state 143
42 ExpD: ExpD . '|' ExpD
41 ExpD: ExpD . '|' ExpD
68 MkDictPair: '(' Exp ')' ':' ExpD .
'|' shift, and go to state 134
@@ -3429,7 +3439,7 @@ state 145
29 | Exp . "<=" Exp
30 | Exp . ">=" Exp
31 | Exp . "contains" Exp
36 FuncDef: "def" IDENT '(' IDENT ')' ':' Exp . ';'
35 FuncDef: "def" IDENT '(' IDENT ')' ':' Exp . ';'
"==" shift, and go to state 36
"!=" shift, and go to state 37
@@ -3459,14 +3469,14 @@ state 145
state 146
41 ElseBody: "else" Exp "end" .
40 ElseBody: "else" Exp "end" .
$default reduce using rule 41 (ElseBody)
$default reduce using rule 40 (ElseBody)
state 147
40 ElseBody: "elif" Exp "then" . Exp ElseBody
39 ElseBody: "elif" Exp "then" . Exp ElseBody
IDENT shift, and go to state 1
LITERAL shift, and go to state 2
@@ -3487,9 +3497,9 @@ state 147
state 148
36 FuncDef: "def" IDENT '(' IDENT ')' ':' Exp ';' .
35 FuncDef: "def" IDENT '(' IDENT ')' ':' Exp ';' .
$default reduce using rule 36 (FuncDef)
$default reduce using rule 35 (FuncDef)
state 149
@@ -3517,7 +3527,7 @@ state 149
29 | Exp . "<=" Exp
30 | Exp . ">=" Exp
31 | Exp . "contains" Exp
40 ElseBody: "elif" Exp "then" Exp . ElseBody
39 ElseBody: "elif" Exp "then" Exp . ElseBody
"==" shift, and go to state 36
"!=" shift, and go to state 37
@@ -3550,6 +3560,6 @@ state 149
state 150
40 ElseBody: "elif" Exp "then" Exp ElseBody .
39 ElseBody: "elif" Exp "then" Exp ElseBody .
$default reduce using rule 40 (ElseBody)
$default reduce using rule 39 (ElseBody)