diff options
| author | Michael V. O'Brien <michael@reductivelabs.com> | 2007-09-10 14:28:02 -0500 |
|---|---|---|
| committer | Michael V. O'Brien <michael@reductivelabs.com> | 2007-09-10 14:28:02 -0500 |
| commit | 19a748bb9e1fcdc574dca9de4ee82bd017627a19 (patch) | |
| tree | 36c844e843dacfef30d28ada2cc17ce2564bd6bf | |
| parent | 041393d1462b44438ede6dcf47fb05ec1084c998 (diff) | |
| download | puppet-19a748bb9e1fcdc574dca9de4ee82bd017627a19.tar.gz puppet-19a748bb9e1fcdc574dca9de4ee82bd017627a19.tar.xz puppet-19a748bb9e1fcdc574dca9de4ee82bd017627a19.zip | |
Removed TYPE token, replacing it with CLASSREF token, in the grammar and lexer. Updated CLASSREF token regex in the lexer.
| -rw-r--r-- | lib/puppet/parser/grammar.ra | 7 | ||||
| -rw-r--r-- | lib/puppet/parser/lexer.rb | 3 | ||||
| -rw-r--r-- | lib/puppet/parser/parser.rb | 1119 | ||||
| -rwxr-xr-x | test/language/lexer.rb | 20 |
4 files changed, 572 insertions, 577 deletions
diff --git a/lib/puppet/parser/grammar.ra b/lib/puppet/parser/grammar.ra index c6755b795..0fd644b3a 100644 --- a/lib/puppet/parser/grammar.ra +++ b/lib/puppet/parser/grammar.ra @@ -5,7 +5,7 @@ class Puppet::Parser::Parser token LBRACK DQTEXT SQTEXT RBRACK LBRACE RBRACE SYMBOL FARROW COMMA TRUE -token FALSE EQUALS LESSEQUAL NOTEQUAL DOT COLON TYPE LLCOLLECT RRCOLLECT +token FALSE EQUALS LESSEQUAL NOTEQUAL DOT COLON LLCOLLECT RRCOLLECT token QMARK LPAREN RPAREN ISEQUAL GREATEREQUAL GREATERTHAN LESSTHAN token IF ELSE IMPORT DEFINE ELSIF VARIABLE CLASS INHERITS NODE BOOLEAN token NAME SEMIC CASE DEFAULT AT LCOLLECT RCOLLECT CLASSNAME CLASSREF @@ -271,7 +271,7 @@ name: NAME { result = ast AST::Name, :value => val[0] } -type: TYPE { +type: CLASSREF { result = ast AST::Type, :value => val[0] } @@ -529,8 +529,7 @@ nodedef: NODE hostnames nodeparent LBRACE statements RBRACE { result = nil } -classref: TYPE - | CLASSREF +classref: CLASSREF classname: NAME | CLASSNAME diff --git a/lib/puppet/parser/lexer.rb b/lib/puppet/parser/lexer.rb index a2de01779..360ed4254 100644 --- a/lib/puppet/parser/lexer.rb +++ b/lib/puppet/parser/lexer.rb @@ -49,8 +49,7 @@ module Puppet %r{\+>} => :PARROW, %r{[a-z][-\w]*} => :NAME, %r{([a-z][-\w]*::)+[a-z][-\w]*} => :CLASSNAME, - %r{([A-Z][-\w]*::)+[A-Z][-\w]*} => :CLASSREF, - %r{[A-Z][-\w]*} => :TYPE, + %r{((::){0,1}[A-Z][-\w]*)+} => :CLASSREF, %r{[0-9]+} => :NUMBER, %r{\$(\w*::)*\w+} => :VARIABLE } diff --git a/lib/puppet/parser/parser.rb b/lib/puppet/parser/parser.rb index ac2003426..b4e9b84d7 100644 --- a/lib/puppet/parser/parser.rb +++ b/lib/puppet/parser/parser.rb @@ -29,7 +29,7 @@ module Puppet class Parser < Racc::Parser -module_eval <<'..end grammar.ra modeval..id6c549c7b60', 'grammar.ra', 639 +module_eval <<'..end grammar.ra modeval..id9134b179f4', 'grammar.ra', 638 # It got too annoying having code in a file that needs to be compiled. require 'puppet/parser/parser_support' @@ -41,532 +41,515 @@ require 'puppet/parser/parser_support' # $Id$ -..end grammar.ra modeval..id6c549c7b60 +..end grammar.ra modeval..id9134b179f4 ##### racc 1.4.5 generates ### racc_reduce_table = [ 0, 0, :racc_error, - 1, 53, :_reduce_1, + 1, 52, :_reduce_1, + 1, 52, :_reduce_none, 1, 53, :_reduce_none, - 1, 54, :_reduce_none, - 2, 54, :_reduce_4, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 1, 56, :_reduce_none, - 4, 64, :_reduce_17, - 3, 64, :_reduce_18, - 2, 64, :_reduce_19, + 2, 53, :_reduce_4, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 1, 55, :_reduce_none, + 4, 63, :_reduce_17, + 3, 63, :_reduce_18, + 2, 63, :_reduce_19, + 1, 68, :_reduce_none, + 1, 68, :_reduce_none, 1, 69, :_reduce_none, - 1, 69, :_reduce_none, - 1, 70, :_reduce_none, - 3, 70, :_reduce_23, - 1, 72, :_reduce_none, - 1, 72, :_reduce_none, - 1, 72, :_reduce_none, - 1, 72, :_reduce_none, - 1, 72, :_reduce_none, - 1, 72, :_reduce_none, - 1, 72, :_reduce_none, - 1, 72, :_reduce_31, + 3, 69, :_reduce_23, 1, 71, :_reduce_none, - 3, 71, :_reduce_33, - 5, 57, :_reduce_34, - 5, 57, :_reduce_35, - 5, 57, :_reduce_36, - 5, 68, :_reduce_37, - 2, 58, :_reduce_38, - 1, 88, :_reduce_39, - 2, 88, :_reduce_40, - 2, 59, :_reduce_41, - 3, 89, :_reduce_42, - 3, 89, :_reduce_43, - 1, 90, :_reduce_none, + 1, 71, :_reduce_none, + 1, 71, :_reduce_none, + 1, 71, :_reduce_none, + 1, 71, :_reduce_none, + 1, 71, :_reduce_none, + 1, 71, :_reduce_none, + 1, 71, :_reduce_31, + 1, 70, :_reduce_none, + 3, 70, :_reduce_33, + 5, 56, :_reduce_34, + 5, 56, :_reduce_35, + 5, 56, :_reduce_36, + 5, 67, :_reduce_37, + 2, 57, :_reduce_38, + 1, 87, :_reduce_39, + 2, 87, :_reduce_40, + 2, 58, :_reduce_41, + 3, 88, :_reduce_42, + 3, 88, :_reduce_43, + 1, 89, :_reduce_none, + 1, 89, :_reduce_none, + 3, 89, :_reduce_46, 1, 90, :_reduce_none, - 3, 90, :_reduce_46, + 3, 90, :_reduce_48, 1, 91, :_reduce_none, - 3, 91, :_reduce_48, - 1, 92, :_reduce_none, - 1, 92, :_reduce_none, - 3, 93, :_reduce_51, - 3, 93, :_reduce_52, - 1, 94, :_reduce_none, - 1, 94, :_reduce_none, - 4, 96, :_reduce_55, + 1, 91, :_reduce_none, + 3, 92, :_reduce_51, + 3, 92, :_reduce_52, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 4, 95, :_reduce_55, + 1, 81, :_reduce_none, + 3, 81, :_reduce_57, + 0, 82, :_reduce_none, 1, 82, :_reduce_none, - 3, 82, :_reduce_57, - 0, 83, :_reduce_none, - 1, 83, :_reduce_none, - 1, 98, :_reduce_60, - 1, 73, :_reduce_61, - 1, 75, :_reduce_62, - 1, 97, :_reduce_none, - 1, 97, :_reduce_none, - 1, 97, :_reduce_none, - 1, 97, :_reduce_none, - 1, 97, :_reduce_none, - 1, 97, :_reduce_none, - 3, 60, :_reduce_69, - 0, 84, :_reduce_70, - 1, 84, :_reduce_71, - 3, 84, :_reduce_72, - 3, 101, :_reduce_73, - 3, 102, :_reduce_74, - 1, 103, :_reduce_none, + 1, 97, :_reduce_60, + 1, 72, :_reduce_61, + 1, 74, :_reduce_62, + 1, 96, :_reduce_none, + 1, 96, :_reduce_none, + 1, 96, :_reduce_none, + 1, 96, :_reduce_none, + 1, 96, :_reduce_none, + 1, 96, :_reduce_none, + 3, 59, :_reduce_69, + 0, 83, :_reduce_70, + 1, 83, :_reduce_71, + 3, 83, :_reduce_72, + 3, 100, :_reduce_73, + 3, 101, :_reduce_74, + 1, 102, :_reduce_none, + 1, 102, :_reduce_none, + 0, 86, :_reduce_77, + 1, 86, :_reduce_78, + 3, 86, :_reduce_79, 1, 103, :_reduce_none, - 0, 87, :_reduce_77, - 1, 87, :_reduce_78, - 3, 87, :_reduce_79, - 1, 104, :_reduce_none, - 3, 104, :_reduce_81, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 95, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 1, 100, :_reduce_none, - 4, 77, :_reduce_98, - 3, 77, :_reduce_99, - 1, 79, :_reduce_100, - 1, 79, :_reduce_101, - 1, 76, :_reduce_102, - 4, 80, :_reduce_103, - 4, 80, :_reduce_104, - 6, 62, :_reduce_105, - 0, 107, :_reduce_none, - 4, 107, :_reduce_107, - 1, 106, :_reduce_none, - 5, 61, :_reduce_109, - 1, 108, :_reduce_none, - 2, 108, :_reduce_111, - 5, 109, :_reduce_112, - 4, 109, :_reduce_113, - 1, 110, :_reduce_none, - 3, 110, :_reduce_115, - 3, 78, :_reduce_116, - 1, 112, :_reduce_none, - 4, 112, :_reduce_118, - 1, 114, :_reduce_none, - 3, 114, :_reduce_120, - 3, 113, :_reduce_121, - 1, 111, :_reduce_none, - 1, 111, :_reduce_none, - 1, 111, :_reduce_none, - 1, 111, :_reduce_none, - 1, 111, :_reduce_none, - 1, 111, :_reduce_none, + 3, 103, :_reduce_81, + 1, 94, :_reduce_none, + 1, 94, :_reduce_none, + 1, 94, :_reduce_none, + 1, 94, :_reduce_none, + 1, 94, :_reduce_none, + 1, 94, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 1, 99, :_reduce_none, + 4, 76, :_reduce_98, + 3, 76, :_reduce_99, + 1, 78, :_reduce_100, + 1, 78, :_reduce_101, + 1, 75, :_reduce_102, + 4, 79, :_reduce_103, + 4, 79, :_reduce_104, + 6, 61, :_reduce_105, + 0, 106, :_reduce_none, + 4, 106, :_reduce_107, + 1, 105, :_reduce_none, + 5, 60, :_reduce_109, + 1, 107, :_reduce_none, + 2, 107, :_reduce_111, + 5, 108, :_reduce_112, + 4, 108, :_reduce_113, + 1, 109, :_reduce_none, + 3, 109, :_reduce_115, + 3, 77, :_reduce_116, 1, 111, :_reduce_none, - 1, 111, :_reduce_129, - 1, 115, :_reduce_130, - 3, 115, :_reduce_131, - 2, 63, :_reduce_132, - 6, 65, :_reduce_133, - 5, 65, :_reduce_134, - 6, 66, :_reduce_135, - 5, 66, :_reduce_136, - 6, 67, :_reduce_137, - 5, 67, :_reduce_138, - 1, 86, :_reduce_none, - 1, 86, :_reduce_none, - 1, 81, :_reduce_none, - 1, 81, :_reduce_none, + 4, 111, :_reduce_118, + 1, 113, :_reduce_none, + 3, 113, :_reduce_120, + 3, 112, :_reduce_121, + 1, 110, :_reduce_none, + 1, 110, :_reduce_none, + 1, 110, :_reduce_none, + 1, 110, :_reduce_none, + 1, 110, :_reduce_none, + 1, 110, :_reduce_none, + 1, 110, :_reduce_none, + 1, 110, :_reduce_129, + 1, 114, :_reduce_130, + 3, 114, :_reduce_131, + 2, 62, :_reduce_132, + 6, 64, :_reduce_133, + 5, 64, :_reduce_134, + 6, 65, :_reduce_135, + 5, 65, :_reduce_136, + 6, 66, :_reduce_137, + 5, 66, :_reduce_138, + 1, 85, :_reduce_none, + 1, 80, :_reduce_none, + 1, 80, :_reduce_none, + 1, 117, :_reduce_none, + 3, 117, :_reduce_143, + 1, 119, :_reduce_none, + 1, 119, :_reduce_none, + 1, 119, :_reduce_none, + 1, 119, :_reduce_none, + 0, 54, :_reduce_148, + 0, 120, :_reduce_149, + 1, 115, :_reduce_none, + 3, 115, :_reduce_151, + 3, 115, :_reduce_152, + 1, 121, :_reduce_none, + 3, 121, :_reduce_154, + 3, 122, :_reduce_155, + 1, 122, :_reduce_156, + 3, 122, :_reduce_157, + 1, 122, :_reduce_158, 1, 118, :_reduce_none, - 3, 118, :_reduce_144, - 1, 120, :_reduce_none, - 1, 120, :_reduce_none, - 1, 120, :_reduce_none, - 1, 120, :_reduce_none, - 0, 55, :_reduce_149, - 0, 121, :_reduce_150, + 2, 118, :_reduce_160, 1, 116, :_reduce_none, - 3, 116, :_reduce_152, - 3, 116, :_reduce_153, - 1, 122, :_reduce_none, - 3, 122, :_reduce_155, - 3, 123, :_reduce_156, - 1, 123, :_reduce_157, - 3, 123, :_reduce_158, - 1, 123, :_reduce_159, - 1, 119, :_reduce_none, - 2, 119, :_reduce_161, - 1, 117, :_reduce_none, - 2, 117, :_reduce_163, - 1, 124, :_reduce_none, - 1, 124, :_reduce_none, - 1, 74, :_reduce_166, - 3, 99, :_reduce_167, - 2, 99, :_reduce_168, - 1, 105, :_reduce_none, - 1, 105, :_reduce_none, - 0, 85, :_reduce_none, - 1, 85, :_reduce_172 ] + 2, 116, :_reduce_162, + 1, 123, :_reduce_none, + 1, 123, :_reduce_none, + 1, 73, :_reduce_165, + 3, 98, :_reduce_166, + 2, 98, :_reduce_167, + 1, 104, :_reduce_none, + 1, 104, :_reduce_none, + 0, 84, :_reduce_none, + 1, 84, :_reduce_171 ] -racc_reduce_n = 173 +racc_reduce_n = 172 -racc_shift_n = 277 +racc_shift_n = 276 racc_action_table = [ - 76, 54, 58, 52, 163, 211, 76, 54, 58, 129, - 21, 181, 197, 35, 210, 91, 64, 201, 104, 92, - 5, 91, 64, 130, 76, 54, 58, 38, 39, 209, - 186, 46, 93, 38, 39, 57, 60, 46, 9, 66, - 118, 57, 60, 102, 9, 66, 162, -125, 62, 171, - 9, 76, 54, 58, 62, 46, 94, 206, 208, 57, - 115, 170, 40, 66, 197, 41, 244, 118, 40, 201, - 163, 41, 62, 76, 54, 58, 133, 144, 21, 76, - 54, 58, 46, 130, 38, 39, 57, 176, 46, 64, - 66, 206, 208, 148, 239, 64, 233, -123, 35, 62, - 76, 54, 58, 232, 46, 5, 9, 238, 57, 60, - 46, -122, 66, 144, 57, 60, 64, 9, 66, 40, - -125, 62, 41, 9, 46, 35, 35, 62, 157, 148, - 169, 46, 5, 5, 202, 57, 60, 203, 144, 66, - 52, 54, 58, 163, 9, 54, 58, 169, 62, 46, - 76, 54, 58, 144, 148, -122, 64, 189, 260, 166, - 48, 76, 54, 58, 46, -124, 64, 165, 187, 148, - -139, 46, 189, 190, 131, 57, 60, 64, -127, 66, - -123, 46, 219, 50, 9, 57, 60, 108, 62, 66, - 54, 58, 46, -124, 9, 222, 57, 60, 62, 223, - 66, 76, 54, 58, 142, 9, 142, 226, 130, 62, - 212, 76, 54, 58, 206, 208, 127, 64, 229, 52, - -126, 108, 76, 54, 58, 160, 158, 64, 236, 237, - 154, 240, 46, 99, 243, 142, 57, 60, 64, -126, - 66, 92, 46, 138, 95, 9, 57, 60, 89, 62, - 66, 169, 137, 46, 136, 9, 261, 57, 60, 62, - 263, 66, 76, 54, 58, -127, 9, 45, -128, 44, - 62, -123, 76, 54, 58, -124, -122, -125, 64, 54, - 58, -123, -127, -125, 270, -172, 271, -122, 64, 54, - 58, 135, 33, 46, 118, -124, nil, 57, 60, nil, - nil, 66, nil, 46, 118, nil, 9, 57, 60, 46, - 62, 66, nil, 57, 176, nil, 9, 66, nil, 46, - 62, nil, nil, 57, 176, nil, 62, 66, 54, 58, - 54, 58, nil, nil, nil, nil, 62, nil, nil, nil, - nil, nil, nil, 118, nil, 118, 54, 58, nil, nil, - nil, nil, 54, 58, nil, nil, nil, nil, 46, nil, - 46, 118, 57, 176, 57, 176, 66, 64, 66, nil, - 54, 58, 183, nil, nil, 62, 46, 62, nil, nil, - 57, 176, 46, nil, 66, 118, 57, 60, 54, 58, - 66, 177, nil, 62, 50, 9, nil, nil, nil, 62, - 46, nil, nil, 118, 57, 176, nil, nil, 66, 54, - 58, nil, 50, nil, nil, 54, 58, 62, 46, nil, - nil, nil, 57, 176, 64, nil, 66, nil, nil, 125, - 118, nil, nil, 54, 58, 62, nil, 234, nil, 46, - nil, nil, nil, 57, 60, 46, nil, 66, 118, 57, - 176, 50, 9, 66, nil, 255, 62, nil, nil, nil, - nil, nil, 62, 46, nil, nil, 21, 57, 176, nil, - nil, 66, nil, nil, 215, nil, 19, nil, 24, 26, - 62, 1, 6, nil, 12, 21, 17, nil, 22, nil, - 27, nil, nil, 5, 9, 19, nil, 24, 26, 213, - 1, 6, nil, 12, nil, 17, nil, 22, nil, 27, - 21, nil, 5, 9, nil, nil, nil, nil, 231, nil, - 19, nil, 24, 26, nil, 1, 6, nil, 12, 21, - 17, nil, 22, nil, 27, nil, nil, 5, 9, 19, - nil, 24, 26, 268, 1, 6, nil, 12, nil, 17, - nil, 22, nil, 27, 21, nil, 5, 9, nil, nil, - nil, nil, 272, nil, 19, nil, 24, 26, nil, 1, - 6, nil, 12, 21, 17, nil, 22, nil, 27, nil, - nil, 5, 9, 19, nil, 24, 26, 275, 1, 6, - nil, 12, nil, 17, nil, 22, nil, 27, 21, nil, - 5, 9, nil, nil, nil, nil, 254, nil, 19, nil, - 24, 26, nil, 1, 6, nil, 12, 21, 17, nil, - 22, nil, 27, nil, nil, 5, 9, 19, nil, 24, - 26, 241, 1, 6, nil, 12, nil, 17, nil, 22, - nil, 27, 21, nil, 5, 9, nil, nil, nil, nil, - 276, nil, 19, nil, 24, 26, nil, 1, 6, nil, - 12, 21, 17, nil, 22, nil, 27, nil, nil, 5, - 9, 19, nil, 24, 26, nil, 1, 6, nil, 12, - 21, 17, nil, 22, nil, 27, nil, nil, 5, 9, - 19, nil, 24, 26, nil, 1, 6, nil, 12, 21, - 17, nil, 22, nil, 27, nil, nil, 5, 9, 19, - nil, 24, 26, nil, 1, 6, nil, 12, 21, 17, - nil, 22, nil, 27, nil, nil, 5, 9, 19, nil, - 24, 26, nil, 1, 6, nil, 12, 21, 17, nil, - 22, nil, 27, nil, nil, 5, 9, 19, nil, 24, - 26, nil, 1, 6, nil, 12, nil, 17, nil, 22, - nil, 27, nil, nil, 5, 9 ] + 71, 51, 53, 184, 162, 102, 71, 51, 53, 132, + 149, 5, 209, 47, -127, 87, 71, 51, 53, 88, + 208, 65, 71, 51, 53, 162, 144, 34, 35, 99, + 65, 89, 126, -127, 50, 54, 65, 126, 59, -123, + 50, 54, 207, 45, 59, 161, 65, 56, -126, 45, + 50, 54, 65, 56, 59, 90, 50, 54, 185, 45, + 59, 36, 169, 56, 37, 45, 71, 51, 53, 56, + 204, 206, 47, 51, 53, 200, 149, 51, 53, 33, + 199, -122, 71, 51, 53, 238, 1, 65, 71, 51, + 53, 67, 144, 34, 35, 87, 65, 237, 234, -123, + 50, 54, 65, 200, 59, 233, 50, 54, 199, 45, + 59, 252, 65, 56, 43, 45, 50, 54, 65, 56, + 59, 33, 50, 54, 156, 45, 59, 36, 1, 56, + 37, 45, 71, 51, 53, 56, 204, 206, 71, 51, + 53, 149, 149, 34, 35, 188, 259, 196, 71, 51, + 53, -125, 65, 65, 71, 51, 53, 144, 144, 51, + 53, 202, 65, 162, 33, 168, 50, 54, 65, 137, + 59, 1, 50, 54, 168, 45, 59, 36, 65, 56, + 37, 45, 50, 174, 65, 56, 59, -122, 50, 54, + 165, 111, 59, -125, -122, 56, 127, 45, 71, 51, + 53, 56, 33, 211, 71, 51, 53, 204, 206, 1, + 5, 135, 218, 186, 71, 51, 53, 188, 189, 106, + 125, 51, 53, 221, 222, 231, 140, 140, 65, 225, + 126, -124, 50, 54, 65, 228, 59, 47, 50, 54, + -139, 45, 59, 123, 65, 56, 106, 45, 50, 112, + 65, 56, 59, -124, 50, 174, 134, 111, 59, 51, + 53, 56, 164, 111, 239, 51, 53, 56, 240, 241, + 242, -124, 96, 140, -126, 51, 53, 93, 179, 168, + 91, 51, 53, 159, 181, 260, 262, 85, 65, 157, + 88, 133, 50, 174, 65, 41, 59, -124, 50, 54, + 128, 111, 59, -122, 65, 56, 43, 45, 50, 174, + 65, 56, 59, -125, 50, 54, -123, 111, 59, 51, + 53, 56, 43, 45, -127, 51, 53, 56, 176, 40, + 269, -171, 270, -128, -123, 51, 53, 152, -125, nil, + nil, 51, 53, nil, nil, nil, nil, nil, 65, nil, + nil, nil, 50, 174, 65, nil, 59, nil, 50, 174, + 43, 111, 59, nil, 65, 56, nil, 111, 50, 174, + 65, 56, 59, 254, 50, 174, nil, 111, 59, 51, + 53, 56, nil, 111, nil, 51, 53, 56, nil, nil, + nil, nil, nil, 15, nil, 19, 21, nil, 28, 2, + nil, 8, nil, 13, nil, 17, nil, 22, 65, nil, + 1, 5, 50, 174, 65, 264, 59, nil, 50, 174, + nil, 111, 59, nil, nil, 56, nil, 111, nil, nil, + nil, 56, nil, nil, 271, 15, nil, 19, 21, nil, + 28, 2, nil, 8, nil, 13, nil, 17, nil, 22, + nil, nil, 1, 5, 15, 212, 19, 21, nil, 28, + 2, nil, 8, nil, 13, nil, 17, nil, 22, nil, + nil, 1, 5, nil, 230, 15, nil, 19, 21, nil, + 28, 2, nil, 8, nil, 13, nil, 17, nil, 22, + nil, nil, 1, 5, 15, 253, 19, 21, nil, 28, + 2, nil, 8, nil, 13, nil, 17, nil, 22, nil, + nil, 1, 5, nil, 214, 15, nil, 19, 21, nil, + 28, 2, nil, 8, nil, 13, nil, 17, nil, 22, + nil, nil, 1, 5, 15, 274, 19, 21, nil, 28, + 2, nil, 8, nil, 13, nil, 17, nil, 22, nil, + nil, 1, 5, nil, 235, 15, nil, 19, 21, nil, + 28, 2, nil, 8, nil, 13, nil, 17, nil, 22, + nil, nil, 1, 5, 15, 275, 19, 21, nil, 28, + 2, nil, 8, nil, 13, nil, 17, nil, 22, nil, + nil, 1, 5, nil, nil, 15, nil, 19, 21, nil, + 28, 2, nil, 8, nil, 13, nil, 17, nil, 22, + nil, nil, 1, 5, 15, nil, 19, 21, nil, 28, + 2, nil, 8, nil, 13, nil, 17, nil, 22, nil, + nil, 1, 5, 15, nil, 19, 21, nil, 28, 2, + nil, 8, nil, 13, nil, 17, nil, 22, nil, nil, + 1, 5, 15, nil, 19, 21, nil, 28, 2, nil, + 8, nil, 13, nil, 17, nil, 22, nil, nil, 1, + 5, 15, nil, 19, 21, nil, 28, 2, nil, 8, + nil, 13, nil, 17, nil, 22, nil, nil, 1, 5 ] racc_action_check = [ - 91, 91, 91, 60, 108, 150, 188, 188, 188, 59, - 131, 128, 239, 6, 150, 28, 91, 239, 42, 28, - 6, 68, 188, 60, 45, 45, 45, 12, 12, 146, - 131, 91, 28, 102, 102, 91, 91, 188, 131, 91, - 45, 188, 188, 42, 91, 188, 108, 67, 91, 126, - 188, 166, 166, 166, 188, 45, 28, 146, 146, 45, - 45, 123, 12, 45, 138, 12, 205, 166, 102, 138, - 115, 102, 45, 76, 76, 76, 76, 207, 2, 240, - 240, 240, 166, 115, 104, 104, 166, 166, 207, 76, - 166, 205, 205, 207, 199, 240, 192, 122, 2, 166, - 236, 236, 236, 192, 76, 2, 2, 199, 76, 76, - 240, 65, 76, 94, 240, 240, 236, 76, 240, 104, - 120, 76, 104, 240, 94, 99, 26, 240, 99, 94, - 119, 236, 99, 26, 140, 236, 236, 141, 144, 236, - 17, 17, 17, 142, 236, 137, 137, 143, 236, 144, - 19, 19, 19, 93, 144, 117, 17, 228, 228, 116, - 17, 22, 22, 22, 93, 114, 19, 109, 134, 93, - 64, 17, 134, 134, 61, 17, 17, 22, 71, 17, - 69, 19, 164, 17, 17, 19, 19, 165, 17, 19, - 24, 24, 22, 53, 19, 167, 22, 22, 19, 168, - 22, 52, 52, 52, 169, 22, 170, 172, 176, 22, - 153, 226, 226, 226, 153, 153, 49, 52, 184, 186, - 47, 44, 33, 33, 33, 103, 100, 226, 197, 198, - 95, 201, 52, 37, 204, 92, 52, 52, 33, 72, - 52, 36, 226, 88, 30, 52, 226, 226, 27, 52, - 226, 225, 87, 33, 85, 226, 231, 33, 33, 226, - 232, 33, 162, 162, 162, 84, 33, 15, 83, 13, - 33, 82, 163, 163, 163, 247, 248, 250, 162, 136, - 136, 251, 252, 81, 259, 260, 261, 80, 163, 211, - 211, 79, 1, 162, 136, 77, nil, 162, 162, nil, - nil, 162, nil, 163, 211, nil, 162, 163, 163, 136, - 162, 163, nil, 136, 136, nil, 163, 136, nil, 211, - 163, nil, nil, 211, 211, nil, 136, 211, 210, 210, - 233, 233, nil, nil, nil, nil, 211, nil, nil, nil, - nil, nil, nil, 210, nil, 233, 258, 258, nil, nil, - nil, nil, 130, 130, nil, nil, nil, nil, 210, nil, - 233, 258, 210, 210, 233, 233, 210, 130, 233, nil, - 129, 129, 130, nil, nil, 210, 258, 233, nil, nil, - 258, 258, 130, nil, 258, 129, 130, 130, 127, 127, - 130, 127, nil, 258, 130, 130, nil, nil, nil, 130, - 129, nil, nil, 127, 129, 129, nil, nil, 129, 48, - 48, nil, 129, nil, nil, 177, 177, 129, 127, nil, - nil, nil, 127, 127, 48, nil, 127, nil, nil, 48, - 177, nil, nil, 194, 194, 127, nil, 194, nil, 48, - nil, nil, nil, 48, 48, 177, nil, 48, 194, 177, - 177, 48, 48, 177, nil, 216, 48, nil, nil, nil, - nil, nil, 177, 194, nil, nil, 216, 194, 194, nil, - nil, 194, nil, nil, 160, nil, 216, nil, 216, 216, - 194, 216, 216, nil, 216, 160, 216, nil, 216, nil, - 216, nil, nil, 216, 216, 160, nil, 160, 160, 158, - 160, 160, nil, 160, nil, 160, nil, 160, nil, 160, - 158, nil, 160, 160, nil, nil, nil, nil, 191, nil, - 158, nil, 158, 158, nil, 158, 158, nil, 158, 191, - 158, nil, 158, nil, 158, nil, nil, 158, 158, 191, - nil, 191, 191, 242, 191, 191, nil, 191, nil, 191, - nil, 191, nil, 191, 242, nil, 191, 191, nil, nil, - nil, nil, 263, nil, 242, nil, 242, 242, nil, 242, - 242, nil, 242, 263, 242, nil, 242, nil, 242, nil, - nil, 242, 242, 263, nil, 263, 263, 273, 263, 263, - nil, 263, nil, 263, nil, 263, nil, 263, 273, nil, - 263, 263, nil, nil, nil, nil, 214, nil, 273, nil, - 273, 273, nil, 273, 273, nil, 273, 214, 273, nil, - 273, nil, 273, nil, nil, 273, 273, 214, nil, 214, - 214, 202, 214, 214, nil, 214, nil, 214, nil, 214, - nil, 214, 202, nil, 214, 214, nil, nil, nil, nil, - 274, nil, 202, nil, 202, 202, nil, 202, 202, nil, - 202, 274, 202, nil, 202, nil, 202, nil, nil, 202, - 202, 274, nil, 274, 274, nil, 274, 274, nil, 274, - 0, 274, nil, 274, nil, 274, nil, nil, 274, 274, - 0, nil, 0, 0, nil, 0, 0, nil, 0, 135, - 0, nil, 0, nil, 0, nil, nil, 0, 0, 135, - nil, 135, 135, nil, 135, 135, nil, 135, 271, 135, - nil, 135, nil, 135, nil, nil, 135, 135, 271, nil, - 271, 271, nil, 271, 271, nil, 271, 32, 271, nil, - 271, nil, 271, nil, nil, 271, 271, 32, nil, 32, - 32, nil, 32, 32, nil, 32, nil, 32, nil, 32, - nil, 32, nil, nil, 32, 32 ] + 93, 93, 93, 127, 106, 38, 71, 71, 71, 71, + 90, 127, 146, 54, 78, 23, 87, 87, 87, 23, + 146, 90, 161, 161, 161, 112, 90, 102, 102, 38, + 93, 23, 54, 64, 93, 93, 71, 112, 93, 62, + 71, 71, 142, 93, 71, 106, 87, 93, 66, 71, + 87, 87, 161, 71, 87, 23, 161, 161, 129, 87, + 161, 102, 119, 87, 102, 161, 240, 240, 240, 161, + 142, 142, 13, 13, 13, 238, 149, 135, 135, 2, + 238, 74, 15, 15, 15, 197, 2, 149, 17, 17, + 17, 13, 149, 99, 99, 61, 240, 197, 194, 118, + 240, 240, 13, 137, 240, 194, 13, 13, 137, 240, + 13, 210, 15, 240, 13, 13, 15, 15, 17, 13, + 15, 96, 17, 17, 96, 15, 17, 99, 96, 15, + 99, 17, 239, 239, 239, 17, 210, 210, 162, 162, + 162, 89, 205, 8, 8, 227, 227, 136, 165, 165, + 165, 116, 89, 205, 47, 47, 47, 89, 205, 19, + 19, 139, 239, 140, 21, 141, 239, 239, 162, 84, + 239, 21, 162, 162, 115, 239, 162, 8, 165, 239, + 8, 162, 165, 165, 47, 162, 165, 114, 47, 47, + 113, 165, 47, 60, 58, 165, 55, 47, 225, 225, + 225, 47, 29, 151, 187, 187, 187, 151, 151, 29, + 29, 83, 163, 131, 41, 41, 41, 131, 131, 164, + 52, 192, 192, 166, 167, 192, 168, 169, 225, 170, + 174, 46, 225, 225, 187, 182, 225, 184, 187, 187, + 45, 225, 187, 42, 41, 225, 40, 187, 41, 41, + 192, 187, 41, 110, 192, 192, 81, 41, 192, 208, + 208, 41, 107, 192, 199, 126, 126, 192, 200, 201, + 203, 70, 32, 88, 79, 209, 209, 28, 124, 224, + 25, 67, 67, 100, 126, 230, 233, 22, 208, 97, + 95, 73, 208, 208, 126, 11, 208, 245, 126, 126, + 67, 208, 126, 246, 209, 208, 126, 126, 209, 209, + 67, 126, 209, 248, 67, 67, 249, 209, 67, 125, + 125, 209, 67, 67, 250, 123, 123, 67, 123, 9, + 258, 259, 260, 77, 76, 176, 176, 91, 75, nil, + nil, 134, 134, nil, nil, nil, nil, nil, 125, nil, + nil, nil, 125, 125, 123, nil, 125, nil, 123, 123, + 125, 125, 123, nil, 176, 125, nil, 123, 176, 176, + 134, 123, 176, 215, 134, 134, nil, 176, 134, 234, + 234, 176, nil, 134, nil, 257, 257, 134, nil, nil, + nil, nil, nil, 215, nil, 215, 215, nil, 215, 215, + nil, 215, nil, 215, nil, 215, nil, 215, 234, nil, + 215, 215, 234, 234, 257, 236, 234, nil, 257, 257, + nil, 234, 257, nil, nil, 234, nil, 257, nil, nil, + nil, 257, nil, nil, 262, 236, nil, 236, 236, nil, + 236, 236, nil, 236, nil, 236, nil, 236, nil, 236, + nil, nil, 236, 236, 262, 157, 262, 262, nil, 262, + 262, nil, 262, nil, 262, nil, 262, nil, 262, nil, + nil, 262, 262, nil, 190, 157, nil, 157, 157, nil, + 157, 157, nil, 157, nil, 157, nil, 157, nil, 157, + nil, nil, 157, 157, 190, 213, 190, 190, nil, 190, + 190, nil, 190, nil, 190, nil, 190, nil, 190, nil, + nil, 190, 190, nil, 159, 213, nil, 213, 213, nil, + 213, 213, nil, 213, nil, 213, nil, 213, nil, 213, + nil, nil, 213, 213, 159, 272, 159, 159, nil, 159, + 159, nil, 159, nil, 159, nil, 159, nil, 159, nil, + nil, 159, 159, nil, 196, 272, nil, 272, 272, nil, + 272, 272, nil, 272, nil, 272, nil, 272, nil, 272, + nil, nil, 272, 272, 196, 273, 196, 196, nil, 196, + 196, nil, 196, nil, 196, nil, 196, nil, 196, nil, + nil, 196, 196, nil, nil, 273, nil, 273, 273, nil, + 273, 273, nil, 273, nil, 273, nil, 273, nil, 273, + nil, nil, 273, 273, 133, nil, 133, 133, nil, 133, + 133, nil, 133, nil, 133, nil, 133, nil, 133, nil, + nil, 133, 133, 270, nil, 270, 270, nil, 270, 270, + nil, 270, nil, 270, nil, 270, nil, 270, nil, nil, + 270, 270, 27, nil, 27, 27, nil, 27, 27, nil, + 27, nil, 27, nil, 27, nil, 27, nil, nil, 27, + 27, 0, nil, 0, 0, nil, 0, 0, nil, 0, + nil, 0, nil, 0, nil, 0, nil, nil, 0, 0 ] racc_action_pointer = [ - 662, 279, 60, nil, nil, nil, -25, nil, nil, nil, - nil, nil, 24, 263, nil, 261, nil, 138, nil, 148, - nil, nil, 159, nil, 187, nil, 88, 206, 13, nil, - 244, nil, 719, 220, nil, nil, 235, 198, nil, nil, - nil, nil, 8, nil, 183, 22, nil, 199, 406, 195, - nil, nil, 199, 172, nil, nil, nil, nil, nil, -1, - 1, 164, nil, nil, 168, 90, nil, 26, 19, 159, - nil, 157, 218, nil, nil, nil, 71, 274, nil, 285, - 266, 262, 250, 247, 244, 248, nil, 242, 221, nil, - nil, -2, 197, 131, 91, 230, nil, nil, nil, 87, - 220, nil, 30, 219, 81, nil, nil, nil, -5, 157, - nil, nil, nil, nil, 144, 61, 120, 134, nil, 120, - 99, nil, 76, 44, nil, nil, 26, 385, 6, 367, - 349, -8, nil, nil, 163, 681, 276, 142, 31, nil, - 128, 132, 134, 137, 116, nil, 9, nil, nil, nil, - -10, nil, nil, 166, nil, nil, nil, nil, 492, nil, - 467, nil, 260, 270, 175, 149, 49, 188, 192, 166, - 168, nil, 198, nil, nil, nil, 186, 412, nil, nil, - nil, nil, nil, nil, 195, nil, 217, nil, 4, nil, - nil, 511, 86, nil, 430, nil, nil, 215, 206, 84, - nil, 218, 624, nil, 227, 43, nil, 55, nil, nil, - 325, 286, nil, nil, 599, nil, 448, nil, nil, nil, - nil, nil, nil, nil, nil, 241, 209, nil, 148, nil, - nil, 227, 254, 327, nil, nil, 98, nil, nil, -21, - 77, nil, 536, nil, nil, nil, nil, 254, 255, nil, - 256, 260, 261, nil, nil, nil, nil, nil, 343, 277, - 278, 280, nil, 555, nil, nil, nil, nil, nil, nil, - nil, 700, nil, 580, 643, nil, nil ] + 644, nil, 42, nil, nil, nil, nil, nil, 140, 323, + nil, 289, nil, 70, nil, 80, nil, 86, nil, 156, + nil, 127, 246, 13, nil, 280, nil, 625, 264, 165, + nil, nil, 238, nil, nil, nil, nil, nil, -5, nil, + 209, 212, 223, nil, nil, 238, 211, 152, nil, nil, + nil, nil, 210, nil, 11, 186, nil, nil, 174, nil, + 173, 93, 19, nil, 13, nil, 28, 278, nil, nil, + 251, 4, nil, 285, 61, 318, 314, 313, -6, 254, + nil, 250, nil, 201, 148, nil, nil, 14, 236, 120, + -11, 337, nil, -2, nil, 284, 84, 283, nil, 90, + 277, nil, 24, nil, nil, nil, -5, 252, nil, nil, + 233, nil, 16, 152, 167, 164, 131, nil, 79, 45, + nil, nil, nil, 322, 273, 316, 262, -34, nil, 36, + nil, 208, nil, 587, 338, 74, 141, 71, nil, 156, + 154, 155, 23, nil, nil, nil, -3, nil, nil, 55, + nil, 160, nil, nil, nil, nil, nil, 448, nil, 507, + nil, 20, 136, 205, 182, 146, 216, 217, 189, 190, + 220, nil, nil, nil, 209, nil, 332, nil, nil, nil, + nil, nil, 213, nil, 235, nil, nil, 202, nil, nil, + 467, nil, 218, nil, 88, nil, 547, 75, nil, 251, + 255, 247, nil, 263, nil, 121, nil, nil, 256, 272, + 89, nil, nil, 488, nil, 366, nil, nil, nil, nil, + nil, nil, nil, nil, 269, 196, nil, 136, nil, nil, + 257, nil, nil, 280, 376, nil, 408, nil, 43, 130, + 64, nil, nil, nil, nil, 277, 283, nil, 293, 296, + 304, nil, nil, nil, nil, nil, nil, 382, 323, 324, + 326, nil, 427, nil, nil, nil, nil, nil, nil, nil, + 606, nil, 528, 568, nil, nil ] racc_action_default = [ - -149, -173, -173, -14, -2, -142, -173, -15, -3, -140, - -16, -5, -173, -173, -6, -173, -7, -141, -8, -173, - -9, -139, -173, -10, -173, -11, -173, -39, -173, -12, - -173, -13, -1, -173, -38, -141, -173, -149, -147, -146, - -145, -148, -149, -143, -77, -70, -166, -28, -173, -173, - -31, -29, -173, -30, -100, -32, -19, -102, -101, -20, - -61, -21, -60, -22, -62, -24, -129, -25, -173, -26, - -128, -27, -96, -94, -108, -92, -173, -88, -95, -173, - -89, -93, -90, -97, -91, -173, -130, -132, -149, -40, - -41, -173, -70, -149, -149, -173, -4, -69, -162, -173, - -173, -160, -173, -173, -173, -75, -76, -78, -173, -171, - -126, -68, -66, -71, -63, -61, -58, -64, -62, -171, - -67, -56, -65, -173, -127, -18, -173, -173, -173, -173, - -173, -173, -80, -168, -173, -173, -173, -173, -150, -151, - -173, -173, -173, -171, -149, -44, -173, -45, -61, -47, - -173, -54, -53, -173, 277, -163, -164, -165, -173, -161, - -173, -144, -173, -173, -173, -172, -59, -173, -173, -172, - -70, -17, -173, -124, -116, -117, -61, -173, -122, -125, - -123, -103, -23, -99, -173, -33, -173, -167, -173, -169, - -170, -173, -173, -114, -173, -110, -131, -159, -173, -173, - -154, -157, -173, -104, -173, -173, -50, -173, -49, -43, - -173, -173, -42, -136, -173, -138, -173, -74, -73, -37, - -79, -57, -34, -35, -72, -171, -173, -119, -171, -98, - -81, -106, -173, -173, -109, -111, -173, -152, -153, -173, - -173, -134, -173, -36, -48, -46, -86, -82, -83, -51, - -87, -84, -85, -52, -135, -137, -55, -121, -173, -173, - -170, -173, -105, -173, -115, -158, -155, -156, -133, -120, - -118, -173, -113, -173, -173, -112, -107 ] + -148, -141, -172, -15, -3, -139, -16, -5, -172, -172, + -6, -172, -7, -140, -8, -172, -9, -172, -10, -172, + -11, -172, -39, -172, -12, -172, -13, -1, -172, -172, + -14, -2, -148, -140, -146, -145, -144, -147, -148, -142, + -77, -70, -172, -31, -29, -62, -30, -172, -32, -19, + -102, -100, -20, -101, -61, -21, -60, -22, -24, -129, + -25, -172, -26, -128, -27, -165, -28, -172, -108, -92, + -88, -172, -95, -172, -89, -93, -90, -97, -91, -96, + -94, -172, -130, -132, -148, -40, -41, -172, -70, -148, + -148, -172, -4, -172, -38, -172, -172, -172, -161, -172, + -172, -159, -172, -75, -76, -78, -172, -170, -66, -71, + -63, -62, -61, -58, -64, -170, -67, -56, -65, -172, + -127, -126, -68, -172, -172, -172, -172, -172, -18, -172, + -80, -172, -167, -172, -172, -172, -172, -149, -150, -172, + -172, -170, -172, -45, -61, -47, -172, -54, -53, -148, + -44, -172, 276, -69, -162, -163, -164, -172, -160, -172, + -143, -172, -172, -172, -171, -59, -172, -172, -171, -70, + -172, -124, -116, -117, -61, -122, -172, -125, -123, -103, + -23, -99, -172, -33, -172, -17, -166, -172, -168, -169, + -172, -114, -172, -110, -172, -131, -172, -172, -153, -156, + -158, -172, -104, -172, -50, -172, -49, -43, -172, -172, + -172, -42, -136, -172, -138, -172, -74, -73, -37, -79, + -57, -34, -35, -72, -170, -172, -119, -170, -98, -81, + -106, -109, -111, -172, -172, -134, -172, -152, -172, -172, + -172, -151, -36, -46, -86, -82, -83, -51, -87, -84, + -85, -52, -48, -135, -137, -55, -121, -172, -172, -169, + -172, -105, -172, -115, -133, -154, -155, -157, -120, -118, + -172, -113, -172, -172, -112, -107 ] racc_goto_table = [ - 28, 32, 36, 96, 119, 53, 200, 172, 175, 56, - 188, 111, 86, 107, 51, 37, 193, 4, 71, 43, - 105, 121, 195, 30, 146, 153, 245, 164, 249, 253, - 134, 90, 28, 114, 79, 88, 53, 168, 262, 194, - 126, 109, 112, 167, 174, 51, 124, 116, 228, 71, - 87, 143, 140, 100, 98, 42, 103, 172, 227, 101, - 69, 204, 182, 198, 199, 34, 155, nil, nil, nil, - nil, nil, nil, nil, 193, 205, nil, nil, nil, nil, - 235, nil, nil, 74, nil, nil, 85, nil, 122, nil, - nil, 69, nil, nil, nil, nil, nil, 97, nil, nil, - nil, nil, nil, nil, 258, 139, nil, 266, 156, 159, - nil, 161, nil, 264, nil, 173, 128, 53, 53, 47, - nil, nil, 184, nil, 173, 196, 51, 51, 124, 225, - 71, 71, 111, nil, 220, 28, 191, 124, 172, 269, - 132, 105, 221, 256, nil, 224, 259, 110, nil, nil, - 47, nil, nil, nil, 114, 141, nil, nil, 28, 214, - 28, 216, 96, 112, nil, 173, nil, 124, nil, nil, - 180, nil, 69, 69, nil, nil, nil, nil, 124, 180, - nil, nil, 173, nil, 55, 96, 78, 96, nil, 78, - nil, 28, nil, nil, nil, 124, nil, nil, 247, 247, - 78, nil, 28, 242, nil, 67, nil, 246, 246, 122, - nil, 252, 252, 96, 28, 55, 28, nil, nil, 78, - 180, 173, nil, nil, nil, nil, 217, 218, nil, 110, - nil, 47, 47, 120, 124, nil, 67, 180, 110, nil, - nil, nil, 28, 78, 96, 96, 173, nil, nil, nil, - nil, nil, 230, 251, 251, nil, nil, 65, 78, 124, - nil, nil, nil, 28, 273, nil, nil, nil, 110, nil, - nil, 28, 274, 28, 28, nil, 180, nil, nil, 110, - nil, 152, 152, nil, nil, 117, nil, nil, 65, 83, - 257, nil, 83, nil, nil, nil, 110, 55, 185, nil, - 265, 180, nil, 83, 267, nil, nil, nil, nil, nil, - nil, nil, 110, 110, nil, 179, nil, 67, 67, nil, - nil, nil, 83, nil, 179, nil, nil, nil, nil, 78, - 78, nil, 152, 151, 151, 110, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 83, nil, nil, nil, - nil, nil, nil, nil, 120, 78, nil, nil, nil, nil, - 110, 83, nil, nil, nil, 179, nil, 178, nil, 65, - 65, nil, nil, nil, nil, nil, 178, nil, nil, nil, - nil, nil, 179, nil, 151, nil, nil, nil, nil, nil, - nil, nil, nil, 78, nil, 152, nil, nil, 250, 250, - nil, nil, nil, 78, nil, nil, 117, 78, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 178, nil, nil, - nil, 179, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 83, 83, 178, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 179, 151, nil, nil, - 248, 248, nil, nil, nil, nil, nil, nil, 83, nil, + 23, 27, 122, 92, 173, 105, 198, 49, 117, 46, + 187, 39, 31, 170, 32, 82, 193, 103, 115, 25, + 142, 151, 243, 44, 191, 247, 251, 23, 131, 95, + 64, 86, 73, 84, 261, 192, 107, 110, 166, 172, + 113, 227, 83, 62, 98, 163, 136, 97, 38, 100, + 101, 108, 180, 167, 201, 197, 94, 226, 120, 154, + nil, 129, nil, 46, 66, 141, 170, nil, nil, nil, + nil, 118, nil, nil, 232, nil, nil, 44, nil, 203, + 210, nil, 191, nil, 64, nil, nil, nil, nil, nil, + nil, nil, 121, nil, nil, nil, 138, 62, nil, nil, + nil, nil, 158, nil, nil, 160, 257, 265, 155, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 66, 171, + 182, 46, 46, nil, 263, nil, 122, nil, nil, 219, + 171, 195, 220, 23, 190, 44, 44, nil, 268, nil, + 120, 103, 64, 64, nil, 223, 224, 170, nil, nil, + nil, 120, nil, 178, nil, 62, 62, 23, 213, 23, + 215, 110, 255, nil, 178, 258, 92, nil, nil, nil, + 60, nil, 171, nil, 121, 108, 66, 66, nil, nil, + 58, nil, 120, nil, nil, 121, nil, nil, 171, 92, + 23, 92, nil, 120, nil, 118, 23, 236, 116, nil, + nil, nil, nil, nil, 245, 245, 178, nil, 114, 120, + nil, nil, 92, 23, nil, 23, 121, nil, 244, 244, + nil, nil, 178, nil, 60, 250, 250, 121, nil, nil, + 171, nil, nil, nil, 58, nil, 23, nil, 249, 249, + nil, nil, nil, 121, nil, nil, 148, 148, 92, 92, + nil, 120, nil, 171, nil, nil, 147, 147, nil, 121, + 121, nil, 23, 272, 178, nil, nil, nil, nil, nil, + 23, 273, 23, 23, 120, 68, nil, 81, nil, 77, + 177, 77, 60, 60, 48, 121, 72, 178, 72, nil, + 175, 177, 58, 58, nil, nil, nil, nil, nil, nil, + nil, 175, nil, nil, nil, nil, 148, 124, 121, nil, + nil, 77, nil, nil, nil, nil, 147, nil, 72, nil, + nil, nil, 116, nil, nil, nil, nil, nil, nil, nil, + nil, 130, 114, 177, nil, 77, nil, nil, 48, nil, + nil, nil, 72, 175, nil, nil, nil, 139, nil, 177, + nil, 77, nil, 153, nil, nil, nil, 77, 72, 175, + nil, nil, 148, nil, 72, 248, 248, nil, nil, nil, + nil, nil, 147, nil, nil, 246, 246, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 178, nil, nil, nil, nil, nil, nil, + nil, 177, nil, nil, nil, nil, nil, 48, 183, nil, + nil, 175, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 177, nil, nil, nil, nil, nil, + nil, 216, 217, nil, 175, 77, 77, nil, nil, nil, + nil, nil, 72, 72, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 229, nil, nil, + nil, 77, nil, nil, nil, nil, nil, nil, 72, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 83, nil, 178, nil, - nil, nil, nil, nil, nil, nil, 83, nil, nil, nil, - 83 ] + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 256, nil, nil, nil, 77, + nil, nil, nil, nil, nil, nil, 72, nil, nil, 266, + 267, nil, nil, 77, 77, nil, nil, nil, nil, nil, + 72, 72 ] racc_goto_check = [ - 34, 2, 34, 4, 32, 27, 71, 59, 61, 17, - 53, 47, 27, 51, 26, 29, 59, 3, 24, 68, - 49, 44, 57, 1, 38, 38, 39, 33, 43, 43, - 52, 37, 34, 27, 54, 29, 27, 33, 55, 56, - 17, 35, 26, 31, 60, 26, 24, 30, 62, 24, - 63, 32, 64, 65, 3, 66, 67, 59, 61, 3, - 23, 33, 20, 69, 70, 5, 72, nil, nil, nil, - nil, nil, nil, nil, 59, 38, nil, nil, nil, nil, - 57, nil, nil, 48, nil, nil, 48, nil, 23, nil, - nil, 23, nil, nil, nil, nil, nil, 48, nil, nil, - nil, nil, nil, nil, 53, 3, nil, 71, 29, 68, - nil, 68, nil, 59, nil, 27, 48, 27, 27, 25, - nil, nil, 17, nil, 27, 27, 26, 26, 24, 32, - 24, 24, 47, nil, 51, 34, 2, 24, 59, 61, - 48, 49, 44, 33, nil, 49, 33, 25, nil, nil, - 25, nil, nil, nil, 27, 48, nil, nil, 34, 2, - 34, 2, 4, 26, nil, 27, nil, 24, nil, nil, - 23, nil, 23, 23, nil, nil, nil, nil, 24, 23, - nil, nil, 27, nil, 28, 4, 28, 4, nil, 28, - nil, 34, nil, nil, nil, 24, nil, nil, 27, 27, - 28, nil, 34, 2, nil, 22, nil, 26, 26, 23, - nil, 24, 24, 4, 34, 28, 34, nil, nil, 28, - 23, 27, nil, nil, nil, nil, 48, 48, nil, 25, - nil, 25, 25, 22, 24, nil, 22, 23, 25, nil, - nil, nil, 34, 28, 4, 4, 27, nil, nil, nil, - nil, nil, 48, 23, 23, nil, nil, 21, 28, 24, - nil, nil, nil, 34, 2, nil, nil, nil, 25, nil, - nil, 34, 2, 34, 34, nil, 23, nil, nil, 25, - nil, 22, 22, nil, nil, 21, nil, nil, 21, 46, - 48, nil, 46, nil, nil, nil, 25, 28, 28, nil, - 48, 23, nil, 46, 48, nil, nil, nil, nil, nil, - nil, nil, 25, 25, nil, 22, nil, 22, 22, nil, - nil, nil, 46, nil, 22, nil, nil, nil, nil, 28, - 28, nil, 22, 21, 21, 25, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 46, nil, nil, nil, - nil, nil, nil, nil, 22, 28, nil, nil, nil, nil, - 25, 46, nil, nil, nil, 22, nil, 21, nil, 21, - 21, nil, nil, nil, nil, nil, 21, nil, nil, nil, - nil, nil, 22, nil, 21, nil, nil, nil, nil, nil, - nil, nil, nil, 28, nil, 22, nil, nil, 22, 22, - nil, nil, nil, 28, nil, nil, 21, 28, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 21, nil, nil, - nil, 22, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 46, 46, 21, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 22, 21, nil, nil, - 21, 21, nil, nil, nil, nil, nil, nil, 46, nil, + 34, 2, 47, 4, 61, 51, 71, 17, 44, 27, + 53, 68, 3, 59, 29, 27, 57, 49, 32, 1, + 38, 38, 39, 26, 59, 43, 43, 34, 52, 34, + 24, 37, 54, 29, 55, 56, 35, 27, 31, 60, + 30, 62, 63, 23, 3, 33, 64, 65, 66, 67, + 3, 26, 20, 33, 69, 70, 5, 61, 24, 72, + nil, 17, nil, 27, 25, 32, 59, nil, nil, nil, + nil, 23, nil, nil, 57, nil, nil, 26, nil, 33, + 38, nil, 59, nil, 24, nil, nil, nil, nil, nil, + nil, nil, 25, nil, nil, nil, 3, 23, nil, nil, + nil, nil, 68, nil, nil, 68, 53, 71, 29, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 25, 27, + 17, 27, 27, nil, 59, nil, 47, nil, nil, 51, + 27, 27, 44, 34, 2, 26, 26, nil, 61, nil, + 24, 49, 24, 24, nil, 49, 32, 59, nil, nil, + nil, 24, nil, 23, nil, 23, 23, 34, 2, 34, + 2, 27, 33, nil, 23, 33, 4, nil, nil, nil, + 22, nil, 27, nil, 25, 26, 25, 25, nil, nil, + 21, nil, 24, nil, nil, 25, nil, nil, 27, 4, + 34, 4, nil, 24, nil, 23, 34, 2, 22, nil, + nil, nil, nil, nil, 27, 27, 23, nil, 21, 24, + nil, nil, 4, 34, nil, 34, 25, nil, 26, 26, + nil, nil, 23, nil, 22, 24, 24, 25, nil, nil, + 27, nil, nil, nil, 21, nil, 34, nil, 23, 23, + nil, nil, nil, 25, nil, nil, 22, 22, 4, 4, + nil, 24, nil, 27, nil, nil, 21, 21, nil, 25, + 25, nil, 34, 2, 23, nil, nil, nil, nil, nil, + 34, 2, 34, 34, 24, 48, nil, 48, nil, 46, + 22, 46, 22, 22, 28, 25, 28, 23, 28, nil, + 21, 22, 21, 21, nil, nil, nil, nil, nil, nil, + nil, 21, nil, nil, nil, nil, 22, 48, 25, nil, + nil, 46, nil, nil, nil, nil, 21, nil, 28, nil, + nil, nil, 22, nil, nil, nil, nil, nil, nil, nil, + nil, 48, 21, 22, nil, 46, nil, nil, 28, nil, + nil, nil, 28, 21, nil, nil, nil, 48, nil, 22, + nil, 46, nil, 48, nil, nil, nil, 46, 28, 21, + nil, nil, 22, nil, 28, 22, 22, nil, nil, nil, + nil, nil, 21, nil, nil, 21, 21, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, 22, nil, nil, nil, nil, nil, 28, 28, nil, + nil, 21, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 22, nil, nil, nil, nil, nil, + nil, 48, 48, nil, 21, 46, 46, nil, nil, nil, + nil, nil, 28, 28, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 48, nil, nil, + nil, 46, nil, nil, nil, nil, nil, nil, 28, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 21, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 46, nil, 21, nil, - nil, nil, nil, nil, nil, nil, 46, nil, nil, nil, - 46 ] + nil, nil, nil, nil, nil, 48, nil, nil, nil, 46, + nil, nil, nil, nil, nil, nil, 28, nil, nil, 48, + 48, nil, nil, 46, 46, nil, nil, nil, nil, nil, + 28, 28 ] racc_goto_pointer = [ - nil, 23, 1, 17, -29, 63, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, -8, nil, nil, - -67, 240, 188, 43, 1, 102, -3, -12, 167, 9, - 2, -73, -41, -82, 0, -3, nil, 3, -69, -181, - nil, nil, nil, -182, -24, nil, 270, -34, 64, -24, - nil, -31, -46, -124, 15, -193, -97, -114, nil, -120, - -83, -119, -129, 26, -36, 16, 43, 14, 7, -75, - -74, -132, -33 ] + nil, 19, 1, 12, -24, 27, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, -6, nil, nil, + -73, 167, 157, 30, 17, 51, 10, -4, 271, 12, + -1, -75, -23, -62, 0, -4, nil, 8, -69, -183, + nil, nil, nil, -183, -33, nil, 264, -39, 260, -23, + nil, -35, -43, -121, 17, -196, -99, -118, nil, -110, + -84, -119, -135, 23, -38, 15, 40, 11, 3, -83, + -82, -131, -37 ] racc_goto_default = [ - nil, nil, nil, 145, 8, 11, 14, 16, 18, 20, - 23, 25, 29, 31, 3, 7, 10, nil, 59, 61, - 63, 80, 81, 82, 84, 72, 75, 77, 13, 15, - nil, nil, nil, nil, 68, nil, 2, nil, nil, 147, - 207, 149, 150, nil, nil, 123, 70, 73, nil, 113, - 106, nil, nil, nil, nil, nil, nil, nil, 192, 49, + nil, nil, nil, 150, 4, 7, 10, 12, 14, 16, + 18, 20, 24, 26, 30, 3, 6, nil, 52, 55, + 57, 74, 75, 76, 78, 79, 69, 70, 9, 11, + nil, nil, nil, nil, 61, nil, 29, nil, nil, 143, + 205, 145, 146, nil, nil, 119, 63, 80, nil, 109, + 104, nil, nil, nil, nil, nil, nil, nil, 194, 42, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil ] @@ -589,44 +572,43 @@ racc_token_table = { :NOTEQUAL => 15, :DOT => 16, :COLON => 17, - :TYPE => 18, - :LLCOLLECT => 19, - :RRCOLLECT => 20, - :QMARK => 21, - :LPAREN => 22, - :RPAREN => 23, - :ISEQUAL => 24, - :GREATEREQUAL => 25, - :GREATERTHAN => 26, - :LESSTHAN => 27, - :IF => 28, - :ELSE => 29, - :IMPORT => 30, - :DEFINE => 31, - :ELSIF => 32, - :VARIABLE => 33, - :CLASS => 34, - :INHERITS => 35, - :NODE => 36, - :BOOLEAN => 37, - :NAME => 38, - :SEMIC => 39, - :CASE => 40, - :DEFAULT => 41, - :AT => 42, - :LCOLLECT => 43, - :RCOLLECT => 44, - :CLASSNAME => 45, - :CLASSREF => 46, - :NOT => 47, - :OR => 48, - :AND => 49, - :UNDEF => 50, - :PARROW => 51 } + :LLCOLLECT => 18, + :RRCOLLECT => 19, + :QMARK => 20, + :LPAREN => 21, + :RPAREN => 22, + :ISEQUAL => 23, + :GREATEREQUAL => 24, + :GREATERTHAN => 25, + :LESSTHAN => 26, + :IF => 27, + :ELSE => 28, + :IMPORT => 29, + :DEFINE => 30, + :ELSIF => 31, + :VARIABLE => 32, + :CLASS => 33, + :INHERITS => 34, + :NODE => 35, + :BOOLEAN => 36, + :NAME => 37, + :SEMIC => 38, + :CASE => 39, + :DEFAULT => 40, + :AT => 41, + :LCOLLECT => 42, + :RCOLLECT => 43, + :CLASSNAME => 44, + :CLASSREF => 45, + :NOT => 46, + :OR => 47, + :AND => 48, + :UNDEF => 49, + :PARROW => 50 } racc_use_result_var = true -racc_nt_base = 52 +racc_nt_base = 51 Racc_arg = [ racc_action_table, @@ -663,7 +645,6 @@ Racc_token_to_s_table = [ 'NOTEQUAL', 'DOT', 'COLON', -'TYPE', 'LLCOLLECT', 'RRCOLLECT', 'QMARK', @@ -1581,10 +1562,8 @@ module_eval <<'.,.,', 'grammar.ra', 530 # reduce 142 omitted - # reduce 143 omitted - -module_eval <<'.,.,', 'grammar.ra', 545 - def _reduce_144( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 544 + def _reduce_143( val, _values, result ) result = val[0] result = [result] unless result.is_a?(Array) result << val[2] @@ -1592,49 +1571,49 @@ module_eval <<'.,.,', 'grammar.ra', 545 end .,., + # reduce 144 omitted + # reduce 145 omitted # reduce 146 omitted # reduce 147 omitted - # reduce 148 omitted - -module_eval <<'.,.,', 'grammar.ra', 554 - def _reduce_149( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 553 + def _reduce_148( val, _values, result ) result = nil result end .,., -module_eval <<'.,.,', 'grammar.ra', 558 - def _reduce_150( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 557 + def _reduce_149( val, _values, result ) result = ast AST::ASTArray, :children => [] result end .,., - # reduce 151 omitted + # reduce 150 omitted -module_eval <<'.,.,', 'grammar.ra', 563 - def _reduce_152( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 562 + def _reduce_151( val, _values, result ) result = nil result end .,., -module_eval <<'.,.,', 'grammar.ra', 567 - def _reduce_153( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 566 + def _reduce_152( val, _values, result ) result = val[1] result = [result] unless result[0].is_a?(Array) result end .,., - # reduce 154 omitted + # reduce 153 omitted -module_eval <<'.,.,', 'grammar.ra', 574 - def _reduce_155( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 573 + def _reduce_154( val, _values, result ) result = val[0] result = [result] unless result[0].is_a?(Array) result << val[2] @@ -1642,67 +1621,67 @@ module_eval <<'.,.,', 'grammar.ra', 574 end .,., -module_eval <<'.,.,', 'grammar.ra', 579 - def _reduce_156( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 578 + def _reduce_155( val, _values, result ) Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype") result = [val[0], val[2]] result end .,., -module_eval <<'.,.,', 'grammar.ra', 583 - def _reduce_157( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 582 + def _reduce_156( val, _values, result ) Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype") result = [val[0]] result end .,., -module_eval <<'.,.,', 'grammar.ra', 585 - def _reduce_158( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 584 + def _reduce_157( val, _values, result ) result = [val[0], val[2]] result end .,., -module_eval <<'.,.,', 'grammar.ra', 587 - def _reduce_159( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 586 + def _reduce_158( val, _values, result ) result = [val[0]] result end .,., - # reduce 160 omitted + # reduce 159 omitted -module_eval <<'.,.,', 'grammar.ra', 592 - def _reduce_161( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 591 + def _reduce_160( val, _values, result ) result = val[1] result end .,., - # reduce 162 omitted + # reduce 161 omitted -module_eval <<'.,.,', 'grammar.ra', 597 - def _reduce_163( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 596 + def _reduce_162( val, _values, result ) result = val[1] result end .,., - # reduce 164 omitted + # reduce 163 omitted - # reduce 165 omitted + # reduce 164 omitted -module_eval <<'.,.,', 'grammar.ra', 603 - def _reduce_166( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 602 + def _reduce_165( val, _values, result ) result = ast AST::Variable, :value => val[0] result end .,., -module_eval <<'.,.,', 'grammar.ra', 611 - def _reduce_167( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 610 + def _reduce_166( val, _values, result ) if val[1].instance_of?(AST::ASTArray) result = val[1] else @@ -1712,21 +1691,21 @@ module_eval <<'.,.,', 'grammar.ra', 611 end .,., -module_eval <<'.,.,', 'grammar.ra', 613 - def _reduce_168( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 612 + def _reduce_167( val, _values, result ) result = ast AST::ASTArray result end .,., + # reduce 168 omitted + # reduce 169 omitted # reduce 170 omitted - # reduce 171 omitted - -module_eval <<'.,.,', 'grammar.ra', 618 - def _reduce_172( val, _values, result ) +module_eval <<'.,.,', 'grammar.ra', 617 + def _reduce_171( val, _values, result ) result = nil result end diff --git a/test/language/lexer.rb b/test/language/lexer.rb index 7b4909fb1..c2dd17324 100755 --- a/test/language/lexer.rb +++ b/test/language/lexer.rb @@ -111,7 +111,7 @@ class TestLexer < Test::Unit::TestCase types.each { |t| @lexer.string = t assert_equal( - [[:TYPE,t],[false,false]], + [[:CLASSREF,t],[false,false]], @lexer.fullscan ) } @@ -254,6 +254,24 @@ class TestLexer < Test::Unit::TestCase @lexer.scan {} assert_equal("]", @lexer.expected, "expected value is wrong after pop") end + + # #774 + def test_classref_token + string = ["Foo", "::Foo","Foo::Bar","::Foo::Bar"] + + string.each do |foo| + assert_nothing_raised { + @lexer.string = foo + } + + ret = nil + assert_nothing_raised { + ret = @lexer.fullscan + } + + assert_equal([:CLASSREF, foo],ret[0], "Did not correctly tokenize '%s'" % foo) + end + end end # $Id$ |
