lib/regextest/front/parser.rb in regextest-0.1.5 vs lib/regextest/front/parser.rb in regextest-0.1.6

- old
+ new

@@ -1,8 +1,8 @@ # # DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.4.12 +# This file is automatically generated by Racc 1.4.14 # from Racc grammer file "". # require 'racc/parser.rb' @@ -15,15 +15,16 @@ require 'regextest/front/repeatable' # parser class for a repeatable elements require 'regextest/front/sequence' # parser class for a sequence of elements require 'regextest/front/bracket' # parser class for a character class (bracket) require 'regextest/front/anchor' # parser class for a anchor require 'regextest/front/back-refer' # parser class for a back reference +require 'regextest/front/special-letter' # parser class for a special letter require 'regextest/front/bracket-parser' # bracket parser class RegextestFrontParser < Racc::Parser -module_eval(<<'...end parser.y/module_eval...', 'parser.y', 223) +module_eval(<<'...end parser.y/module_eval...', 'parser.y', 227) # modules for sharing procedures with bracket parser include Regextest::Front::Empty include Regextest::Front::Letter include Regextest::Front::Range include Regextest::Front::Selectable @@ -31,10 +32,11 @@ include Regextest::Front::Repeatable include Regextest::Front::Sequence include Regextest::Front::Bracket include Regextest::Front::Anchor include Regextest::Front::BackRefer +include Regextest::Front::SpecialLetter # execute to parse def parse(lex_words, options) @options = options @@ -72,509 +74,514 @@ #end ...end parser.y/module_eval... ##### State transition tables begin ### clist = [ -'4,6,7,49,10,95,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28', -'29,30,31,32,33,34,35,36,37,38,39,40,41,42,144,44,43,143,139,142,140', -'141,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125', -'126,127,128,129,130,131,132,133,134,135,136,138,109,137,144,102,147', -'143,139,142,140,141,110,111,112,113,114,115,116,117,118,119,120,121', -'122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,109', -'137,144,102,49,143,139,142,140,141,110,111,112,113,114,115,116,117,118', -'119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135', -'136,138,109,137,4,6,7,44,10,,11,12,13,14,15,16,17,18,19,20,21,22,23', -'24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,144,,,143,139', -'142,140,141,110,111,112,113,114,115,116,117,118,119,120,121,122,123', -'124,125,126,127,128,129,130,131,132,133,134,135,136,138,109,137,144', -',,143,139,142,140,141,110,111,112,113,114,115,116,117,118,119,120,121', -'122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,109', -'137,144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118,119', -'120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136', -'138,109,137,4,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25', -'26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,93,52,53,,56,,57', -'58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80', -'81,82,83,85,86,88,84,87,4,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21', -'22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,144,', -',143,139,142,140,141,110,111,112,113,114,115,116,117,118,119,120,121', -'122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,109', -'137,144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118,119', -'120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136', -'138,109,137,144,,,143,139,142,140,141,110,111,112,113,114,115,116,117', -'118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134', -'135,136,138,109,137,144,,,143,139,142,140,141,110,111,112,113,114,115', -'116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132', -'133,134,135,136,138,109,137,144,,,143,139,142,140,141,110,111,112,113', -'114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130', -'131,132,133,134,135,136,138,109,137,144,,,143,139,142,140,141,110,111', -'112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128', -'129,130,131,132,133,134,135,136,138,109,137,144,,,143,139,142,140,141', -'110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126', -'127,128,129,130,131,132,133,134,135,136,138,109,137,144,,,143,139,142', -'140,141,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124', -'125,126,127,128,129,130,131,132,133,134,135,136,138,109,137,144,,,143', -'139,142,140,141,110,111,112,113,114,115,116,117,118,119,120,121,122', -'123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,109,137', -'144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118,119,120', -'121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138', -'109,137,93,52,53,,56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72', -'73,74,75,76,77,78,79,80,81,82,83,85,86,88,84,87,93,52,53,,56,,57,58', -'59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81', -'82,83,85,86,88,84,87,4,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22', -'23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,144,,,143', -'139,142,140,141,110,111,112,113,114,115,116,117,118,119,120,121,122', -'123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,109,137', -'144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118,119,120', -'121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138', -'109,137,144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118', -'119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135', -'136,138,109,137,144,,,143,139,142,140,141,110,111,112,113,114,115,116', -'117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133', -'134,135,136,138,109,137,144,,,143,139,142,140,141,110,111,112,113,114', -'115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131', -'132,133,134,135,136,138,109,137,93,52,53,,56,,57,58,59,60,61,62,63,64', -'65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,85,86,88,84', -'87,144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118,119', -'120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136', -'138,109,137,144,,,143,139,142,140,141,110,111,112,113,114,115,116,117', -'118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134', -'135,136,138,109,137,144,,,143,139,142,140,141,110,111,112,113,114,115', -'116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132', -'133,134,135,136,138,109,137,144,,,143,139,142,140,141,110,111,112,113', -'114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130', -'131,132,133,134,135,136,138,109,137,144,,,143,139,142,140,141,110,111', -'112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128', -'129,130,131,132,133,134,135,136,138,109,137,144,,,143,139,142,140,141', -'110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126', -'127,128,129,130,131,132,133,134,135,136,138,109,137,144,,,143,139,142', -'140,141,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124', -'125,126,127,128,129,130,131,132,133,134,135,136,138,109,137,144,,,143', -'139,142,140,141,110,111,112,113,114,115,116,117,118,119,120,121,122', -'123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,109,137', -'144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118,119,120', -'121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138', -'109,137,144,,,143,139,142,140,141,110,111,112,113,114,115,116,117,118', -'119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135', -'136,138,109,137,144,,,143,139,142,140,141,110,111,112,113,114,115,116', -'117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133', -'134,135,136,138,109,137,144,,,143,139,142,140,141,110,111,112,113,114', -'115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131', -'132,133,134,135,136,138,109,137,144,,,143,139,142,140,141,110,111,112', -'113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129', -'130,131,132,133,134,135,136,138,109,137,144,,,143,139,142,140,141,110', -'111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127', -'128,129,130,131,132,133,134,135,136,138,109,137,144,,,143,139,142,140', -'141,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125', -'126,127,128,129,130,131,132,133,134,135,136,138,109,137,6,7,,10,,11', -'12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34', -'35,36,37,38,39,40,41,42,100,101,,56,,57,58,59,60,61,62,63,64,65,66,67', -'68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,85,86,88,84,87,46,47', -',10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31', -'32,33,34,35,36,37,38,39,40,41,42,46,47,,10,,11,12,13,14,15,16,17,18', -'19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41', -'42,100,101,,56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74', -'75,76,77,78,79,80,81,82,83,85,86,88,84,87,6,7,,10,,11,12,13,14,15,16', -'17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39', -'40,41,42,52,53,,56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72', -'73,74,75,76,77,78,79,80,81,82,83,85,86,88,84,87,100,101,,56,,57,58,59', -'60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82', -'83,85,86,88,84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23', -'24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,100,101,,56', -',57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79', -'80,81,82,83,85,86,88,84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20', -'21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,52', -'53,,56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76', -'77,78,79,80,81,82,83,85,86,88,84,87,100,101,,56,,57,58,59,60,61,62,63', -'64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,85,86,88', -'84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27', -'28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,52,53,,56,,57,58,59,60', -'61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83', -'85,86,88,84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24', -'25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,6,7,,10,,11,12', +'4,6,7,50,10,96,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28', +'29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,145,45,44,144,140,143,141', +'142,111,112,113,115,116,117,118,103,119,120,121,122,123,124,125,126', +'127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,148', +'103,144,140,143,141,142,111,112,113,115,116,117,118,50,119,120,121,122', +'123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139', +'110,138,145,45,,144,140,143,141,142,111,112,113,115,116,117,118,,119', +'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135', +'136,137,139,110,138,4,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23', +'24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,145,,,144', +'140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124', +'125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138', +'145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122', +'123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139', +'110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120', +'121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136', +'137,139,110,138,4,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24', +'25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,94,53,54,,57', +',58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79', +'80,81,82,83,84,86,87,89,85,88,4,6,7,,10,,11,12,13,14,15,16,17,18,19', +'20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42', +'43,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121', +'122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137', +'139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119', +'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135', +'136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117', +'118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114', +'134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115', +'116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132', +'133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112', +'113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130', +'131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142', +'111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128', +'129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143', +'141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126', +'127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144', +'140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124', +'125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138', +'145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122', +'123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139', +'110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120', +'121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136', +'137,139,110,138,94,53,54,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70', +'71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,94,53,54,,57', +',58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79', +'80,81,82,83,84,86,87,89,85,88,4,6,7,,10,,11,12,13,14,15,16,17,18,19', +'20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42', +'43,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121', +'122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137', +'139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119', +'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135', +'136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117', +'118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114', +'134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115', +'116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132', +'133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112', +'113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130', +'131,132,133,114,134,135,136,137,139,110,138,94,53,54,,57,,58,59,60,61', +'62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84', +'86,87,89,85,88,145,,,144,140,143,141,142,111,112,113,115,116,117,118', +',119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134', +'135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116', +'117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133', +'114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113', +'115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131', +'132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111', +'112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129', +'130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141', +'142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127', +'128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140', +'143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125', +'126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145', +',,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123', +'124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110', +'138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121', +'122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137', +'139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119', +'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135', +'136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117', +'118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114', +'134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115', +'116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132', +'133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112', +'113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130', +'131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142', +'111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128', +'129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143', +'141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126', +'127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144', +'140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124', +'125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138', +'6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30', +'31,32,33,34,35,36,37,38,39,40,41,42,43,101,102,,57,,58,59,60,61,62,63', +'64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87', +'89,85,88,47,48,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26', +'27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,47,48,,10,,11,12', '13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35', -'36,37,38,39,40,41,42,52,53,,56,,57,58,59,60,61,62,63,64,65,66,67,68', -'69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,85,86,88,84,87,6,7,,10', +'36,37,38,39,40,41,42,43,101,102,,57,,58,59,60,61,62,63,64,65,66,,67', +'68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,6', +'7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31', +'32,33,34,35,36,37,38,39,40,41,42,43,53,54,,57,,58,59,60,61,62,63,64', +'65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89', +'85,88,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73', +'74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48,,10,,11,12,13', +'14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36', +'37,38,39,40,41,42,43,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68', +'69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48', +',10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31', +'32,33,34,35,36,37,38,39,40,41,42,43,53,54,,57,,58,59,60,61,62,63,64', +'65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89', +'85,88,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73', +'74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48,,10,,11,12,13', +'14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36', +'37,38,39,40,41,42,43,53,54,,57,,58,59,60,61,62,63,64,65,66,,67,68,69', +'70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48,,10', ',11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33', -'34,35,36,37,38,39,40,41,42,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21', -'22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,52,53', -',56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77', -'78,79,80,81,82,83,85,86,88,84,87,100,101,,56,,57,58,59,60,61,62,63,64', -'65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,85,86,88,84', -'87,147,147,44,44,44,153,152,149,145,154,147,,,,,146' ] - racc_action_table = arr = ::Array.new(2540, nil) +'34,35,36,37,38,39,40,41,42,43,6,7,,10,,11,12,13,14,15,16,17,18,19,20', +'21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43', +'53,54,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76', +'77,78,79,80,81,82,83,84,86,87,89,85,88,6,7,,10,,11,12,13,14,15,16,17', +'18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40', +'41,42,43,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27', +'28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,53,54,,57,,58,59,60', +'61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83', +'84,86,87,89,85,88,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68,69', +'70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,148,148', +'45,45,45,154,153,150,146,155,148,,,,,147' ] + racc_action_table = arr = ::Array.new(2607, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end clist = [ -'0,0,0,5,0,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0', -'0,0,0,0,144,2,1,144,144,144,144,144,144,144,144,144,144,144,144,144', -'144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144', -'144,144,144,144,144,143,51,148,143,143,143,143,143,143,143,143,143,143', -'143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143', -'143,143,143,143,143,143,143,143,142,99,45,142,142,142,142,142,142,142', +'0,0,0,5,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0', +'0,0,0,0,0,145,2,1,145,145,145,145,145,145,145,145,145,145,145,145,52', +'145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145', +'145,145,145,145,145,145,144,149,100,144,144,144,144,144,144,144,144', +'144,144,144,144,46,144,144,144,144,144,144,144,144,144,144,144,144,144', +'144,144,144,144,144,144,144,144,144,144,143,49,,143,143,143,143,143', +'143,143,143,143,143,143,143,,143,143,143,143,143,143,143,143,143,143', +'143,143,143,143,143,143,143,143,143,143,143,143,143,4,4,4,,4,,4,4,4', +'4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,142,,,142', +'142,142,142,142,142,142,142,142,142,142,142,,142,142,142,142,142,142', '142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142', -'142,142,142,142,142,142,142,142,142,142,142,4,4,4,48,4,,4,4,4,4,4,4', -'4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,141,,,141,141,141', +'141,,,141,141,141,141,141,141,141,141,141,141,141,141,,141,141,141,141', '141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141', -'141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,140,,,140', +'141,141,140,,,140,140,140,140,140,140,140,140,140,140,140,140,,140,140', '140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140', -'140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140', -'139,,,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139', +'140,140,140,140,10,10,10,,10,,10,10,10,10,10,10,10,10,10,10,10,10,10', +'10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11', +',11,,11,11,11,11,11,11,11,11,11,,11,11,11,11,11,11,11,11,11,11,11,11', +'11,11,11,11,11,11,11,11,11,11,11,12,12,12,,12,,12,12,12,12,12,12,12', +'12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12', +'12,12,12,139,,,139,139,139,139,139,139,139,139,139,139,139,139,,139', '139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139', -'139,139,10,10,10,,10,,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10', -'10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,,11,,11,11', -'11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11', -'11,11,11,11,11,11,11,12,12,12,,12,,12,12,12,12,12,12,12,12,12,12,12', -'12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,138,', -',138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138', -'138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138', -'138,137,,,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137', -'137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137', -'137,137,137,136,,,136,136,136,136,136,136,136,136,136,136,136,136,136', -'136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136', -'136,136,136,136,136,135,,,135,135,135,135,135,135,135,135,135,135,135', -'135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135', -'135,135,135,135,135,135,135,134,,,134,134,134,134,134,134,134,134,134', -'134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134', -'134,134,134,134,134,134,134,134,134,133,,,133,133,133,133,133,133,133', +'139,139,139,139,139,138,,,138,138,138,138,138,138,138,138,138,138,138', +'138,,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138', +'138,138,138,138,138,138,138,137,,,137,137,137,137,137,137,137,137,137', +'137,137,137,,137,137,137,137,137,137,137,137,137,137,137,137,137,137', +'137,137,137,137,137,137,137,137,137,136,,,136,136,136,136,136,136,136', +'136,136,136,136,136,,136,136,136,136,136,136,136,136,136,136,136,136', +'136,136,136,136,136,136,136,136,136,136,136,135,,,135,135,135,135,135', +'135,135,135,135,135,135,135,,135,135,135,135,135,135,135,135,135,135', +'135,135,135,135,135,135,135,135,135,135,135,135,135,134,,,134,134,134', +'134,134,134,134,134,134,134,134,134,,134,134,134,134,134,134,134,134', +'134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,133,,,133', +'133,133,133,133,133,133,133,133,133,133,133,,133,133,133,133,133,133', '133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133', -'133,133,133,133,133,133,133,133,133,133,133,132,,,132,132,132,132,132', +'132,,,132,132,132,132,132,132,132,132,132,132,132,132,,132,132,132,132', '132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132', -'132,132,132,132,132,132,132,132,132,132,132,132,132,131,,,131,131,131', +'132,132,131,,,131,131,131,131,131,131,131,131,131,131,131,131,,131,131', '131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131', -'131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,130,,,130', -'130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130', -'130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130', -'129,,,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129', -'129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129', -'129,129,56,56,56,,56,,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56', -'56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,57,57,57,,57,,57,57', -'57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57', -'57,57,57,57,57,57,57,58,58,58,,58,,58,58,58,58,58,58,58,58,58,58,58', -'58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,88,,', -'88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88', -'88,88,88,88,88,88,88,88,88,88,88,88,128,,,128,128,128,128,128,128,128', +'131,131,131,131,130,,,130,130,130,130,130,130,130,130,130,130,130,130', +',130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130', +'130,130,130,130,130,130,57,57,57,,57,,57,57,57,57,57,57,57,57,57,,57', +'57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,58', +'58,58,,58,,58,58,58,58,58,58,58,58,58,,58,58,58,58,58,58,58,58,58,58', +'58,58,58,58,58,58,58,58,58,58,58,58,58,59,59,59,,59,,59,59,59,59,59', +'59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59', +'59,59,59,59,59,89,,,89,89,89,89,89,89,89,89,89,89,89,89,,89,89,89,89', +'89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,129,,,129,129', +'129,129,129,129,129,129,129,129,129,129,,129,129,129,129,129,129,129', +'129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,128', +',,128,128,128,128,128,128,128,128,128,128,128,128,,128,128,128,128,128', '128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128', -'128,128,128,128,128,128,128,128,128,128,128,127,,,127,127,127,127,127', +'128,127,,,127,127,127,127,127,127,127,127,127,127,127,127,,127,127,127', '127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127', -'127,127,127,127,127,127,127,127,127,127,127,127,127,126,,,126,126,126', +'127,127,127,126,,,126,126,126,126,126,126,126,126,126,126,126,126,,126', '126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126', -'126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,125,,,125', +'126,126,126,126,126,94,94,94,,94,,94,94,94,94,94,94,94,94,94,,94,94', +'94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,125,', +',125,125,125,125,125,125,125,125,125,125,125,125,,125,125,125,125,125', '125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125', -'125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125', -'93,93,93,,93,,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93', -'93,93,93,93,93,93,93,93,93,93,93,93,93,93,124,,,124,124,124,124,124', +'125,124,,,124,124,124,124,124,124,124,124,124,124,124,124,,124,124,124', '124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124', -'124,124,124,124,124,124,124,124,124,124,124,124,124,123,,,123,123,123', +'124,124,124,123,,,123,123,123,123,123,123,123,123,123,123,123,123,,123', '123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123', -'123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,122,,,122', -'122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122', -'122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122', -'121,,,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121', -'121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121', -'121,121,120,,,120,120,120,120,120,120,120,120,120,120,120,120,120,120', -'120,120,120,120,120,120,120,120,120,120,120,120,120,120,120,120,120', -'120,120,120,120,119,,,119,119,119,119,119,119,119,119,119,119,119,119', -'119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119', -'119,119,119,119,119,119,118,,,118,118,118,118,118,118,118,118,118,118', -'118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118', -'118,118,118,118,118,118,118,118,117,,,117,117,117,117,117,117,117,117', +'123,123,123,123,123,122,,,122,122,122,122,122,122,122,122,122,122,122', +'122,,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122', +'122,122,122,122,122,122,122,121,,,121,121,121,121,121,121,121,121,121', +'121,121,121,,121,121,121,121,121,121,121,121,121,121,121,121,121,121', +'121,121,121,121,121,121,121,121,121,120,,,120,120,120,120,120,120,120', +'120,120,120,120,120,,120,120,120,120,120,120,120,120,120,120,120,120', +'120,120,120,120,120,120,120,120,120,120,120,119,,,119,119,119,119,119', +'119,119,119,119,119,119,119,,119,119,119,119,119,119,119,119,119,119', +'119,119,119,119,119,119,119,119,119,119,119,119,119,118,,,118,118,118', +'118,118,118,118,118,118,118,118,118,,118,118,118,118,118,118,118,118', +'118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,117,,,117', +'117,117,117,117,117,117,117,117,117,117,117,,117,117,117,117,117,117', '117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117', -'117,117,117,117,117,117,117,117,117,117,116,,,116,116,116,116,116,116', +'116,,,116,116,116,116,116,116,116,116,116,116,116,116,,116,116,116,116', '116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116', -'116,116,116,116,116,116,116,116,116,116,116,116,115,,,115,115,115,115', +'116,116,115,,,115,115,115,115,115,115,115,115,115,115,115,115,,115,115', '115,115,115,115,115,115,115,115,115,115,115,115,115,115,115,115,115', -'115,115,115,115,115,115,115,115,115,115,115,115,115,115,114,,,114,114', -'114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114', -'114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,113', -',,113,113,113,113,113,113,113,113,113,113,113,113,113,113,113,113,113', -'113,113,113,113,113,113,113,113,113,113,113,113,113,113,113,113,113', -'113,110,,,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110', -'110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110', -'110,110,110,111,,,111,111,111,111,111,111,111,111,111,111,111,111,111', -'111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111', -'111,111,111,111,111,112,,,112,112,112,112,112,112,112,112,112,112,112', -'112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112', -'112,112,112,112,112,112,112,53,53,,53,,53,53,53,53,53,53,53,53,53,53', -'53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,190', -'190,,190,,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190', -'190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190', -'151,151,,151,,151,151,151,151,151,151,151,151,151,151,151,151,151,151', -'151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151', -'151,104,104,,104,,104,104,104,104,104,104,104,104,104,104,104,104,104', -'104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104', -'104,104,103,103,,103,,103,103,103,103,103,103,103,103,103,103,103,103', -'103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103', -'103,103,103,101,101,,101,,101,101,101,101,101,101,101,101,101,101,101', -'101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101', -'101,101,101,101,100,100,,100,,100,100,100,100,100,100,100,100,100,100', -'100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100', -'100,100,100,100,100,150,150,,150,,150,150,150,150,150,150,150,150,150', -'150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150', -'150,150,150,150,150,150,98,98,,98,,98,98,98,98,98,98,98,98,98,98,98', -'98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,97,97', -',97,,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97', -'97,97,97,97,97,97,97,97,97,97,97,96,96,,96,,96,96,96,96,96,96,96,96', -'96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96', -'96,147,147,,147,,147,147,147,147,147,147,147,147,147,147,147,147,147', -'147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147', -'147,147,92,92,,92,,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92', -'92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,3,3,,3,,3,3,3,3,3,3,3,3', -'3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,6,6,,6,,6,6,6,6,6,6', -'6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,89,89,,89,,89,89', -'89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89', -'89,89,89,89,89,89,89,7,7,,7,,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7', -'7,7,7,7,7,7,7,7,7,7,7,7,52,52,,52,,52,52,52,52,52,52,52,52,52,52,52', -'52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,44,44', -',44,,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44', -'44,44,44,44,44,44,44,44,44,44,44,47,47,,47,,47,47,47,47,47,47,47,47', -'47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47', -'47,46,46,,46,,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46', -'46,46,46,46,46,46,46,46,46,46,46,46,46,46,50,50,,50,,50,50,50,50,50', -'50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50', -'50,50,50,50,106,105,94,90,107,106,105,94,90,107,91,,,,,91' ] - racc_action_check = arr = ::Array.new(2540, nil) +'115,115,115,115,114,,,114,114,114,114,114,114,114,114,114,114,114,114', +',114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114', +'114,114,114,114,114,114,111,,,111,111,111,111,111,111,111,111,111,111', +'111,111,,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111', +'111,111,111,111,111,111,111,111,112,,,112,112,112,112,112,112,112,112', +'112,112,112,112,,112,112,112,112,112,112,112,112,112,112,112,112,112', +'112,112,112,112,112,112,112,112,112,112,113,,,113,113,113,113,113,113', +'113,113,113,113,113,113,,113,113,113,113,113,113,113,113,113,113,113', +'113,113,113,113,113,113,113,113,113,113,113,113,54,54,,54,,54,54,54', +'54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54', +'54,54,54,54,54,54,54,191,191,,191,,191,191,191,191,191,191,191,191,191', +',191,191,191,191,191,191,191,191,191,191,191,191,191,191,191,191,191', +'191,191,191,191,191,191,152,152,,152,,152,152,152,152,152,152,152,152', +'152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152', +'152,152,152,152,152,152,152,152,105,105,,105,,105,105,105,105,105,105', +'105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105', +'105,105,105,105,105,105,105,105,105,105,104,104,,104,,104,104,104,104', +'104,104,104,104,104,,104,104,104,104,104,104,104,104,104,104,104,104', +'104,104,104,104,104,104,104,104,104,104,104,102,102,,102,,102,102,102', +'102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102', +'102,102,102,102,102,102,102,102,102,102,102,102,102,101,101,,101,,101', +'101,101,101,101,101,101,101,101,,101,101,101,101,101,101,101,101,101', +'101,101,101,101,101,101,101,101,101,101,101,101,101,101,151,151,,151', +',151,151,151,151,151,151,151,151,151,,151,151,151,151,151,151,151,151', +'151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,99,99,,99', +',99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99', +'99,99,99,99,99,99,99,99,99,99,98,98,,98,,98,98,98,98,98,98,98,98,98', +',98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98', +'97,97,,97,,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97', +'97,97,97,97,97,97,97,97,97,97,97,97,97,97,148,148,,148,,148,148,148', +'148,148,148,148,148,148,,148,148,148,148,148,148,148,148,148,148,148', +'148,148,148,148,148,148,148,148,148,148,148,148,93,93,,93,,93,93,93', +'93,93,93,93,93,93,,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93', +'93,93,93,93,93,93,3,3,,3,,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3', +'3,3,3,3,3,3,3,3,3,3,3,3,6,6,,6,,6,6,6,6,6,6,6,6,6,,6,6,6,6,6,6,6,6,6', +'6,6,6,6,6,6,6,6,6,6,6,6,6,6,90,90,,90,,90,90,90,90,90,90,90,90,90,90', +'90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90', +'7,7,,7,,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7', +'7,7,7,53,53,,53,,53,53,53,53,53,53,53,53,53,,53,53,53,53,53,53,53,53', +'53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,45,45,,45,,45,45,45,45', +'45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45', +'45,45,45,45,45,45,48,48,,48,,48,48,48,48,48,48,48,48,48,48,48,48,48', +'48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,47,47,,47', +',47,47,47,47,47,47,47,47,47,,47,47,47,47,47,47,47,47,47,47,47,47,47', +'47,47,47,47,47,47,47,47,47,47,51,51,,51,,51,51,51,51,51,51,51,51,51', +',51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51', +'107,106,95,91,108,107,106,95,91,108,92,,,,,92' ] + racc_action_check = arr = ::Array.new(2607, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end racc_action_pointer = [ - -2, 40, 37, 2188, 150, -2, 2225, 2299, nil, nil, - 302, 340, 378, nil, nil, nil, nil, nil, nil, nil, + -2, 41, 38, 2246, 154, -2, 2284, 2360, nil, nil, + 310, 349, 388, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 5, 2373, 111, 2447, 2410, 153, nil, - 2484, 72, 2336, 1707, nil, nil, 796, 834, 872, nil, + nil, nil, nil, nil, 5, 2436, 88, 2512, 2474, 116, + nil, 2550, 49, 2398, 1752, nil, nil, 817, 856, 895, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 910, 2262, - 2525, 2532, 2151, 1100, 2524, nil, 2077, 2040, 2003, 110, - 1929, 1892, nil, 1855, 1818, 2523, 2522, 2526, nil, nil, - 1594, 1632, 1670, 1556, 1518, 1480, 1442, 1404, 1366, 1328, - 1290, 1252, 1214, 1176, 1138, 1062, 1024, 986, 948, 758, - 720, 682, 644, 606, 568, 530, 492, 454, 416, 264, - 226, 188, 112, 74, 36, nil, nil, 2114, 76, nil, - 1966, 1781, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 934, + 2322, 2592, 2599, 2208, 1129, 2591, nil, 2132, 2094, 2056, + 75, 1980, 1942, nil, 1904, 1866, 2590, 2589, 2593, nil, + nil, 1636, 1675, 1714, 1597, 1558, 1519, 1480, 1441, 1402, + 1363, 1324, 1285, 1246, 1207, 1168, 1090, 1051, 1012, 973, + 778, 739, 700, 661, 622, 583, 544, 505, 466, 427, + 271, 232, 193, 115, 76, 37, nil, nil, 2170, 77, + nil, 2018, 1828, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 1744 ] + nil, 1790 ] racc_action_default = [ - -2, -136, -1, -3, -2, -7, -13, -14, -15, -17, - -2, -51, -2, -21, -22, -23, -24, -25, -26, -27, + -2, -139, -1, -3, -2, -7, -13, -14, -15, -17, + -2, -52, -2, -21, -22, -23, -24, -25, -26, -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38, -39, -40, -41, -42, -43, -44, -45, -46, -47, - -48, -49, -50, -136, -5, -8, -136, -136, -6, -16, - -9, -56, -62, -63, -64, -66, -51, -51, -2, -70, + -48, -49, -50, -51, -139, -5, -8, -139, -139, -6, + -16, -9, -57, -63, -64, -65, -67, -52, -52, -2, -71, -72, -73, -74, -75, -76, -77, -78, -79, -80, -81, -82, -83, -84, -85, -86, -87, -88, -89, -90, - -91, -92, -93, -94, -95, -96, -97, -98, -136, -11, - -136, -136, -52, -51, -136, 191, -4, -10, -12, -57, - -136, -136, -65, -58, -60, -136, -136, -136, -99, -100, - -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, - -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, - -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, - -136, -136, -136, -136, -136, -18, -19, -54, -55, -20, - -59, -61, -67, -68, -69, -101, -102, -103, -104, -105, - -106, -107, -108, -109, -110, -111, -112, -113, -114, -115, - -116, -117, -118, -119, -120, -121, -122, -123, -124, -125, - -126, -127, -128, -129, -130, -131, -132, -133, -134, -135, - -53 ] + -91, -92, -93, -94, -95, -96, -97, -98, -99, -101, + -11, -139, -139, -53, -52, -139, 192, -4, -10, -12, + -58, -139, -139, -66, -59, -61, -139, -139, -139, -100, + -102, -101, -101, -101, -101, -101, -101, -101, -101, -101, + -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, + -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, + -101, -101, -101, -101, -101, -101, -18, -19, -55, -56, + -20, -60, -62, -68, -69, -70, -103, -104, -105, -106, + -107, -108, -109, -110, -111, -112, -113, -114, -115, -116, + -117, -118, -119, -120, -121, -122, -123, -124, -125, -127, + -128, -129, -130, -131, -132, -133, -134, -135, -136, -137, + -138, -54 ] racc_goto_table = [ - 45, 2, 50, 89, 99, 48, 1, 91, nil, nil, - nil, 90, nil, 94, nil, nil, nil, nil, nil, nil, + 46, 1, 51, 100, 2, 92, 90, nil, 49, nil, + nil, nil, nil, nil, 91, nil, 95, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 96, nil, 97, 98, nil, nil, 99, nil, 103, 104, - nil, 99, 105, 106, nil, nil, nil, 99, nil, 107, + nil, nil, nil, 98, 97, 100, nil, 99, nil, 104, + 100, 106, 107, 105, nil, nil, 100, nil, nil, nil, + nil, nil, nil, 108, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 108, nil, nil, 45, nil, nil, 148, - nil, nil, nil, 45, nil, 45, 150, 151, nil, nil, - nil, 45, nil, nil, 99, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - nil, nil, nil, 190, 99, nil, nil, nil, 45 ] + nil, nil, 109, nil, nil, nil, nil, 46, 149, nil, + nil, nil, nil, nil, 46, nil, 46, 151, nil, nil, + nil, 152, 46, 100, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, nil, + nil, nil, nil, 100, 191, nil, nil, nil, nil, 46 ] racc_goto_check = [ - 4, 2, 5, 3, 9, 2, 1, 8, nil, nil, - nil, 2, nil, 2, nil, nil, nil, nil, nil, nil, + 4, 1, 5, 9, 2, 8, 3, nil, 2, nil, + nil, nil, nil, nil, 2, nil, 2, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 3, nil, 5, 3, nil, nil, 9, nil, 5, 3, - nil, 9, 8, 8, nil, nil, nil, 9, nil, 2, + nil, nil, nil, 5, 3, 9, nil, 3, nil, 5, + 9, 8, 8, 3, nil, nil, 9, nil, nil, nil, + nil, nil, nil, 2, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 12, nil, nil, 4, nil, nil, 8, - nil, nil, nil, 4, nil, 4, 5, 3, nil, nil, - nil, 4, nil, nil, 9, 12, 12, 12, 12, 12, + nil, nil, 12, nil, nil, nil, nil, 4, 8, nil, + nil, nil, nil, nil, 4, nil, 4, 5, nil, nil, + nil, 3, 4, 9, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - nil, nil, nil, 5, 9, nil, nil, nil, 4 ] + 12, 12, 12, 12, 12, 12, 12, 12, 12, nil, + nil, nil, nil, 9, 5, nil, nil, nil, nil, 4 ] racc_goto_pointer = [ - nil, 6, 1, -4, -3, -4, nil, nil, -4, -46, - nil, nil, -5 ] + nil, 1, 4, -1, -3, -4, nil, nil, -6, -48, + nil, nil, -7 ] racc_goto_default = [ - nil, nil, nil, 3, 5, 92, 8, 9, nil, 51, - 54, 55, nil ] + nil, nil, nil, 3, 5, 93, 8, 9, nil, 52, + 55, 56, nil ] racc_reduce_table = [ 0, 0, :racc_error, - 1, 41, :_reduce_none, - 0, 42, :_reduce_2, - 1, 42, :_reduce_3, - 3, 42, :_reduce_4, - 2, 42, :_reduce_5, - 2, 42, :_reduce_6, - 1, 43, :_reduce_7, - 2, 43, :_reduce_8, - 2, 43, :_reduce_9, - 3, 43, :_reduce_10, - 2, 43, :_reduce_11, - 3, 43, :_reduce_12, - 1, 43, :_reduce_13, - 1, 43, :_reduce_14, - 1, 44, :_reduce_15, - 2, 44, :_reduce_16, - 1, 46, :_reduce_17, - 3, 46, :_reduce_18, - 3, 46, :_reduce_19, - 3, 46, :_reduce_20, - 1, 47, :_reduce_21, - 1, 47, :_reduce_22, - 1, 47, :_reduce_23, - 1, 47, :_reduce_24, - 1, 47, :_reduce_25, - 1, 47, :_reduce_26, - 1, 47, :_reduce_27, - 1, 47, :_reduce_28, - 1, 47, :_reduce_29, - 1, 47, :_reduce_30, - 1, 47, :_reduce_31, - 1, 47, :_reduce_32, - 1, 47, :_reduce_33, - 1, 47, :_reduce_34, - 1, 47, :_reduce_35, - 1, 47, :_reduce_36, - 1, 47, :_reduce_37, - 1, 47, :_reduce_38, - 1, 47, :_reduce_39, - 1, 47, :_reduce_40, - 1, 47, :_reduce_41, - 1, 47, :_reduce_42, - 1, 47, :_reduce_43, - 1, 47, :_reduce_44, - 1, 47, :_reduce_45, - 1, 47, :_reduce_46, - 1, 47, :_reduce_47, - 1, 47, :_reduce_48, - 1, 47, :_reduce_49, - 1, 47, :_reduce_50, - 0, 48, :_reduce_51, - 1, 48, :_reduce_52, - 3, 48, :_reduce_53, - 2, 48, :_reduce_54, - 2, 48, :_reduce_55, - 1, 45, :_reduce_56, - 2, 45, :_reduce_57, - 2, 45, :_reduce_58, - 3, 45, :_reduce_59, - 2, 45, :_reduce_60, - 3, 45, :_reduce_61, - 1, 45, :_reduce_62, - 1, 45, :_reduce_63, - 1, 49, :_reduce_64, - 2, 49, :_reduce_65, - 1, 50, :_reduce_66, - 3, 50, :_reduce_67, - 3, 50, :_reduce_68, - 3, 50, :_reduce_69, - 1, 51, :_reduce_70, - 1, 51, :_reduce_71, - 1, 51, :_reduce_72, - 1, 51, :_reduce_73, - 1, 51, :_reduce_74, - 1, 51, :_reduce_75, - 1, 51, :_reduce_76, - 1, 51, :_reduce_77, - 1, 51, :_reduce_78, - 1, 51, :_reduce_79, - 1, 51, :_reduce_80, - 1, 51, :_reduce_81, - 1, 51, :_reduce_82, - 1, 51, :_reduce_83, - 1, 51, :_reduce_84, - 1, 51, :_reduce_85, - 1, 51, :_reduce_86, - 1, 51, :_reduce_87, - 1, 51, :_reduce_88, - 1, 51, :_reduce_89, - 1, 51, :_reduce_90, - 1, 51, :_reduce_91, - 1, 51, :_reduce_92, - 1, 51, :_reduce_93, - 1, 51, :_reduce_94, - 1, 51, :_reduce_95, - 1, 51, :_reduce_96, - 1, 51, :_reduce_97, - 1, 51, :_reduce_98, - 2, 51, :_reduce_99, - 1, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none, - 2, 52, :_reduce_none ] + 1, 42, :_reduce_none, + 0, 43, :_reduce_2, + 1, 43, :_reduce_3, + 3, 43, :_reduce_4, + 2, 43, :_reduce_5, + 2, 43, :_reduce_6, + 1, 44, :_reduce_7, + 2, 44, :_reduce_8, + 2, 44, :_reduce_9, + 3, 44, :_reduce_10, + 2, 44, :_reduce_11, + 3, 44, :_reduce_12, + 1, 44, :_reduce_13, + 1, 44, :_reduce_14, + 1, 45, :_reduce_15, + 2, 45, :_reduce_16, + 1, 47, :_reduce_17, + 3, 47, :_reduce_18, + 3, 47, :_reduce_19, + 3, 47, :_reduce_20, + 1, 48, :_reduce_21, + 1, 48, :_reduce_22, + 1, 48, :_reduce_23, + 1, 48, :_reduce_24, + 1, 48, :_reduce_25, + 1, 48, :_reduce_26, + 1, 48, :_reduce_27, + 1, 48, :_reduce_28, + 1, 48, :_reduce_29, + 1, 48, :_reduce_30, + 1, 48, :_reduce_31, + 1, 48, :_reduce_32, + 1, 48, :_reduce_33, + 1, 48, :_reduce_34, + 1, 48, :_reduce_35, + 1, 48, :_reduce_36, + 1, 48, :_reduce_37, + 1, 48, :_reduce_38, + 1, 48, :_reduce_39, + 1, 48, :_reduce_40, + 1, 48, :_reduce_41, + 1, 48, :_reduce_42, + 1, 48, :_reduce_43, + 1, 48, :_reduce_44, + 1, 48, :_reduce_45, + 1, 48, :_reduce_46, + 1, 48, :_reduce_47, + 1, 48, :_reduce_48, + 1, 48, :_reduce_49, + 1, 48, :_reduce_50, + 1, 48, :_reduce_51, + 0, 49, :_reduce_52, + 1, 49, :_reduce_53, + 3, 49, :_reduce_54, + 2, 49, :_reduce_55, + 2, 49, :_reduce_56, + 1, 46, :_reduce_57, + 2, 46, :_reduce_58, + 2, 46, :_reduce_59, + 3, 46, :_reduce_60, + 2, 46, :_reduce_61, + 3, 46, :_reduce_62, + 1, 46, :_reduce_63, + 1, 46, :_reduce_64, + 1, 50, :_reduce_65, + 2, 50, :_reduce_66, + 1, 51, :_reduce_67, + 3, 51, :_reduce_68, + 3, 51, :_reduce_69, + 3, 51, :_reduce_70, + 1, 52, :_reduce_71, + 1, 52, :_reduce_72, + 1, 52, :_reduce_73, + 1, 52, :_reduce_74, + 1, 52, :_reduce_75, + 1, 52, :_reduce_76, + 1, 52, :_reduce_77, + 1, 52, :_reduce_78, + 1, 52, :_reduce_79, + 1, 52, :_reduce_80, + 1, 52, :_reduce_81, + 1, 52, :_reduce_82, + 1, 52, :_reduce_83, + 1, 52, :_reduce_84, + 1, 52, :_reduce_85, + 1, 52, :_reduce_86, + 1, 52, :_reduce_87, + 1, 52, :_reduce_88, + 1, 52, :_reduce_89, + 1, 52, :_reduce_90, + 1, 52, :_reduce_91, + 1, 52, :_reduce_92, + 1, 52, :_reduce_93, + 1, 52, :_reduce_94, + 1, 52, :_reduce_95, + 1, 52, :_reduce_96, + 1, 52, :_reduce_97, + 1, 52, :_reduce_98, + 1, 52, :_reduce_99, + 2, 52, :_reduce_100, + 0, 53, :_reduce_none, + 1, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none, + 2, 53, :_reduce_none ] -racc_reduce_n = 136 +racc_reduce_n = 139 -racc_shift_n = 191 +racc_shift_n = 192 racc_token_table = { false => 0, :error => 1, :LEX_OR => 2, @@ -590,35 +597,36 @@ :LEX_BACK_REFER => 12, :LEX_CODE_LITERAL => 13, :LEX_NAMED_REFER => 14, :LEX_NAMED_GENERATE => 15, :LEX_CONTROL_LETTER => 16, - :LEX_META_LETTER => 17, - :LEX_ESCAPED_LETTER => 18, - :LEX_UNICODE => 19, - :LEX_SIMPLIFIED_CLASS => 20, - :LEX_UNICODE_CLASS => 21, - :LEX_BRACKET => 22, - :LEX_ANC_LINE_BEGIN => 23, - :LEX_ANC_LINE_END => 24, - :LEX_ANC_WORD_BOUND => 25, - :LEX_ANC_WORD_UNBOUND => 26, - :LEX_ANC_STRING_BEGIN => 27, - :LEX_ANC_STRING_END => 28, - :LEX_ANC_STRING_END2 => 29, - :LEX_ANC_LOOK_BEHIND2 => 30, - :LEX_ANC_MATCH_START => 31, - :LEX_SPECIAL_LETTER => 32, - :LEX_MINUS => 33, - :LEX_AND_AND => 34, - :LEX_SPACE => 35, - :LEX_SIMPLE_ESCAPE => 36, - :LEX_SHARP => 37, - :LEX_NEW_LINE => 38, - :LEX_ANY_LETTER => 39 } + :LEX_META_CONTROL_LETTER => 17, + :LEX_META_LETTER => 18, + :LEX_ESCAPED_LETTER => 19, + :LEX_UNICODE => 20, + :LEX_SIMPLIFIED_CLASS => 21, + :LEX_UNICODE_CLASS => 22, + :LEX_BRACKET => 23, + :LEX_ANC_LINE_BEGIN => 24, + :LEX_ANC_LINE_END => 25, + :LEX_ANC_WORD_BOUND => 26, + :LEX_ANC_WORD_UNBOUND => 27, + :LEX_ANC_STRING_BEGIN => 28, + :LEX_ANC_STRING_END => 29, + :LEX_ANC_STRING_END2 => 30, + :LEX_ANC_LOOK_BEHIND2 => 31, + :LEX_ANC_MATCH_START => 32, + :LEX_SPECIAL_LETTER => 33, + :LEX_MINUS => 34, + :LEX_AND_AND => 35, + :LEX_SPACE => 36, + :LEX_SIMPLE_ESCAPE => 37, + :LEX_SHARP => 38, + :LEX_NEW_LINE => 39, + :LEX_ANY_LETTER => 40 } -racc_nt_base = 40 +racc_nt_base = 41 racc_use_result_var = false Racc_arg = [ racc_action_table, @@ -652,10 +660,11 @@ "LEX_BACK_REFER", "LEX_CODE_LITERAL", "LEX_NAMED_REFER", "LEX_NAMED_GENERATE", "LEX_CONTROL_LETTER", + "LEX_META_CONTROL_LETTER", "LEX_META_LETTER", "LEX_ESCAPED_LETTER", "LEX_UNICODE", "LEX_SIMPLIFIED_CLASS", "LEX_UNICODE_CLASS", @@ -855,131 +864,131 @@ end .,., module_eval(<<'.,.,', 'parser.y', 64) def _reduce_28(val, _values) - TLetter.new(:LEX_CONTROL_LETTER, val[0]) + TLetter.new(:LEX_META_CONTROL_LETTER, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 65) def _reduce_29(val, _values) - TLetter.new(:LEX_ESCAPED_LETTER, val[0]) + TLetter.new(:LEX_CONTROL_LETTER, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 66) def _reduce_30(val, _values) - TLetter.new(:LEX_UNICODE, val[0]) + TLetter.new(:LEX_ESCAPED_LETTER, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 67) def _reduce_31(val, _values) - TLetter.new(:LEX_SIMPLIFIED_CLASS, val[0]) + TLetter.new(:LEX_UNICODE, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 68) def _reduce_32(val, _values) - TLetter.new(:LEX_UNICODE_CLASS, val[0]) + TLetter.new(:LEX_SIMPLIFIED_CLASS, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 69) def _reduce_33(val, _values) - @bracket_parser.parse(val[0], @options) + TLetter.new(:LEX_UNICODE_CLASS, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 70) def _reduce_34(val, _values) - Anchor.new(:LEX_ANC_LINE_BEGIN, val[0]) + @bracket_parser.parse(val[0], @options) end .,., module_eval(<<'.,.,', 'parser.y', 71) def _reduce_35(val, _values) - Anchor.new(:LEX_ANC_LINE_END, val[0]) + Anchor.new(:LEX_ANC_LINE_BEGIN, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 72) def _reduce_36(val, _values) - Anchor.new(:LEX_ANC_WORD_BOUND, val[0]) + Anchor.new(:LEX_ANC_LINE_END, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 73) def _reduce_37(val, _values) - Anchor.new(:LEX_ANC_WORD_UNBOUND, val[0]) + Anchor.new(:LEX_ANC_WORD_BOUND, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 74) def _reduce_38(val, _values) - Anchor.new(:LEX_ANC_STRING_BEGIN, val[0]) + Anchor.new(:LEX_ANC_WORD_UNBOUND, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 75) def _reduce_39(val, _values) - Anchor.new(:LEX_ANC_STRING_END, val[0]) + Anchor.new(:LEX_ANC_STRING_BEGIN, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 76) def _reduce_40(val, _values) - Anchor.new(:LEX_ANC_STRING_END2, val[0]) + Anchor.new(:LEX_ANC_STRING_END, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 77) def _reduce_41(val, _values) - Anchor.new(:LEX_ANC_LOOK_BEHIND2, val[0]) + Anchor.new(:LEX_ANC_STRING_END2, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 78) def _reduce_42(val, _values) - Anchor.new(:LEX_ANC_MATCH_START, val[0]) + Anchor.new(:LEX_ANC_LOOK_BEHIND2, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 79) def _reduce_43(val, _values) - TLetter.new(:LEX_SPECIAL_LETTER, val[0]) + Anchor.new(:LEX_ANC_MATCH_START, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 80) def _reduce_44(val, _values) - TLetter.new(:LEX_CHAR, val[0]) + SpecialLetter.new(val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 81) def _reduce_45(val, _values) - TLetter.new(:LEX_AND_AND, val[0]) + TLetter.new(:LEX_CHAR, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 82) def _reduce_46(val, _values) - TLetter.new(:LEX_SPACE, val[0]) + TLetter.new(:LEX_AND_AND, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 83) def _reduce_47(val, _values) - TLetter.new(:LEX_SIMPLE_ESCAPE, val[0]) + TLetter.new(:LEX_SPACE, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 84) def _reduce_48(val, _values) - TLetter.new(:LEX_CHAR, val[0]) + TLetter.new(:LEX_SIMPLE_ESCAPE, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 85) def _reduce_49(val, _values) @@ -987,167 +996,167 @@ end .,., module_eval(<<'.,.,', 'parser.y', 86) def _reduce_50(val, _values) - TLetter.new(:LEX_ANY_LETTER, val[0]) + TLetter.new(:LEX_CHAR, val[0]) end .,., -module_eval(<<'.,.,', 'parser.y', 91) +module_eval(<<'.,.,', 'parser.y', 87) def _reduce_51(val, _values) - TEmpty.new + TLetter.new(:LEX_ANY_LETTER, val[0]) end .,., -module_eval(<<'.,.,', 'parser.y', 93) +module_eval(<<'.,.,', 'parser.y', 92) def _reduce_52(val, _values) - Selectable.new(val[0]) + TEmpty.new end .,., -module_eval(<<'.,.,', 'parser.y', 95) +module_eval(<<'.,.,', 'parser.y', 94) def _reduce_53(val, _values) - val[0].add(val[2]) + Selectable.new(val[0]) end .,., -module_eval(<<'.,.,', 'parser.y', 97) +module_eval(<<'.,.,', 'parser.y', 96) def _reduce_54(val, _values) - val[0].add(TEmpty.new) + val[0].add(val[2]) end .,., -module_eval(<<'.,.,', 'parser.y', 99) +module_eval(<<'.,.,', 'parser.y', 98) def _reduce_55(val, _values) - Selectable.new(TEmpty.new).add(val[1]) + val[0].add(TEmpty.new) end .,., -module_eval(<<'.,.,', 'parser.y', 103) +module_eval(<<'.,.,', 'parser.y', 100) def _reduce_56(val, _values) - Sequence.new(val[0]) + Selectable.new(TEmpty.new).add(val[1]) end .,., -module_eval(<<'.,.,', 'parser.y', 105) +module_eval(<<'.,.,', 'parser.y', 104) def _reduce_57(val, _values) - val[0].add(val[1]) + Sequence.new(val[0]) end .,., -module_eval(<<'.,.,', 'parser.y', 107) +module_eval(<<'.,.,', 'parser.y', 106) def _reduce_58(val, _values) - Sequence.new(Paren.new(val[0])).concatinate(val[1]) + val[0].add(val[1]) end .,., -module_eval(<<'.,.,', 'parser.y', 109) +module_eval(<<'.,.,', 'parser.y', 108) def _reduce_59(val, _values) - val[0].add(Paren.new(val[1])).concatinate(val[2]) + Sequence.new(Paren.new(val[0])).concatinate(val[1]) end .,., -module_eval(<<'.,.,', 'parser.y', 111) +module_eval(<<'.,.,', 'parser.y', 110) def _reduce_60(val, _values) - Sequence.new(Paren.new(val[0])).concatinate(val[1]) + val[0].add(Paren.new(val[1])).concatinate(val[2]) end .,., -module_eval(<<'.,.,', 'parser.y', 113) +module_eval(<<'.,.,', 'parser.y', 112) def _reduce_61(val, _values) - val[0].add(Paren.new(val[1])).concatinate(val[2]) + Sequence.new(Paren.new(val[0])).concatinate(val[1]) end .,., -module_eval(<<'.,.,', 'parser.y', 115) +module_eval(<<'.,.,', 'parser.y', 114) def _reduce_62(val, _values) - Sequence.new(Paren.new(val[0])) + val[0].add(Paren.new(val[1])).concatinate(val[2]) end .,., -module_eval(<<'.,.,', 'parser.y', 117) +module_eval(<<'.,.,', 'parser.y', 116) def _reduce_63(val, _values) Sequence.new(Paren.new(val[0])) end .,., -module_eval(<<'.,.,', 'parser.y', 121) +module_eval(<<'.,.,', 'parser.y', 118) def _reduce_64(val, _values) - Repeatable.new(val[0]) + Sequence.new(Paren.new(val[0])) end .,., -module_eval(<<'.,.,', 'parser.y', 123) +module_eval(<<'.,.,', 'parser.y', 122) def _reduce_65(val, _values) - val[0].set_quant(val[1]) + Repeatable.new(val[0]) end .,., -module_eval(<<'.,.,', 'parser.y', 127) +module_eval(<<'.,.,', 'parser.y', 124) def _reduce_66(val, _values) - val[0] + val[0].set_quant(val[1]) end .,., -module_eval(<<'.,.,', 'parser.y', 129) +module_eval(<<'.,.,', 'parser.y', 128) def _reduce_67(val, _values) - @options[:parens].add(Paren.new(val[0], val[1], val[2])) + val[0] end .,., -module_eval(<<'.,.,', 'parser.y', 131) +module_eval(<<'.,.,', 'parser.y', 130) def _reduce_68(val, _values) @options[:parens].add(Paren.new(val[0], val[1], val[2])) end .,., -module_eval(<<'.,.,', 'parser.y', 133) +module_eval(<<'.,.,', 'parser.y', 132) def _reduce_69(val, _values) @options[:parens].add(Paren.new(val[0], val[1], val[2])) end .,., -module_eval(<<'.,.,', 'parser.y', 136) +module_eval(<<'.,.,', 'parser.y', 134) def _reduce_70(val, _values) - TLetter.new(:LEX_CHAR, val[0]) + @options[:parens].add(Paren.new(val[0], val[1], val[2])) end .,., module_eval(<<'.,.,', 'parser.y', 137) def _reduce_71(val, _values) - TLetter.new(:LEX_OCTET, val[0]) + TLetter.new(:LEX_CHAR, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 138) def _reduce_72(val, _values) - BackRefer.new(:LEX_BACK_REFER, val[0]) + TLetter.new(:LEX_OCTET, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 139) def _reduce_73(val, _values) - TLetter.new(:LEX_CODE_LITERAL, val[0]) + BackRefer.new(:LEX_BACK_REFER, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 140) def _reduce_74(val, _values) - BackRefer.new(:LEX_NAMED_REFER, val[0]) + TLetter.new(:LEX_CODE_LITERAL, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 141) def _reduce_75(val, _values) - BackRefer.new(:LEX_NAMED_GENERATE, val[0]) + BackRefer.new(:LEX_NAMED_REFER, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 142) def _reduce_76(val, _values) - TLetter.new(:LEX_CONTROL_LETTER, val[0]) + BackRefer.new(:LEX_NAMED_GENERATE, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 143) def _reduce_77(val, _values) @@ -1155,113 +1164,113 @@ end .,., module_eval(<<'.,.,', 'parser.y', 144) def _reduce_78(val, _values) - TLetter.new(:LEX_ESCAPED_LETTER, val[0]) + TLetter.new(:LEX_CONTROL_LETTER, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 145) def _reduce_79(val, _values) - TLetter.new(:LEX_UNICODE, val[0]) + TLetter.new(:LEX_ESCAPED_LETTER, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 146) def _reduce_80(val, _values) - TLetter.new(:LEX_SIMPLIFIED_CLASS, val[0]) + TLetter.new(:LEX_UNICODE, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 147) def _reduce_81(val, _values) - TLetter.new(:LEX_UNICODE_CLASS, val[0]) + TLetter.new(:LEX_SIMPLIFIED_CLASS, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 148) def _reduce_82(val, _values) - @bracket_parser.parse(val[0], @options) + TLetter.new(:LEX_UNICODE_CLASS, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 149) def _reduce_83(val, _values) - Anchor.new(:LEX_ANC_LINE_BEGIN, val[0]) + @bracket_parser.parse(val[0], @options) end .,., module_eval(<<'.,.,', 'parser.y', 150) def _reduce_84(val, _values) - Anchor.new(:LEX_ANC_LINE_END, val[0]) + Anchor.new(:LEX_ANC_LINE_BEGIN, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 151) def _reduce_85(val, _values) - Anchor.new(:LEX_ANC_WORD_BOUND, val[0]) + Anchor.new(:LEX_ANC_LINE_END, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 152) def _reduce_86(val, _values) - Anchor.new(:LEX_ANC_WORD_UNBOUND, val[0]) + Anchor.new(:LEX_ANC_WORD_BOUND, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 153) def _reduce_87(val, _values) - Anchor.new(:LEX_ANC_STRING_BEGIN, val[0]) + Anchor.new(:LEX_ANC_WORD_UNBOUND, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 154) def _reduce_88(val, _values) - Anchor.new(:LEX_ANC_STRING_END, val[0]) + Anchor.new(:LEX_ANC_STRING_BEGIN, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 155) def _reduce_89(val, _values) - Anchor.new(:LEX_ANC_STRING_END2, val[0]) + Anchor.new(:LEX_ANC_STRING_END, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 156) def _reduce_90(val, _values) - Anchor.new(:LEX_ANC_LOOK_BEHIND2, val[0]) + Anchor.new(:LEX_ANC_STRING_END2, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 157) def _reduce_91(val, _values) - Anchor.new(:LEX_ANC_MATCH_START, val[0]) + Anchor.new(:LEX_ANC_LOOK_BEHIND2, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 158) def _reduce_92(val, _values) - TLetter.new(:LEX_SPECIAL_LETTER, val[0]) + Anchor.new(:LEX_ANC_MATCH_START, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 159) def _reduce_93(val, _values) - TLetter.new(:LEX_CHAR, val[0]) + SpecialLetter.new(val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 160) def _reduce_94(val, _values) - TLetter.new(:LEX_AND_AND, val[0]) + TLetter.new(:LEX_CHAR, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 161) def _reduce_95(val, _values) - TEmpty.new + TLetter.new(:LEX_AND_AND, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 162) def _reduce_96(val, _values) @@ -1269,28 +1278,32 @@ end .,., module_eval(<<'.,.,', 'parser.y', 163) def _reduce_97(val, _values) - TLetter.new(:LEX_SIMPLE_ESCAPE, val[0]) + TEmpty.new end .,., module_eval(<<'.,.,', 'parser.y', 164) def _reduce_98(val, _values) - TLetter.new(:LEX_ANY_LETTER, val[0]) + TLetter.new(:LEX_SIMPLE_ESCAPE, val[0]) end .,., module_eval(<<'.,.,', 'parser.y', 165) def _reduce_99(val, _values) + TLetter.new(:LEX_ANY_LETTER, val[0]) + end +.,., + +module_eval(<<'.,.,', 'parser.y', 166) + def _reduce_100(val, _values) TEmpty.new end .,., -# reduce 100 omitted - # reduce 101 omitted # reduce 102 omitted # reduce 103 omitted @@ -1356,9 +1369,15 @@ # reduce 133 omitted # reduce 134 omitted # reduce 135 omitted + +# reduce 136 omitted + +# reduce 137 omitted + +# reduce 138 omitted def _reduce_none(val, _values) val[0] end