blob: a0a95d1154305d1ee5ee0e8d36b41723cd545ba0 [file] [log] [blame]
***** PLEASE READ THIS! DO NOT DELETE THIS BLOCK! *****
* The main reason this file has been generated and submitted is to try to ensure
* we never submit changes that cause shift/reduce or reduce/reduce conflicts.
* The Go yacc tool doesn't support the %expect directive, and will happily
* generate a parser even if such conflicts exist; it's up to the developer
* running the tool to notice that an error message is reported. The bottom of
* this file contains stats, including the number of conflicts. If you're
* reviewing a change make sure it says 0 conflicts.
*
* If you're updating the grammar, just cut-and-paste this message from the old
* file to the new one, so that this comment block persists.
***** PLEASE READ THIS! DO NOT DELETE THIS BLOCK! *****
state 0
$accept: .start $end
startFileImports shift 2
startFile shift 3
startConfigImports shift 4
startConfig shift 5
startExprs shift 6
. error
start goto 1
state 1
$accept: start.$end
$end accept
. error
state 2
start: startFileImports.package imports gen_imports_eof
package: . (10)
tPACKAGE shift 8
. reduce 10 (src line 154)
package goto 7
state 3
start: startFile.package imports defs
package: . (10)
tPACKAGE shift 8
. reduce 10 (src line 154)
package goto 9
state 4
start: startConfigImports.config imports gen_imports_eof
config: . (12)
tIDENT shift 11
. reduce 12 (src line 161)
config goto 10
state 5
start: startConfig.config imports defs
config: . (12)
tIDENT shift 11
. reduce 12 (src line 161)
config goto 12
state 6
start: startExprs.expr_comma_list ';'
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 14
unary_expr goto 15
operand goto 16
expr_comma_list goto 13
comp_lit goto 27
state 7
start: startFileImports package.imports gen_imports_eof
imports: . (14)
. reduce 14 (src line 178)
imports goto 41
state 8
package: tPACKAGE.tIDENT ';'
tIDENT shift 42
. error
state 9
start: startFile package.imports defs
imports: . (14)
. reduce 14 (src line 178)
imports goto 43
state 10
start: startConfigImports config.imports gen_imports_eof
imports: . (14)
. reduce 14 (src line 178)
imports goto 44
state 11
config: tIDENT.'=' expr ';'
'=' shift 45
. error
state 12
start: startConfig config.imports defs
imports: . (14)
. reduce 14 (src line 178)
imports goto 46
state 13
start: startExprs expr_comma_list.';'
expr_comma_list: expr_comma_list.',' expr
';' shift 47
',' shift 48
. error
state 14
expr_comma_list: expr. (83)
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. reduce 83 (src line 445)
state 15
expr: unary_expr. (88)
. reduce 88 (src line 463)
state 16
unary_expr: operand. (107)
. reduce 107 (src line 503)
state 17
unary_expr: '!'.unary_expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
unary_expr goto 67
operand goto 16
comp_lit goto 27
state 18
unary_expr: '+'.unary_expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
unary_expr goto 68
operand goto 16
comp_lit goto 27
state 19
unary_expr: '-'.unary_expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
unary_expr goto 69
operand goto 16
comp_lit goto 27
state 20
unary_expr: '^'.unary_expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
unary_expr goto 70
operand goto 16
comp_lit goto 27
state 21
type: type_no_typeobject. (52)
unary_expr: type_no_typeobject.'(' expr ')'
'(' shift 71
. reduce 52 (src line 280)
state 22
type: tTYPEOBJECT. (53)
unary_expr: tTYPEOBJECT.'(' type ')'
'(' shift 72
. reduce 53 (src line 283)
state 23
operand: tSTRLIT. (114)
nameref: tSTRLIT.'.' dotnameref
'.' shift 73
. reduce 114 (src line 519)
state 24
operand: tINTLIT. (115)
. reduce 115 (src line 522)
state 25
operand: tRATLIT. (116)
. reduce 116 (src line 524)
state 26
type_no_typeobject: nameref. (40)
operand: nameref. (117)
operand: nameref.'[' expr ']'
'(' reduce 40 (src line 253)
'[' shift 74
'{' reduce 40 (src line 253)
. reduce 117 (src line 526)
state 27
operand: comp_lit. (118)
operand: comp_lit.'.' tIDENT
operand: comp_lit.'[' expr ']'
'.' shift 75
'[' shift 76
. reduce 118 (src line 528)
state 28
operand: '('.expr ')'
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 77
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 29
type_no_typeobject: tERROR. (41)
. reduce 41 (src line 256)
state 30
type_no_typeobject: '['.tINTLIT ']' type
type_no_typeobject: '['.']' type
']' shift 79
tINTLIT shift 78
. error
state 31
type_no_typeobject: tENUM.'{' label_spec_list osemi '}'
'{' shift 80
. error
state 32
type_no_typeobject: tSET.'[' type ']'
'[' shift 81
. error
state 33
type_no_typeobject: tMAP.'[' type ']' type
'[' shift 82
. error
state 34
type_no_typeobject: tSTRUCT.'{' field_spec_list osemi '}'
type_no_typeobject: tSTRUCT.'{' '}'
'{' shift 83
. error
state 35
type_no_typeobject: tUNION.'{' field_spec_list osemi '}'
type_no_typeobject: tUNION.'{' '}'
'{' shift 84
. error
state 36
type_no_typeobject: '?'.type
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 85
type_no_typeobject goto 86
state 37
nameref: dotnameref. (139)
dotnameref: dotnameref.'.' tIDENT
'.' shift 90
. reduce 139 (src line 611)
state 38
comp_lit: otype.'{' '}'
comp_lit: otype.'{' kv_lit_list ocomma '}'
'{' shift 91
. error
state 39
dotnameref: tIDENT. (141)
. reduce 141 (src line 618)
state 40
otype: type. (144)
. reduce 144 (src line 627)
state 41
start: startFileImports package imports.gen_imports_eof
imports: imports.import ';'
gen_imports_eof: . (6)
tCONST shift 95
tERROR shift 96
tIMPORT shift 97
tTYPE shift 94
. reduce 6 (src line 143)
gen_imports_eof goto 92
import goto 93
state 42
package: tPACKAGE tIDENT.';'
';' shift 98
. error
state 43
start: startFile package imports.defs
imports: imports.import ';'
defs: . (23)
tIMPORT shift 97
. reduce 23 (src line 204)
defs goto 99
import goto 93
state 44
start: startConfigImports config imports.gen_imports_eof
imports: imports.import ';'
gen_imports_eof: . (6)
tCONST shift 95
tERROR shift 96
tIMPORT shift 97
tTYPE shift 94
. reduce 6 (src line 143)
gen_imports_eof goto 100
import goto 93
state 45
config: tIDENT '='.expr ';'
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 101
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 46
start: startConfig config imports.defs
imports: imports.import ';'
defs: . (23)
tIMPORT shift 97
. reduce 23 (src line 204)
defs goto 102
import goto 93
state 47
start: startExprs expr_comma_list ';'. (5)
. reduce 5 (src line 135)
state 48
expr_comma_list: expr_comma_list ','.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 103
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 49
expr: expr tOROR.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 104
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 50
expr: expr tANDAND.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 105
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 51
expr: expr '<'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 106
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 52
expr: expr '>'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 107
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 53
expr: expr tLE.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 108
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 54
expr: expr tGE.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 109
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 55
expr: expr tNE.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 110
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 56
expr: expr tEQEQ.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 111
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 57
expr: expr '+'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 112
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 58
expr: expr '-'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 113
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 59
expr: expr '*'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 114
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 60
expr: expr '/'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 115
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 61
expr: expr '%'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 116
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 62
expr: expr '|'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 117
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 63
expr: expr '&'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 118
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 64
expr: expr '^'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 119
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 65
expr: expr tLSH.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 120
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 66
expr: expr tRSH.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 121
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 67
unary_expr: '!' unary_expr. (108)
. reduce 108 (src line 506)
state 68
unary_expr: '+' unary_expr. (109)
. reduce 109 (src line 508)
state 69
unary_expr: '-' unary_expr. (110)
. reduce 110 (src line 510)
state 70
unary_expr: '^' unary_expr. (111)
. reduce 111 (src line 512)
state 71
unary_expr: type_no_typeobject '('.expr ')'
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 122
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 72
unary_expr: tTYPEOBJECT '('.type ')'
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 123
type_no_typeobject goto 86
state 73
nameref: tSTRLIT '.'.dotnameref
tIDENT shift 39
. error
dotnameref goto 124
state 74
operand: nameref '['.expr ']'
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 125
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 75
operand: comp_lit '.'.tIDENT
tIDENT shift 126
. error
state 76
operand: comp_lit '['.expr ']'
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 127
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 77
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
operand: '(' expr.')'
')' shift 128
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. error
state 78
type_no_typeobject: '[' tINTLIT.']' type
']' shift 129
. error
state 79
type_no_typeobject: '[' ']'.type
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 130
type_no_typeobject goto 86
state 80
type_no_typeobject: tENUM '{'.label_spec_list osemi '}'
tIDENT shift 133
. error
label_spec goto 132
label_spec_list goto 131
state 81
type_no_typeobject: tSET '['.type ']'
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 134
type_no_typeobject goto 86
state 82
type_no_typeobject: tMAP '['.type ']' type
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 135
type_no_typeobject goto 86
state 83
type_no_typeobject: tSTRUCT '{'.field_spec_list osemi '}'
type_no_typeobject: tSTRUCT '{'.'}'
'[' shift 30
'}' shift 137
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 140
type_no_typeobject goto 86
type_comma_list goto 139
field_spec_list goto 136
field_spec goto 138
state 84
type_no_typeobject: tUNION '{'.field_spec_list osemi '}'
type_no_typeobject: tUNION '{'.'}'
'[' shift 30
'}' shift 142
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 140
type_no_typeobject goto 86
type_comma_list goto 139
field_spec_list goto 141
field_spec goto 138
state 85
type_no_typeobject: '?' type. (51)
. reduce 51 (src line 276)
state 86
type: type_no_typeobject. (52)
. reduce 52 (src line 280)
state 87
type: tTYPEOBJECT. (53)
. reduce 53 (src line 283)
state 88
type_no_typeobject: nameref. (40)
. reduce 40 (src line 253)
state 89
nameref: tSTRLIT.'.' dotnameref
'.' shift 73
. error
state 90
dotnameref: dotnameref '.'.tIDENT
tIDENT shift 143
. error
state 91
comp_lit: otype '{'.'}'
comp_lit: otype '{'.kv_lit_list ocomma '}'
otype: . (143)
'(' shift 28
'[' shift 30
'}' shift 144
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 147
unary_expr goto 15
operand goto 16
comp_lit goto 27
kv_lit goto 146
kv_lit_list goto 145
state 92
start: startFileImports package imports gen_imports_eof. (1)
. reduce 1 (src line 130)
state 93
imports: imports import.';'
';' shift 148
. error
state 94
gen_imports_eof: tTYPE. (7)
. reduce 7 (src line 146)
state 95
gen_imports_eof: tCONST. (8)
. reduce 8 (src line 148)
state 96
gen_imports_eof: tERROR. (9)
. reduce 9 (src line 150)
state 97
import: tIMPORT.'(' ')'
import: tIMPORT.'(' import_spec_list osemi ')'
import: tIMPORT.import_spec
'(' shift 149
tIDENT shift 152
tSTRLIT shift 151
. error
import_spec goto 150
state 98
package: tPACKAGE tIDENT ';'. (11)
. reduce 11 (src line 157)
state 99
start: startFile package imports defs. (2)
defs: defs.type_def ';'
defs: defs.const_def ';'
defs: defs.error_def ';'
tCONST shift 157
tERROR shift 158
tTYPE shift 156
. reduce 2 (src line 132)
type_def goto 153
const_def goto 154
error_def goto 155
state 100
start: startConfigImports config imports gen_imports_eof. (3)
. reduce 3 (src line 133)
state 101
config: tIDENT '=' expr.';'
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
';' shift 159
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. error
state 102
start: startConfig config imports defs. (4)
defs: defs.type_def ';'
defs: defs.const_def ';'
defs: defs.error_def ';'
tCONST shift 157
tERROR shift 158
tTYPE shift 156
. reduce 4 (src line 134)
type_def goto 153
const_def goto 154
error_def goto 155
state 103
expr_comma_list: expr_comma_list ',' expr. (84)
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. reduce 84 (src line 448)
state 104
expr: expr.tOROR expr
expr: expr tOROR expr. (89)
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. reduce 89 (src line 466)
state 105
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr tANDAND expr. (90)
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. reduce 90 (src line 468)
state 106
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr '<' expr. (91)
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tLSH shift 65
tRSH shift 66
. reduce 91 (src line 470)
state 107
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr '>' expr. (92)
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tLSH shift 65
tRSH shift 66
. reduce 92 (src line 472)
state 108
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr tLE expr. (93)
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tLSH shift 65
tRSH shift 66
. reduce 93 (src line 474)
state 109
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr tGE expr. (94)
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tLSH shift 65
tRSH shift 66
. reduce 94 (src line 476)
state 110
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr tNE expr. (95)
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tLSH shift 65
tRSH shift 66
. reduce 95 (src line 478)
state 111
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr tEQEQ expr. (96)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tLSH shift 65
tRSH shift 66
. reduce 96 (src line 480)
state 112
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr '+' expr. (97)
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'*' shift 59
'/' shift 60
'%' shift 61
'&' shift 63
tLSH shift 65
tRSH shift 66
. reduce 97 (src line 482)
state 113
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr '-' expr. (98)
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'*' shift 59
'/' shift 60
'%' shift 61
'&' shift 63
tLSH shift 65
tRSH shift 66
. reduce 98 (src line 484)
state 114
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr '*' expr. (99)
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
. reduce 99 (src line 486)
state 115
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr '/' expr. (100)
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
. reduce 100 (src line 488)
state 116
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr '%' expr. (101)
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
. reduce 101 (src line 490)
state 117
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr '|' expr. (102)
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
'*' shift 59
'/' shift 60
'%' shift 61
'&' shift 63
tLSH shift 65
tRSH shift 66
. reduce 102 (src line 492)
state 118
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr '&' expr. (103)
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
. reduce 103 (src line 494)
state 119
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr '^' expr. (104)
expr: expr.tLSH expr
expr: expr.tRSH expr
'*' shift 59
'/' shift 60
'%' shift 61
'&' shift 63
tLSH shift 65
tRSH shift 66
. reduce 104 (src line 496)
state 120
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr tLSH expr. (105)
expr: expr.tRSH expr
. reduce 105 (src line 498)
state 121
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
expr: expr tRSH expr. (106)
. reduce 106 (src line 500)
state 122
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
unary_expr: type_no_typeobject '(' expr.')'
')' shift 160
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. error
state 123
unary_expr: tTYPEOBJECT '(' type.')'
')' shift 161
. error
state 124
nameref: tSTRLIT '.' dotnameref. (140)
dotnameref: dotnameref.'.' tIDENT
'.' shift 90
. reduce 140 (src line 614)
state 125
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
operand: nameref '[' expr.']'
']' shift 162
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. error
state 126
operand: comp_lit '.' tIDENT. (119)
. reduce 119 (src line 530)
state 127
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
operand: comp_lit '[' expr.']'
']' shift 163
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. error
state 128
operand: '(' expr ')'. (122)
. reduce 122 (src line 536)
state 129
type_no_typeobject: '[' tINTLIT ']'.type
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 164
type_no_typeobject goto 86
state 130
type_no_typeobject: '[' ']' type. (43)
. reduce 43 (src line 260)
state 131
type_no_typeobject: tENUM '{' label_spec_list.osemi '}'
label_spec_list: label_spec_list.';' label_spec
osemi: . (145)
';' shift 166
. reduce 145 (src line 630)
osemi goto 165
state 132
label_spec_list: label_spec. (54)
. reduce 54 (src line 286)
state 133
label_spec: tIDENT. (56)
. reduce 56 (src line 292)
state 134
type_no_typeobject: tSET '[' type.']'
']' shift 167
. error
state 135
type_no_typeobject: tMAP '[' type.']' type
']' shift 168
. error
state 136
type_no_typeobject: tSTRUCT '{' field_spec_list.osemi '}'
field_spec_list: field_spec_list.';' field_spec
osemi: . (145)
';' shift 170
. reduce 145 (src line 630)
osemi goto 169
state 137
type_no_typeobject: tSTRUCT '{' '}'. (48)
. reduce 48 (src line 270)
state 138
field_spec_list: field_spec. (57)
. reduce 57 (src line 296)
state 139
field_spec: type_comma_list.type
type_comma_list: type_comma_list.',' type
',' shift 172
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 171
type_no_typeobject goto 86
state 140
type_comma_list: type. (60)
. reduce 60 (src line 348)
state 141
type_no_typeobject: tUNION '{' field_spec_list.osemi '}'
field_spec_list: field_spec_list.';' field_spec
osemi: . (145)
';' shift 170
. reduce 145 (src line 630)
osemi goto 173
state 142
type_no_typeobject: tUNION '{' '}'. (50)
. reduce 50 (src line 274)
state 143
dotnameref: dotnameref '.' tIDENT. (142)
. reduce 142 (src line 621)
state 144
comp_lit: otype '{' '}'. (123)
. reduce 123 (src line 539)
state 145
comp_lit: otype '{' kv_lit_list.ocomma '}'
kv_lit_list: kv_lit_list.',' kv_lit
ocomma: . (147)
',' shift 175
. reduce 147 (src line 634)
ocomma goto 174
state 146
kv_lit_list: kv_lit. (125)
. reduce 125 (src line 545)
state 147
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
kv_lit: expr. (127)
kv_lit: expr.':' expr
':' shift 176
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. reduce 127 (src line 551)
state 148
imports: imports import ';'. (15)
. reduce 15 (src line 180)
state 149
import: tIMPORT '('.')'
import: tIMPORT '('.import_spec_list osemi ')'
')' shift 177
tIDENT shift 152
tSTRLIT shift 151
. error
import_spec_list goto 178
import_spec goto 179
state 150
import: tIMPORT import_spec. (18)
. reduce 18 (src line 185)
state 151
import_spec: tSTRLIT. (21)
. reduce 21 (src line 191)
state 152
import_spec: tIDENT.tSTRLIT
tSTRLIT shift 180
. error
state 153
defs: defs type_def.';'
';' shift 181
. error
state 154
defs: defs const_def.';'
';' shift 182
. error
state 155
defs: defs error_def.';'
';' shift 183
. error
state 156
type_def: tTYPE.'(' ')'
type_def: tTYPE.'(' type_spec_list osemi ')'
type_def: tTYPE.type_spec
type_def: tTYPE.interface_spec
'(' shift 184
tIDENT shift 187
. error
type_spec goto 185
interface_spec goto 186
state 157
const_def: tCONST.'(' ')'
const_def: tCONST.'(' const_spec_list osemi ')'
const_def: tCONST.const_spec
'(' shift 188
tIDENT shift 190
. error
const_spec goto 189
state 158
error_def: tERROR.'(' ')'
error_def: tERROR.'(' error_spec_list osemi ')'
error_def: tERROR.error_spec
'(' shift 191
tIDENT shift 193
. error
error_spec goto 192
state 159
config: tIDENT '=' expr ';'. (13)
. reduce 13 (src line 164)
state 160
unary_expr: type_no_typeobject '(' expr ')'. (112)
. reduce 112 (src line 514)
state 161
unary_expr: tTYPEOBJECT '(' type ')'. (113)
. reduce 113 (src line 516)
state 162
operand: nameref '[' expr ']'. (121)
. reduce 121 (src line 534)
state 163
operand: comp_lit '[' expr ']'. (120)
. reduce 120 (src line 532)
state 164
type_no_typeobject: '[' tINTLIT ']' type. (42)
. reduce 42 (src line 258)
state 165
type_no_typeobject: tENUM '{' label_spec_list osemi.'}'
'}' shift 194
. error
state 166
label_spec_list: label_spec_list ';'.label_spec
osemi: ';'. (146)
tIDENT shift 133
. reduce 146 (src line 632)
label_spec goto 195
state 167
type_no_typeobject: tSET '[' type ']'. (45)
. reduce 45 (src line 264)
state 168
type_no_typeobject: tMAP '[' type ']'.type
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 196
type_no_typeobject goto 86
state 169
type_no_typeobject: tSTRUCT '{' field_spec_list osemi.'}'
'}' shift 197
. error
state 170
field_spec_list: field_spec_list ';'.field_spec
osemi: ';'. (146)
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. reduce 146 (src line 632)
nameref goto 88
dotnameref goto 37
type goto 140
type_no_typeobject goto 86
type_comma_list goto 139
field_spec goto 198
state 171
field_spec: type_comma_list type. (59)
. reduce 59 (src line 336)
state 172
type_comma_list: type_comma_list ','.type
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 199
type_no_typeobject goto 86
state 173
type_no_typeobject: tUNION '{' field_spec_list osemi.'}'
'}' shift 200
. error
state 174
comp_lit: otype '{' kv_lit_list ocomma.'}'
'}' shift 201
. error
state 175
kv_lit_list: kv_lit_list ','.kv_lit
ocomma: ','. (148)
otype: . (143)
'(' shift 28
'[' shift 30
'}' reduce 148 (src line 636)
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 147
unary_expr goto 15
operand goto 16
comp_lit goto 27
kv_lit goto 202
state 176
kv_lit: expr ':'.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 203
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 177
import: tIMPORT '(' ')'. (16)
. reduce 16 (src line 182)
state 178
import: tIMPORT '(' import_spec_list.osemi ')'
import_spec_list: import_spec_list.';' import_spec
osemi: . (145)
';' shift 205
. reduce 145 (src line 630)
osemi goto 204
state 179
import_spec_list: import_spec. (19)
. reduce 19 (src line 187)
state 180
import_spec: tIDENT tSTRLIT. (22)
. reduce 22 (src line 197)
state 181
defs: defs type_def ';'. (24)
. reduce 24 (src line 206)
state 182
defs: defs const_def ';'. (25)
. reduce 25 (src line 207)
state 183
defs: defs error_def ';'. (26)
. reduce 26 (src line 208)
state 184
type_def: tTYPE '('.')'
type_def: tTYPE '('.type_spec_list osemi ')'
')' shift 206
tIDENT shift 209
. error
type_spec_list goto 207
type_spec goto 208
state 185
type_def: tTYPE type_spec. (29)
. reduce 29 (src line 213)
state 186
type_def: tTYPE interface_spec. (30)
. reduce 30 (src line 214)
state 187
type_spec: tIDENT.type
interface_spec: tIDENT.tINTERFACE '{' '}'
interface_spec: tIDENT.tINTERFACE '{' iface_item_list osemi '}'
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tINTERFACE shift 211
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 210
type_no_typeobject goto 86
state 188
const_def: tCONST '('.')'
const_def: tCONST '('.const_spec_list osemi ')'
')' shift 212
tIDENT shift 190
. error
const_spec_list goto 213
const_spec goto 214
state 189
const_def: tCONST const_spec. (33)
. reduce 33 (src line 219)
state 190
const_spec: tIDENT.'=' expr
'=' shift 215
. error
state 191
error_def: tERROR '('.')'
error_def: tERROR '('.error_spec_list osemi ')'
')' shift 216
tIDENT shift 193
. error
error_spec_list goto 217
error_spec goto 218
state 192
error_def: tERROR error_spec. (36)
. reduce 36 (src line 224)
state 193
error_spec: tIDENT.inargs error_details
'(' shift 220
. error
inargs goto 219
state 194
type_no_typeobject: tENUM '{' label_spec_list osemi '}'. (44)
. reduce 44 (src line 262)
state 195
label_spec_list: label_spec_list ';' label_spec. (55)
. reduce 55 (src line 289)
state 196
type_no_typeobject: tMAP '[' type ']' type. (46)
. reduce 46 (src line 266)
state 197
type_no_typeobject: tSTRUCT '{' field_spec_list osemi '}'. (47)
. reduce 47 (src line 268)
state 198
field_spec_list: field_spec_list ';' field_spec. (58)
. reduce 58 (src line 299)
state 199
type_comma_list: type_comma_list ',' type. (61)
. reduce 61 (src line 351)
state 200
type_no_typeobject: tUNION '{' field_spec_list osemi '}'. (49)
. reduce 49 (src line 272)
state 201
comp_lit: otype '{' kv_lit_list ocomma '}'. (124)
. reduce 124 (src line 542)
state 202
kv_lit_list: kv_lit_list ',' kv_lit. (126)
. reduce 126 (src line 548)
state 203
expr: expr.tOROR expr
expr: expr.tANDAND expr
expr: expr.'<' expr
expr: expr.'>' expr
expr: expr.tLE expr
expr: expr.tGE expr
expr: expr.tNE expr
expr: expr.tEQEQ expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.'|' expr
expr: expr.'&' expr
expr: expr.'^' expr
expr: expr.tLSH expr
expr: expr.tRSH expr
kv_lit: expr ':' expr. (128)
'<' shift 51
'>' shift 52
'+' shift 57
'-' shift 58
'*' shift 59
'/' shift 60
'%' shift 61
'|' shift 62
'&' shift 63
'^' shift 64
tOROR shift 49
tANDAND shift 50
tLE shift 53
tGE shift 54
tNE shift 55
tEQEQ shift 56
tLSH shift 65
tRSH shift 66
. reduce 128 (src line 554)
state 204
import: tIMPORT '(' import_spec_list osemi.')'
')' shift 221
. error
state 205
import_spec_list: import_spec_list ';'.import_spec
osemi: ';'. (146)
tIDENT shift 152
tSTRLIT shift 151
. reduce 146 (src line 632)
import_spec goto 222
state 206
type_def: tTYPE '(' ')'. (27)
. reduce 27 (src line 210)
state 207
type_def: tTYPE '(' type_spec_list.osemi ')'
type_spec_list: type_spec_list.';' type_spec
osemi: . (145)
';' shift 224
. reduce 145 (src line 630)
osemi goto 223
state 208
type_spec_list: type_spec. (37)
. reduce 37 (src line 227)
state 209
type_spec: tIDENT.type
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 210
type_no_typeobject goto 86
state 210
type_spec: tIDENT type. (39)
. reduce 39 (src line 231)
state 211
interface_spec: tIDENT tINTERFACE.'{' '}'
interface_spec: tIDENT tINTERFACE.'{' iface_item_list osemi '}'
'{' shift 225
. error
state 212
const_def: tCONST '(' ')'. (31)
. reduce 31 (src line 216)
state 213
const_def: tCONST '(' const_spec_list.osemi ')'
const_spec_list: const_spec_list.';' const_spec
osemi: . (145)
';' shift 227
. reduce 145 (src line 630)
osemi goto 226
state 214
const_spec_list: const_spec. (85)
. reduce 85 (src line 452)
state 215
const_spec: tIDENT '='.expr
otype: . (143)
'(' shift 28
'[' shift 30
'!' shift 17
'+' shift 18
'-' shift 19
'^' shift 20
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 22
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 23
tINTLIT shift 24
tRATLIT shift 25
. reduce 143 (src line 624)
nameref goto 26
dotnameref goto 37
type goto 40
type_no_typeobject goto 21
otype goto 38
expr goto 228
unary_expr goto 15
operand goto 16
comp_lit goto 27
state 216
error_def: tERROR '(' ')'. (34)
. reduce 34 (src line 221)
state 217
error_def: tERROR '(' error_spec_list.osemi ')'
error_spec_list: error_spec_list.';' error_spec
osemi: . (145)
';' shift 230
. reduce 145 (src line 630)
osemi goto 229
state 218
error_spec_list: error_spec. (129)
. reduce 129 (src line 558)
state 219
error_spec: tIDENT inargs.error_details
error_details: . (132)
'{' shift 232
. reduce 132 (src line 574)
error_details goto 231
state 220
inargs: '('.')'
inargs: '('.named_arg_list ocomma ')'
inargs: '('.type_comma_list ocomma ')'
')' shift 233
'[' shift 30
'?' shift 36
tENUM shift 31
tERROR shift 29
tMAP shift 33
tSET shift 32
tSTRUCT shift 34
tTYPEOBJECT shift 87
tUNION shift 35
tIDENT shift 39
tSTRLIT shift 89
. error
nameref goto 88
dotnameref goto 37
type goto 140
type_no_typeobject goto 86
type_comma_list goto 235
field_spec goto 236
named_arg_list goto 234
state 221
import: tIMPORT '(' import_spec_list osemi ')'. (17)
. reduce 17 (src line 184)
state 222
import_spec_list: import_spec_list ';' import_spec. (20)
. reduce 20 (src line 189)
state 223
type_def: tTYPE '(' type_spec_list osemi.')'
')' shift 237
. error
state 224
type_spec_list: type_spec_list ';'.type_spec
osemi: ';'. (146)
tIDENT shift 209
. reduce 146 (src line 632)
type_spec goto 238