zmap-freebsd/filter_sandbox/y.output

304 lines
5.8 KiB
Plaintext

Grammar
0 $accept: filter_expr $end
1 filter_expr: filter_expr T_OR filter_expr
2 | filter_expr T_AND filter_expr
3 | '(' filter_expr ')'
4 | filter
5 filter: number_filter
6 | string_filter
7 number_filter: T_FIELD '=' T_NUMBER
8 | T_FIELD '>' T_NUMBER
9 | T_FIELD '<' T_NUMBER
10 | T_FIELD T_NOT_EQ T_NUMBER
11 | T_FIELD T_GT_EQ T_NUMBER
12 | T_FIELD T_LT_EQ T_NUMBER
13 string_filter: T_FIELD '=' T_FIELD
14 | T_FIELD T_NOT_EQ T_FIELD
Terminals, with rules where they appear
$end (0) 0
'(' (40) 3
')' (41) 3
'<' (60) 9
'=' (61) 7 13
'>' (62) 8
error (256)
T_AND (258) 2
T_OR (259) 1
T_NUMBER (260) 7 8 9 10 11 12
T_FIELD (261) 7 8 9 10 11 12 13 14
T_NOT_EQ (262) 10 14
T_GT_EQ (263) 11
T_LT_EQ (264) 12
Nonterminals, with rules where they appear
$accept (15)
on left: 0
filter_expr (16)
on left: 1 2 3 4, on right: 0 1 2 3
filter (17)
on left: 5 6, on right: 4
number_filter (18)
on left: 7 8 9 10 11 12, on right: 5
string_filter (19)
on left: 13 14, on right: 6
state 0
0 $accept: . filter_expr $end
'(' shift, and go to state 1
T_FIELD shift, and go to state 2
filter_expr go to state 3
filter go to state 4
number_filter go to state 5
string_filter go to state 6
state 1
3 filter_expr: '(' . filter_expr ')'
'(' shift, and go to state 1
T_FIELD shift, and go to state 2
filter_expr go to state 7
filter go to state 4
number_filter go to state 5
string_filter go to state 6
state 2
7 number_filter: T_FIELD . '=' T_NUMBER
8 | T_FIELD . '>' T_NUMBER
9 | T_FIELD . '<' T_NUMBER
10 | T_FIELD . T_NOT_EQ T_NUMBER
11 | T_FIELD . T_GT_EQ T_NUMBER
12 | T_FIELD . T_LT_EQ T_NUMBER
13 string_filter: T_FIELD . '=' T_FIELD
14 | T_FIELD . T_NOT_EQ T_FIELD
T_NOT_EQ shift, and go to state 8
'>' shift, and go to state 9
T_GT_EQ shift, and go to state 10
'<' shift, and go to state 11
'=' shift, and go to state 12
T_LT_EQ shift, and go to state 13
state 3
0 $accept: filter_expr . $end
1 filter_expr: filter_expr . T_OR filter_expr
2 | filter_expr . T_AND filter_expr
$end shift, and go to state 14
T_AND shift, and go to state 15
T_OR shift, and go to state 16
state 4
4 filter_expr: filter .
$default reduce using rule 4 (filter_expr)
state 5
5 filter: number_filter .
$default reduce using rule 5 (filter)
state 6
6 filter: string_filter .
$default reduce using rule 6 (filter)
state 7
1 filter_expr: filter_expr . T_OR filter_expr
2 | filter_expr . T_AND filter_expr
3 | '(' filter_expr . ')'
')' shift, and go to state 17
T_AND shift, and go to state 15
T_OR shift, and go to state 16
state 8
10 number_filter: T_FIELD T_NOT_EQ . T_NUMBER
14 string_filter: T_FIELD T_NOT_EQ . T_FIELD
T_NUMBER shift, and go to state 18
T_FIELD shift, and go to state 19
state 9
8 number_filter: T_FIELD '>' . T_NUMBER
T_NUMBER shift, and go to state 20
state 10
11 number_filter: T_FIELD T_GT_EQ . T_NUMBER
T_NUMBER shift, and go to state 21
state 11
9 number_filter: T_FIELD '<' . T_NUMBER
T_NUMBER shift, and go to state 22
state 12
7 number_filter: T_FIELD '=' . T_NUMBER
13 string_filter: T_FIELD '=' . T_FIELD
T_NUMBER shift, and go to state 23
T_FIELD shift, and go to state 24
state 13
12 number_filter: T_FIELD T_LT_EQ . T_NUMBER
T_NUMBER shift, and go to state 25
state 14
0 $accept: filter_expr $end .
$default accept
state 15
2 filter_expr: filter_expr T_AND . filter_expr
'(' shift, and go to state 1
T_FIELD shift, and go to state 2
filter_expr go to state 26
filter go to state 4
number_filter go to state 5
string_filter go to state 6
state 16
1 filter_expr: filter_expr T_OR . filter_expr
'(' shift, and go to state 1
T_FIELD shift, and go to state 2
filter_expr go to state 27
filter go to state 4
number_filter go to state 5
string_filter go to state 6
state 17
3 filter_expr: '(' filter_expr ')' .
$default reduce using rule 3 (filter_expr)
state 18
10 number_filter: T_FIELD T_NOT_EQ T_NUMBER .
$default reduce using rule 10 (number_filter)
state 19
14 string_filter: T_FIELD T_NOT_EQ T_FIELD .
$default reduce using rule 14 (string_filter)
state 20
8 number_filter: T_FIELD '>' T_NUMBER .
$default reduce using rule 8 (number_filter)
state 21
11 number_filter: T_FIELD T_GT_EQ T_NUMBER .
$default reduce using rule 11 (number_filter)
state 22
9 number_filter: T_FIELD '<' T_NUMBER .
$default reduce using rule 9 (number_filter)
state 23
7 number_filter: T_FIELD '=' T_NUMBER .
$default reduce using rule 7 (number_filter)
state 24
13 string_filter: T_FIELD '=' T_FIELD .
$default reduce using rule 13 (string_filter)
state 25
12 number_filter: T_FIELD T_LT_EQ T_NUMBER .
$default reduce using rule 12 (number_filter)
state 26
1 filter_expr: filter_expr . T_OR filter_expr
2 | filter_expr . T_AND filter_expr
2 | filter_expr T_AND filter_expr .
$default reduce using rule 2 (filter_expr)
state 27
1 filter_expr: filter_expr . T_OR filter_expr
1 | filter_expr T_OR filter_expr .
2 | filter_expr . T_AND filter_expr
T_AND shift, and go to state 15
$default reduce using rule 1 (filter_expr)