[Pkg-puppet-devel] [SCM] Puppet packaging for Debian branch, master, updated. debian/0.24.6-1-356-g5718585
James Turnbull
james at lovedthanlost.net
Fri Jan 23 14:21:17 UTC 2009
The following commit has been merged in the master branch:
commit 0c297be5dad784e305ef194cee29b11a92d31b6b
Author: Brice Figureau <brice-puppet at daysofwonder.com>
Date: Sat Oct 4 16:11:03 2008 +0200
Fix #1109 - allow empty if or else branches
This changesets allow empty if or else branches:
if true {
} else {
}
It works by emitting on the parser stack an AST node that doesn't
do anything (a no-op). This allows the less intrusive code
as no part of the if evaluation code has been touched.
diff --git a/lib/puppet/parser/ast.rb b/lib/puppet/parser/ast.rb
index 5aa9f52..ddf8852 100644
--- a/lib/puppet/parser/ast.rb
+++ b/lib/puppet/parser/ast.rb
@@ -91,6 +91,7 @@ require 'puppet/parser/ast/ifstatement'
require 'puppet/parser/ast/leaf'
require 'puppet/parser/ast/minus'
require 'puppet/parser/ast/node'
+require 'puppet/parser/ast/nop'
require 'puppet/parser/ast/not'
require 'puppet/parser/ast/resource'
require 'puppet/parser/ast/resource_defaults'
diff --git a/lib/puppet/parser/ast/nop.rb b/lib/puppet/parser/ast/nop.rb
new file mode 100644
index 0000000..ea52320
--- /dev/null
+++ b/lib/puppet/parser/ast/nop.rb
@@ -0,0 +1,11 @@
+require 'puppet/parser/ast/branch'
+
+class Puppet::Parser::AST
+ # This class is a no-op, it doesn't produce anything
+ # when evaluated, hence it's name :-)
+ class Nop < AST::Leaf
+ def evaluate(scope)
+ # nothing to do
+ end
+ end
+end
diff --git a/lib/puppet/parser/grammar.ra b/lib/puppet/parser/grammar.ra
index affcc00..7f07cc3 100644
--- a/lib/puppet/parser/grammar.ra
+++ b/lib/puppet/parser/grammar.ra
@@ -419,11 +419,26 @@ ifstatement: IF expression LBRACE statements RBRACE else {
result = ast AST::IfStatement, args
}
+ | IF expression LBRACE RBRACE else {
+ args = {
+ :test => val[1],
+ :statements => ast(AST::Nop)
+ }
+
+ if val[4]
+ args[:else] = val[4]
+ end
+
+ result = ast AST::IfStatement, args
+}
else: # nothing
| ELSE LBRACE statements RBRACE {
result = ast AST::Else, :statements => val[2]
}
+ | ELSE LBRACE RBRACE {
+ result = ast AST::Else, :statements => ast(AST::Nop)
+}
# Unlike yacc/bison, it seems racc
# gives tons of shift/reduce warnings
diff --git a/lib/puppet/parser/parser.rb b/lib/puppet/parser/parser.rb
index 3858d21..b025d52 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..id9567389388', 'grammar.ra', 717
+module_eval <<'..end grammar.ra modeval..idf5ced460e1', 'grammar.ra', 732
# It got too annoying having code in a file that needs to be compiled.
require 'puppet/parser/parser_support'
@@ -41,7 +41,7 @@ require 'puppet/parser/parser_support'
# $Id$
-..end grammar.ra modeval..id9567389388
+..end grammar.ra modeval..idf5ced460e1
##### racc 1.4.5 generates ###
@@ -154,39 +154,41 @@ racc_reduce_table = [
4, 88, :_reduce_105,
4, 88, :_reduce_106,
6, 69, :_reduce_107,
+ 5, 69, :_reduce_108,
0, 115, :_reduce_none,
- 4, 115, :_reduce_109,
+ 4, 115, :_reduce_110,
+ 3, 115, :_reduce_111,
1, 108, :_reduce_none,
- 3, 108, :_reduce_111,
- 3, 108, :_reduce_112,
3, 108, :_reduce_113,
3, 108, :_reduce_114,
3, 108, :_reduce_115,
3, 108, :_reduce_116,
- 2, 108, :_reduce_117,
+ 3, 108, :_reduce_117,
3, 108, :_reduce_118,
- 3, 108, :_reduce_119,
+ 2, 108, :_reduce_119,
3, 108, :_reduce_120,
3, 108, :_reduce_121,
3, 108, :_reduce_122,
3, 108, :_reduce_123,
- 2, 108, :_reduce_124,
+ 3, 108, :_reduce_124,
3, 108, :_reduce_125,
- 3, 108, :_reduce_126,
+ 2, 108, :_reduce_126,
3, 108, :_reduce_127,
- 5, 68, :_reduce_128,
+ 3, 108, :_reduce_128,
+ 3, 108, :_reduce_129,
+ 5, 68, :_reduce_130,
1, 116, :_reduce_none,
- 2, 116, :_reduce_130,
- 5, 117, :_reduce_131,
- 4, 117, :_reduce_132,
+ 2, 116, :_reduce_132,
+ 5, 117, :_reduce_133,
+ 4, 117, :_reduce_134,
1, 118, :_reduce_none,
- 3, 118, :_reduce_134,
- 3, 86, :_reduce_135,
+ 3, 118, :_reduce_136,
+ 3, 86, :_reduce_137,
1, 120, :_reduce_none,
- 4, 120, :_reduce_137,
+ 4, 120, :_reduce_139,
1, 122, :_reduce_none,
- 3, 122, :_reduce_139,
- 3, 121, :_reduce_140,
+ 3, 122, :_reduce_141,
+ 3, 121, :_reduce_142,
1, 119, :_reduce_none,
1, 119, :_reduce_none,
1, 119, :_reduce_none,
@@ -194,92 +196,92 @@ racc_reduce_table = [
1, 119, :_reduce_none,
1, 119, :_reduce_none,
1, 119, :_reduce_none,
- 1, 119, :_reduce_148,
- 1, 123, :_reduce_149,
- 3, 123, :_reduce_150,
- 2, 70, :_reduce_151,
- 6, 72, :_reduce_152,
- 5, 72, :_reduce_153,
- 6, 73, :_reduce_154,
- 5, 73, :_reduce_155,
- 6, 74, :_reduce_156,
- 5, 74, :_reduce_157,
+ 1, 119, :_reduce_150,
+ 1, 123, :_reduce_151,
+ 3, 123, :_reduce_152,
+ 2, 70, :_reduce_153,
+ 6, 72, :_reduce_154,
+ 5, 72, :_reduce_155,
+ 6, 73, :_reduce_156,
+ 5, 73, :_reduce_157,
+ 6, 74, :_reduce_158,
+ 5, 74, :_reduce_159,
1, 94, :_reduce_none,
1, 89, :_reduce_none,
1, 89, :_reduce_none,
1, 126, :_reduce_none,
- 3, 126, :_reduce_162,
+ 3, 126, :_reduce_164,
1, 128, :_reduce_none,
1, 128, :_reduce_none,
1, 128, :_reduce_none,
1, 128, :_reduce_none,
- 0, 62, :_reduce_167,
- 0, 129, :_reduce_168,
+ 0, 62, :_reduce_169,
+ 0, 129, :_reduce_170,
1, 124, :_reduce_none,
- 3, 124, :_reduce_170,
- 3, 124, :_reduce_171,
+ 3, 124, :_reduce_172,
+ 3, 124, :_reduce_173,
1, 130, :_reduce_none,
- 3, 130, :_reduce_173,
- 3, 131, :_reduce_174,
- 1, 131, :_reduce_175,
+ 3, 130, :_reduce_175,
3, 131, :_reduce_176,
1, 131, :_reduce_177,
+ 3, 131, :_reduce_178,
+ 1, 131, :_reduce_179,
1, 127, :_reduce_none,
- 2, 127, :_reduce_179,
+ 2, 127, :_reduce_181,
1, 125, :_reduce_none,
- 2, 125, :_reduce_181,
+ 2, 125, :_reduce_183,
1, 132, :_reduce_none,
1, 132, :_reduce_none,
- 1, 82, :_reduce_184,
- 3, 107, :_reduce_185,
- 2, 107, :_reduce_186,
+ 1, 82, :_reduce_186,
+ 3, 107, :_reduce_187,
+ 2, 107, :_reduce_188,
1, 114, :_reduce_none,
1, 114, :_reduce_none,
0, 93, :_reduce_none,
- 1, 93, :_reduce_190 ]
+ 1, 93, :_reduce_192 ]
-racc_reduce_n = 191
+racc_reduce_n = 193
-racc_shift_n = 314
+racc_shift_n = 317
racc_action_table = [
- 75, 54, 57, 270, 178, 39, 40, 283, 88, 237,
- 51, 178, 89, 213, 244, 282, 286, 198, 199, 245,
- 72, 75, 54, 57, 136, 90, 39, 40, 235, 236,
- 136, 45, 39, 40, 129, 56, 59, 235, 236, 66,
+ 75, 54, 57, 273, 178, 39, 40, 201, 88, 238,
+ 51, 178, 89, 213, 245, 8, 265, 198, 199, 246,
+ 72, 75, 54, 57, 136, 90, 39, 40, 236, 237,
+ 136, 45, 39, 40, 129, 56, 59, 236, 237, 66,
41, 72, 154, 44, 52, 76, 177, 162, 62, 92,
146, 84, 45, 75, 54, 57, 56, 59, 45, 126,
- 66, 41, 249, 167, 44, 52, 76, 41, -141, 62,
- 44, 138, 84, 72, 75, 54, 57, 288, 156, 157,
- 158, 144, 145, 147, 45, 201, 158, 144, 56, 59,
- 287, 233, 66, 8, 72, 154, 252, 52, 76, 232,
- 162, 62, 105, 146, 84, 45, 75, 54, 57, 56,
- 59, 45, -143, 66, 37, 244, 167, 37, 52, 76,
- 245, 4, 62, 256, 4, 84, 72, 75, 54, 57,
- 137, 156, 157, 158, 144, 145, 147, 45, 258, 197,
- 161, 56, 59, 198, 199, 66, 161, 72, 154, -145,
- 52, 76, 136, 162, 62, -146, 146, 84, 45, 75,
- 54, 57, 56, 59, 45, 51, 66, 37, 264, 167,
- 183, 52, 76, -142, 4, 62, 158, 144, 84, 72,
- 75, 54, 57, 267, 156, 157, 158, 144, 145, 147,
- 45, 178, 238, 188, 56, 59, 235, 236, 66, -142,
- 72, 154, 88, 52, 76, -144, 162, 62, -147, 146,
- 84, 45, 75, 54, 57, 56, 59, 45, -141, 66,
- 33, 34, 167, 135, 52, 76, 54, 57, 62, 198,
- 296, 84, 72, 75, 54, 57, -158, 156, 157, 158,
- 144, 145, 147, 45, -146, 229, 132, 56, 59, 198,
- 199, 66, -145, 72, 37, -143, 52, 76, 54, 57,
- 62, 4, 8, 84, 45, 269, 161, 172, 56, 59,
- 155, 108, 66, 156, 157, 158, 144, 52, 76, 150,
- 154, 62, 173, 105, 84, 89, 284, 285, 146, 148,
- 151, 153, -144, 174, 75, 54, 57, 156, 157, 158,
- 144, 145, 147, 156, 157, 158, 144, 145, 147, 100,
- 180, 188, 149, 152, 72, 184, 156, 157, 158, 144,
- 145, 147, 186, -141, 299, 45, 75, 54, 57, 56,
- 59, -141, -144, 66, 156, 157, 158, 144, 52, 76,
- -142, -146, 62, -143, 300, 84, 72, 75, 54, 57,
- 188, 71, 193, 191, 38, -143, 307, 45, -190, 308,
- 35, 56, 59, 189, -142, 66, -144, 72, nil, nil,
+ 66, 41, 250, 167, 44, 52, 76, 41, -146, 62,
+ 44, -143, 84, 72, 75, 54, 57, 291, 156, 157,
+ 158, 144, 145, 147, 45, 234, 253, 286, 56, 59,
+ 290, 162, 66, 233, 72, 285, 37, 52, 76, 158,
+ 144, 62, 45, 4, 84, 45, 154, 167, 37, 56,
+ 59, 155, 162, 66, 146, 4, 8, 37, 52, 76,
+ 150, 154, 62, 45, 4, 84, 158, 144, 167, 146,
+ 148, 151, 153, 105, 230, 75, 54, 57, 198, 199,
+ 33, 34, 156, 157, 158, 144, 145, 147, 156, 157,
+ 158, 144, 138, 149, 152, 72, 154, 156, 157, 158,
+ 144, 145, 147, 257, 146, 162, 45, 75, 54, 57,
+ 56, 59, 245, -145, 66, 37, 45, 246, 183, 52,
+ 76, 167, 4, 62, 54, 57, 84, 72, 75, 54,
+ 57, 259, 156, 157, 158, 144, 145, 147, 45, 161,
+ 239, 161, 56, 59, 236, 237, 66, 137, 72, 154,
+ 136, 52, 76, 198, 299, 62, -147, 146, 84, 45,
+ 75, 54, 57, 56, 59, 197, 51, 66, -144, 198,
+ 199, -148, 52, 76, 54, 57, 62, 268, 178, 84,
+ 72, 75, 54, 57, 188, 156, 157, 158, 144, 145,
+ 147, 45, -149, -144, 88, 56, 59, -146, -148, 66,
+ -143, 72, 135, -147, 52, 76, -160, 271, 62, -145,
+ 161, 84, 45, 75, 54, 57, 56, 59, 272, 172,
+ 66, 156, 157, 158, 144, 52, 76, 132, 173, 62,
+ 89, 108, 84, 72, 75, 54, 57, 156, 157, 158,
+ 144, 145, 147, 174, 45, 287, 288, 289, 56, 59,
+ 180, 105, 66, 100, 72, 188, 184, 52, 76, 186,
+ -143, 62, 271, 302, 84, 45, 75, 54, 57, 56,
+ 59, -143, -146, 66, -144, -148, -145, 303, 52, 76,
+ 188, -146, 62, 71, 193, 84, 72, 75, 54, 57,
+ 156, 157, 158, 144, 145, 147, 191, 45, 38, 310,
+ -192, 56, 59, -145, 35, 66, 189, 72, -144, nil,
52, 76, nil, nil, 62, nil, nil, 84, 45, 75,
54, 57, 56, 59, nil, nil, 66, nil, nil, nil,
nil, 52, 76, nil, nil, 62, nil, nil, 84, 72,
@@ -298,411 +300,433 @@ racc_action_table = [
56, 59, nil, nil, 66, nil, 72, nil, nil, 52,
76, nil, nil, 62, nil, nil, 84, 45, 75, 54,
57, 56, 59, nil, nil, 66, nil, nil, 45, nil,
- 52, 76, 56, 59, 62, nil, 66, 84, 72, nil,
- nil, 52, 75, 54, 57, 62, nil, nil, nil, 45,
+ 52, 76, 56, 116, 62, nil, 66, 84, 72, nil,
+ nil, 111, 75, 54, 57, 62, nil, nil, nil, 45,
nil, nil, nil, 56, 59, nil, nil, 66, 75, 54,
- 57, nil, 52, 76, nil, nil, 62, nil, nil, 84,
- nil, nil, nil, 45, 75, 54, 57, 56, 116, nil,
- nil, 66, nil, nil, nil, nil, 111, nil, nil, 45,
+ 57, 141, 52, 76, nil, nil, 62, nil, nil, 84,
+ nil, nil, nil, 45, 75, 54, 57, 56, 59, nil,
+ nil, 66, nil, nil, nil, nil, 52, nil, nil, 45,
62, nil, nil, 56, 59, nil, nil, 66, 75, 54,
- 57, 141, 52, nil, nil, 45, 62, nil, nil, 56,
+ 57, nil, 52, nil, nil, 45, 62, nil, nil, 56,
59, nil, nil, 66, 75, 54, 57, nil, 52, nil,
nil, nil, 62, nil, 75, 54, 57, nil, nil, 45,
75, 54, 57, 56, 59, nil, nil, 66, nil, nil,
nil, nil, 52, nil, nil, 45, 62, nil, nil, 56,
59, nil, nil, 66, nil, 45, nil, nil, 52, 56,
- 59, 45, 62, 66, nil, 56, 59, nil, 52, 66,
+ 195, 45, 62, 66, nil, 56, 59, nil, 111, 66,
nil, nil, 62, nil, 52, 75, 54, 57, 62, nil,
- nil, 75, 54, 57, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, 51, 54, 57, nil, nil,
- nil, 75, 54, 57, nil, nil, 45, nil, nil, nil,
- 56, 59, 45, nil, 66, 48, 56, 59, nil, 52,
- 66, 54, 57, 62, nil, 52, 45, 54, 57, 62,
- 56, 59, 45, nil, 66, nil, 56, 195, 49, 52,
- 66, 54, 57, 62, nil, 111, 75, 54, 57, 62,
- nil, 45, nil, nil, nil, 56, 195, 45, nil, 66,
- nil, 56, 195, nil, 111, 66, 54, 57, 62, nil,
- 111, 45, 54, 57, 62, 56, 195, 45, nil, 66,
- nil, 56, 59, nil, 111, 66, nil, nil, 62, nil,
- 52, 54, 57, nil, 62, 281, 45, 54, 57, nil,
- 56, 195, 45, nil, 66, nil, 56, 195, 49, 111,
- 66, 54, 57, 62, nil, 111, nil, 54, 57, 62,
- 208, 45, nil, nil, nil, 56, 195, 45, nil, 66,
- nil, 56, 195, nil, 111, 66, 54, 57, 62, nil,
- 111, 45, 54, 57, 62, 56, 195, 45, nil, 66,
- nil, 56, 195, nil, 111, 66, 131, nil, 62, nil,
- 111, nil, 203, nil, 62, nil, 45, nil, nil, nil,
- 56, 59, 45, nil, 66, nil, 56, 59, 49, 52,
- 66, 150, 154, 62, 49, 52, nil, nil, nil, 62,
+ nil, 51, 54, 57, nil, nil, nil, nil, nil, nil,
+ nil, 75, 54, 57, nil, nil, nil, 75, 54, 57,
+ nil, 48, nil, nil, nil, nil, 45, 75, 54, 57,
+ 56, 59, 45, nil, 66, nil, 56, 59, nil, 52,
+ 66, nil, 45, 62, 49, 52, 56, 59, 45, 62,
+ 66, nil, 56, 59, nil, 52, 66, nil, 45, 62,
+ nil, 52, 56, 59, nil, 62, 66, 54, 57, 54,
+ 57, 52, nil, nil, nil, 62, nil, nil, nil, nil,
+ nil, nil, nil, 54, 57, 54, 57, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, 45, nil, 45,
+ nil, 56, 195, 56, 195, 66, nil, 66, 54, 57,
+ 111, 49, 111, 45, 62, 45, 62, 56, 195, 56,
+ 195, 66, nil, 66, nil, nil, 111, nil, 111, nil,
+ 62, nil, 62, 54, 57, 54, 57, 284, 45, nil,
+ nil, nil, 56, 195, nil, nil, 66, nil, nil, 54,
+ 57, 111, 208, nil, nil, 62, 54, 57, nil, nil,
+ nil, nil, nil, 45, nil, 45, nil, 56, 195, 56,
+ 195, 66, nil, 66, nil, nil, 111, nil, 111, 45,
+ 62, nil, 62, 56, 195, nil, 45, 66, 54, 57,
+ 56, 195, 111, nil, 66, nil, 62, nil, nil, 111,
+ nil, nil, nil, 62, 54, 57, nil, nil, 131, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, 45, nil,
+ nil, nil, 56, 59, 203, nil, 66, nil, nil, nil,
+ 49, 52, nil, nil, 45, 62, nil, nil, 56, 59,
+ nil, nil, 66, 150, 154, nil, 49, 52, nil, nil,
+ nil, 62, 146, 148, 151, 153, 150, 154, nil, nil,
+ nil, nil, nil, nil, 212, 146, 148, 151, 153, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ 156, 157, 158, 144, 145, 147, nil, nil, nil, 149,
+ 152, 150, 154, 156, 157, 158, 144, 145, 147, nil,
146, 148, 151, 153, 150, 154, nil, nil, nil, nil,
- nil, nil, 212, 146, 148, 151, 153, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, 156, 157,
- 158, 144, 145, 147, nil, nil, nil, 149, 152, 150,
+ nil, nil, nil, 146, 148, 151, 153, nil, nil, nil,
+ nil, nil, nil, nil, 149, 152, nil, nil, 156, 157,
+ 158, 144, 145, 147, nil, nil, 296, nil, 152, 150,
154, 156, 157, 158, 144, 145, 147, nil, 146, 148,
- 151, 153, 150, 154, nil, nil, nil, nil, nil, nil,
- nil, 146, 148, 151, 153, nil, nil, nil, nil, nil,
- nil, nil, 149, 152, nil, nil, 156, 157, 158, 144,
- 145, 147, nil, nil, 293, nil, 152, 150, 154, 156,
- 157, 158, 144, 145, 147, nil, 146, 148, 151, 153,
- nil, nil, nil, nil, nil, 16, nil, 23, 27, 291,
- 1, 5, nil, 10, nil, 13, nil, 20, nil, 28,
- 149, 152, 4, 8, 156, 157, 158, 144, 145, 147,
- 16, 290, 23, 27, nil, 1, 5, nil, 10, nil,
- 13, nil, 20, nil, 28, nil, nil, 4, 8, nil,
- 268, nil, 16, nil, 23, 27, nil, 1, 5, nil,
+ 151, 153, nil, nil, nil, nil, nil, 16, nil, 23,
+ 27, 294, 1, 5, nil, 10, nil, 13, nil, 20,
+ nil, 28, 149, 152, 4, 8, 156, 157, 158, 144,
+ 145, 147, 16, 293, 23, 27, nil, 1, 5, nil,
10, nil, 13, nil, 20, nil, 28, nil, nil, 4,
- 8, 16, 305, 23, 27, nil, 1, 5, nil, 10,
- nil, 13, nil, 20, nil, 28, nil, nil, 4, 8,
- nil, 310, nil, 16, nil, 23, 27, nil, 1, 5,
- nil, 10, nil, 13, nil, 20, nil, 28, nil, nil,
- 4, 8, 16, 262, 23, 27, nil, 1, 5, nil,
- 10, nil, 13, nil, 20, nil, 28, nil, nil, 4,
- 8, nil, 312, nil, 16, nil, 23, 27, nil, 1,
+ 8, nil, 269, nil, 16, nil, 23, 27, nil, 1,
5, nil, 10, nil, 13, nil, 20, nil, 28, nil,
- nil, 4, 8, 16, 255, 23, 27, nil, 1, 5,
+ nil, 4, 8, 16, 226, 23, 27, nil, 1, 5,
nil, 10, nil, 13, nil, 20, nil, 28, nil, nil,
- 4, 8, nil, 313, nil, 16, nil, 23, 27, nil,
+ 4, 8, nil, 308, nil, 16, nil, 23, 27, nil,
1, 5, nil, 10, nil, 13, nil, 20, nil, 28,
- nil, nil, 4, 8, 16, nil, 23, 27, nil, 1,
+ nil, nil, 4, 8, 16, 312, 23, 27, nil, 1,
5, nil, 10, nil, 13, nil, 20, nil, 28, nil,
- nil, 4, 8, 16, nil, 23, 27, nil, 1, 5,
- nil, 10, nil, 13, nil, 20, nil, 28, nil, nil,
- 4, 8, 16, nil, 23, 27, nil, 1, 5, nil,
- 10, nil, 13, nil, 20, nil, 28, nil, nil, 4,
- 8, 16, nil, 23, 27, nil, 1, 5, nil, 10,
- nil, 13, nil, 20, nil, 28, nil, nil, 4, 8,
- 16, nil, 23, 27, nil, 1, 5, nil, 10, nil,
- 13, nil, 20, nil, 28, nil, nil, 4, 8 ]
+ nil, 4, 8, nil, 314, nil, 16, nil, 23, 27,
+ nil, 1, 5, nil, 10, nil, 13, nil, 20, nil,
+ 28, nil, nil, 4, 8, 16, 263, 23, 27, nil,
+ 1, 5, nil, 10, nil, 13, nil, 20, nil, 28,
+ nil, nil, 4, 8, nil, 315, nil, 16, nil, 23,
+ 27, nil, 1, 5, nil, 10, nil, 13, nil, 20,
+ nil, 28, nil, nil, 4, 8, 16, 256, 23, 27,
+ nil, 1, 5, nil, 10, nil, 13, nil, 20, nil,
+ 28, nil, nil, 4, 8, nil, 316, nil, 16, nil,
+ 23, 27, nil, 1, 5, nil, 10, nil, 13, nil,
+ 20, nil, 28, nil, nil, 4, 8, 16, nil, 23,
+ 27, nil, 1, 5, nil, 10, nil, 13, nil, 20,
+ nil, 28, nil, nil, 4, 8, 16, nil, 23, 27,
+ nil, 1, 5, nil, 10, nil, 13, nil, 20, nil,
+ 28, nil, nil, 4, 8, 16, nil, 23, 27, nil,
+ 1, 5, nil, 10, nil, 13, nil, 20, nil, 28,
+ nil, nil, 4, 8 ]
racc_action_check = [
- 33, 33, 33, 231, 105, 129, 129, 241, 17, 170,
- 59, 116, 17, 140, 174, 241, 246, 140, 140, 174,
- 33, 158, 158, 158, 116, 17, 10, 10, 231, 231,
- 59, 33, 126, 126, 42, 33, 33, 170, 170, 33,
- 129, 158, 220, 129, 33, 33, 105, 90, 33, 17,
- 220, 33, 158, 144, 144, 144, 158, 158, 90, 42,
- 158, 10, 175, 90, 10, 158, 158, 126, 77, 158,
- 126, 71, 158, 144, 76, 76, 76, 247, 220, 220,
- 220, 220, 220, 220, 144, 135, 227, 227, 144, 144,
- 247, 165, 144, 135, 76, 223, 179, 144, 144, 165,
- 92, 144, 180, 223, 144, 76, 145, 145, 145, 76,
- 76, 92, 70, 76, 5, 288, 92, 27, 76, 76,
- 288, 5, 76, 185, 27, 76, 145, 72, 72, 72,
- 68, 223, 223, 223, 223, 223, 223, 145, 187, 134,
- 188, 145, 145, 134, 134, 145, 189, 72, 221, 67,
- 145, 145, 195, 162, 145, 65, 221, 145, 72, 154,
- 154, 154, 72, 72, 162, 201, 72, 108, 202, 162,
- 108, 72, 72, 63, 108, 72, 226, 226, 72, 154,
- 84, 84, 84, 209, 221, 221, 221, 221, 221, 221,
- 154, 161, 171, 160, 154, 154, 171, 171, 154, 79,
- 84, 218, 61, 154, 154, 60, 234, 154, 80, 218,
- 154, 84, 16, 16, 16, 84, 84, 234, 58, 84,
- 1, 1, 234, 53, 84, 84, 23, 23, 84, 266,
- 266, 84, 16, 146, 146, 146, 52, 218, 218, 218,
- 218, 218, 218, 16, 81, 159, 50, 16, 16, 159,
- 159, 16, 82, 146, 24, 87, 16, 16, 173, 173,
- 16, 24, 24, 16, 146, 230, 89, 94, 146, 146,
- 85, 36, 146, 217, 217, 217, 217, 146, 146, 85,
- 85, 146, 95, 35, 146, 97, 244, 245, 85, 85,
- 85, 85, 78, 99, 153, 153, 153, 224, 224, 224,
- 224, 224, 224, 216, 216, 216, 216, 216, 216, 28,
- 106, 260, 85, 85, 153, 109, 85, 85, 85, 85,
- 85, 85, 112, 113, 268, 153, 152, 152, 152, 153,
- 153, 271, 273, 153, 215, 215, 215, 215, 153, 153,
- 274, 275, 153, 277, 282, 153, 152, 147, 147, 147,
- 114, 15, 130, 127, 6, 125, 295, 152, 296, 299,
- 2, 152, 152, 119, 118, 152, 115, 147, nil, nil,
- 152, 152, nil, nil, 152, nil, nil, 152, 147, 148,
- 148, 148, 147, 147, nil, nil, 147, nil, nil, nil,
- nil, 147, 147, nil, nil, 147, nil, nil, 147, 148,
+ 158, 158, 158, 232, 105, 129, 129, 135, 17, 170,
+ 59, 116, 17, 140, 174, 135, 202, 140, 140, 174,
+ 158, 84, 84, 84, 116, 17, 10, 10, 232, 232,
+ 59, 158, 126, 126, 42, 158, 158, 170, 170, 158,
+ 129, 84, 221, 129, 158, 158, 105, 162, 158, 17,
+ 221, 158, 84, 144, 144, 144, 84, 84, 162, 42,
+ 84, 10, 175, 162, 10, 84, 84, 126, 78, 84,
+ 126, 77, 84, 144, 145, 145, 145, 248, 221, 221,
+ 221, 221, 221, 221, 144, 165, 179, 242, 144, 144,
+ 248, 92, 144, 165, 145, 242, 5, 144, 144, 227,
+ 227, 144, 92, 5, 144, 145, 223, 92, 24, 145,
+ 145, 85, 90, 145, 223, 24, 24, 27, 145, 145,
+ 85, 85, 145, 90, 27, 145, 228, 228, 90, 85,
+ 85, 85, 85, 180, 159, 146, 146, 146, 159, 159,
+ 1, 1, 223, 223, 223, 223, 223, 223, 217, 217,
+ 217, 217, 71, 85, 85, 146, 218, 85, 85, 85,
+ 85, 85, 85, 185, 218, 235, 146, 157, 157, 157,
+ 146, 146, 291, 70, 146, 108, 235, 291, 108, 146,
+ 146, 235, 108, 146, 23, 23, 146, 157, 154, 154,
+ 154, 187, 218, 218, 218, 218, 218, 218, 157, 188,
+ 171, 189, 157, 157, 171, 171, 157, 68, 154, 220,
+ 195, 157, 157, 267, 267, 157, 67, 220, 157, 154,
+ 16, 16, 16, 154, 154, 134, 201, 154, 79, 134,
+ 134, 65, 154, 154, 173, 173, 154, 209, 161, 154,
+ 16, 147, 147, 147, 160, 220, 220, 220, 220, 220,
+ 220, 16, 80, 63, 61, 16, 16, 60, 81, 16,
+ 58, 147, 53, 82, 16, 16, 52, 226, 16, 87,
+ 89, 16, 147, 153, 153, 153, 147, 147, 231, 94,
+ 147, 215, 215, 215, 215, 147, 147, 50, 95, 147,
+ 97, 36, 147, 153, 152, 152, 152, 224, 224, 224,
+ 224, 224, 224, 99, 153, 245, 246, 247, 153, 153,
+ 106, 35, 153, 28, 152, 261, 109, 153, 153, 112,
+ 113, 153, 269, 271, 153, 152, 76, 76, 76, 152,
+ 152, 274, 276, 152, 277, 278, 280, 285, 152, 152,
+ 114, 115, 152, 15, 130, 152, 76, 151, 151, 151,
+ 216, 216, 216, 216, 216, 216, 127, 76, 6, 298,
+ 299, 76, 76, 125, 2, 76, 119, 151, 118, nil,
+ 76, 76, nil, nil, 76, nil, nil, 76, 151, 148,
+ 148, 148, 151, 151, nil, nil, 151, nil, nil, nil,
+ nil, 151, 151, nil, nil, 151, nil, nil, 151, 148,
149, 149, 149, nil, nil, nil, nil, nil, nil, nil,
148, nil, nil, nil, 148, 148, nil, nil, 148, nil,
149, nil, nil, 148, 148, nil, nil, 148, nil, nil,
- 148, 149, 156, 156, 156, 149, 149, nil, nil, 149,
+ 148, 149, 72, 72, 72, 149, 149, nil, nil, 149,
nil, nil, nil, nil, 149, 149, nil, nil, 149, nil,
- nil, 149, 156, 34, 34, 34, nil, nil, nil, nil,
- nil, nil, nil, 156, nil, nil, nil, 156, 156, nil,
- nil, 156, nil, 34, nil, nil, 156, 156, nil, nil,
- 156, nil, nil, 156, 34, 151, 151, 151, 34, 34,
+ nil, 149, 72, 34, 34, 34, nil, nil, nil, nil,
+ nil, nil, nil, 72, nil, nil, nil, 72, 72, nil,
+ nil, 72, nil, 34, nil, nil, 72, 72, nil, nil,
+ 72, nil, nil, 72, 34, 150, 150, 150, 34, 34,
nil, nil, 34, nil, nil, nil, nil, 34, 34, nil,
- nil, 34, nil, nil, 34, 151, 150, 150, 150, nil,
- nil, nil, nil, nil, nil, nil, 151, 196, 196, 196,
- 151, 151, nil, nil, 151, nil, 150, nil, nil, 151,
- 151, nil, nil, 151, nil, nil, 151, 150, 157, 157,
- 157, 150, 150, nil, nil, 150, nil, nil, 196, nil,
- 150, 150, 196, 196, 150, nil, 196, 150, 157, nil,
- nil, 196, 38, 38, 38, 196, nil, nil, nil, 157,
- nil, nil, nil, 157, 157, nil, nil, 157, 177, 177,
- 177, nil, 157, 157, nil, nil, 157, nil, nil, 157,
- nil, nil, nil, 38, 51, 51, 51, 38, 38, nil,
- nil, 38, nil, nil, nil, nil, 38, nil, nil, 177,
- 38, nil, nil, 177, 177, nil, nil, 177, 75, 75,
- 75, 75, 177, nil, nil, 51, 177, nil, nil, 51,
- 51, nil, nil, 51, 267, 267, 267, nil, 51, nil,
- nil, nil, 51, nil, 88, 88, 88, nil, nil, 75,
- 285, 285, 285, 75, 75, nil, nil, 75, nil, nil,
- nil, nil, 75, nil, nil, 267, 75, nil, nil, 267,
- 267, nil, nil, 267, nil, 88, nil, nil, 267, 88,
- 88, 285, 267, 88, nil, 285, 285, nil, 88, 285,
- nil, nil, 88, nil, 285, 20, 20, 20, 285, nil,
- nil, 178, 178, 178, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, 13, 13, 13, nil, nil,
- nil, 186, 186, 186, nil, nil, 20, nil, nil, nil,
- 20, 20, 178, nil, 20, 13, 178, 178, nil, 20,
- 178, 232, 232, 20, nil, 178, 13, 208, 208, 178,
- 13, 13, 186, nil, 13, nil, 186, 186, 13, 13,
- 186, 283, 283, 13, nil, 186, 284, 284, 284, 186,
- nil, 232, nil, nil, nil, 232, 232, 208, nil, 232,
- nil, 208, 208, nil, 232, 208, 132, 132, 232, nil,
- 208, 283, 294, 294, 208, 283, 283, 284, nil, 283,
- nil, 284, 284, nil, 283, 284, nil, nil, 283, nil,
- 284, 239, 239, nil, 284, 239, 132, 233, 233, nil,
- 132, 132, 294, nil, 132, nil, 294, 294, 132, 132,
- 294, 172, 172, 132, nil, 294, nil, 137, 137, 294,
- 137, 239, nil, nil, nil, 239, 239, 233, nil, 239,
- nil, 233, 233, nil, 239, 233, 48, 48, 239, nil,
- 233, 172, 136, 136, 233, 172, 172, 137, nil, 172,
- nil, 137, 137, nil, 172, 137, 48, nil, 172, nil,
- 137, nil, 136, nil, 137, nil, 48, nil, nil, nil,
- 48, 48, 136, nil, 48, nil, 136, 136, 48, 48,
- 136, 222, 222, 48, 136, 136, nil, nil, nil, 136,
- 222, 222, 222, 222, 139, 139, nil, nil, nil, nil,
- nil, nil, 139, 139, 139, 139, 139, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, 222, 222,
- 222, 222, 222, 222, nil, nil, nil, 139, 139, 101,
- 101, 139, 139, 139, 139, 139, 139, nil, 101, 101,
- 101, 101, 219, 219, nil, nil, nil, nil, nil, nil,
- nil, 219, 219, 219, 219, nil, nil, nil, nil, nil,
- nil, nil, 101, 101, nil, nil, 101, 101, 101, 101,
- 101, 101, nil, nil, 261, nil, 219, 102, 102, 219,
- 219, 219, 219, 219, 219, nil, 102, 102, 102, 102,
- nil, nil, nil, nil, nil, 261, nil, 261, 261, 254,
- 261, 261, nil, 261, nil, 261, nil, 261, nil, 261,
- 102, 102, 261, 261, 102, 102, 102, 102, 102, 102,
- 254, 249, 254, 254, nil, 254, 254, nil, 254, nil,
- 254, nil, 254, nil, 254, nil, nil, 254, 254, nil,
- 225, nil, 249, nil, 249, 249, nil, 249, 249, nil,
- 249, nil, 249, nil, 249, nil, 249, nil, nil, 249,
- 249, 225, 289, 225, 225, nil, 225, 225, nil, 225,
- nil, 225, nil, 225, nil, 225, nil, nil, 225, 225,
- nil, 300, nil, 289, nil, 289, 289, nil, 289, 289,
- nil, 289, nil, 289, nil, 289, nil, 289, nil, nil,
- 289, 289, 300, 191, 300, 300, nil, 300, 300, nil,
- 300, nil, 300, nil, 300, nil, 300, nil, nil, 300,
- 300, nil, 309, nil, 191, nil, 191, 191, nil, 191,
- 191, nil, 191, nil, 191, nil, 191, nil, 191, nil,
- nil, 191, 191, 309, 184, 309, 309, nil, 309, 309,
- nil, 309, nil, 309, nil, 309, nil, 309, nil, nil,
- 309, 309, nil, 311, nil, 184, nil, 184, 184, nil,
- 184, 184, nil, 184, nil, 184, nil, 184, nil, 184,
- nil, nil, 184, 184, 311, nil, 311, 311, nil, 311,
- 311, nil, 311, nil, 311, nil, 311, nil, 311, nil,
- nil, 311, 311, 308, nil, 308, 308, nil, 308, 308,
- nil, 308, nil, 308, nil, 308, nil, 308, nil, nil,
- 308, 308, 155, nil, 155, 155, nil, 155, 155, nil,
- 155, nil, 155, nil, 155, nil, 155, nil, nil, 155,
- 155, 19, nil, 19, 19, nil, 19, 19, nil, 19,
- nil, 19, nil, 19, nil, 19, nil, nil, 19, 19,
- 0, nil, 0, 0, nil, 0, 0, nil, 0, nil,
- 0, nil, 0, nil, 0, nil, nil, 0, 0 ]
+ nil, 34, nil, nil, 34, 150, 156, 156, 156, nil,
+ nil, nil, nil, nil, nil, nil, 150, 38, 38, 38,
+ 150, 150, nil, nil, 150, nil, 156, nil, nil, 150,
+ 150, nil, nil, 150, nil, nil, 150, 156, 33, 33,
+ 33, 156, 156, nil, nil, 156, nil, nil, 38, nil,
+ 156, 156, 38, 38, 156, nil, 38, 156, 33, nil,
+ nil, 38, 196, 196, 196, 38, nil, nil, nil, 33,
+ nil, nil, nil, 33, 33, nil, nil, 33, 75, 75,
+ 75, 75, 33, 33, nil, nil, 33, nil, nil, 33,
+ nil, nil, nil, 196, 51, 51, 51, 196, 196, nil,
+ nil, 196, nil, nil, nil, nil, 196, nil, nil, 75,
+ 196, nil, nil, 75, 75, nil, nil, 75, 268, 268,
+ 268, nil, 75, nil, nil, 51, 75, nil, nil, 51,
+ 51, nil, nil, 51, 20, 20, 20, nil, 51, nil,
+ nil, nil, 51, nil, 186, 186, 186, nil, nil, 268,
+ 287, 287, 287, 268, 268, nil, nil, 268, nil, nil,
+ nil, nil, 268, nil, nil, 20, 268, nil, nil, 20,
+ 20, nil, nil, 20, nil, 186, nil, nil, 20, 186,
+ 186, 287, 20, 186, nil, 287, 287, nil, 186, 287,
+ nil, nil, 186, nil, 287, 288, 288, 288, 287, nil,
+ nil, 13, 13, 13, nil, nil, nil, nil, nil, nil,
+ nil, 178, 178, 178, nil, nil, nil, 177, 177, 177,
+ nil, 13, nil, nil, nil, nil, 288, 88, 88, 88,
+ 288, 288, 13, nil, 288, nil, 13, 13, nil, 288,
+ 13, nil, 178, 288, 13, 13, 178, 178, 177, 13,
+ 178, nil, 177, 177, nil, 178, 177, nil, 88, 178,
+ nil, 177, 88, 88, nil, 177, 88, 208, 208, 132,
+ 132, 88, nil, nil, nil, 88, nil, nil, nil, nil,
+ nil, nil, nil, 233, 233, 234, 234, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, 208, nil, 132,
+ nil, 208, 208, 132, 132, 208, nil, 132, 286, 286,
+ 208, 132, 132, 233, 208, 234, 132, 233, 233, 234,
+ 234, 233, nil, 234, nil, nil, 233, nil, 234, nil,
+ 233, nil, 234, 240, 240, 297, 297, 240, 286, nil,
+ nil, nil, 286, 286, nil, nil, 286, nil, nil, 137,
+ 137, 286, 137, nil, nil, 286, 172, 172, nil, nil,
+ nil, nil, nil, 240, nil, 297, nil, 240, 240, 297,
+ 297, 240, nil, 297, nil, nil, 240, nil, 297, 137,
+ 240, nil, 297, 137, 137, nil, 172, 137, 48, 48,
+ 172, 172, 137, nil, 172, nil, 137, nil, nil, 172,
+ nil, nil, nil, 172, 136, 136, nil, nil, 48, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, 48, nil,
+ nil, nil, 48, 48, 136, nil, 48, nil, nil, nil,
+ 48, 48, nil, nil, 136, 48, nil, nil, 136, 136,
+ nil, nil, 136, 222, 222, nil, 136, 136, nil, nil,
+ nil, 136, 222, 222, 222, 222, 139, 139, nil, nil,
+ nil, nil, nil, nil, 139, 139, 139, 139, 139, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ 222, 222, 222, 222, 222, 222, nil, nil, nil, 139,
+ 139, 102, 102, 139, 139, 139, 139, 139, 139, nil,
+ 102, 102, 102, 102, 219, 219, nil, nil, nil, nil,
+ nil, nil, nil, 219, 219, 219, 219, nil, nil, nil,
+ nil, nil, nil, nil, 102, 102, nil, nil, 102, 102,
+ 102, 102, 102, 102, nil, nil, 262, nil, 219, 101,
+ 101, 219, 219, 219, 219, 219, 219, nil, 101, 101,
+ 101, 101, nil, nil, nil, nil, nil, 262, nil, 262,
+ 262, 255, 262, 262, nil, 262, nil, 262, nil, 262,
+ nil, 262, 101, 101, 262, 262, 101, 101, 101, 101,
+ 101, 101, 255, 250, 255, 255, nil, 255, 255, nil,
+ 255, nil, 255, nil, 255, nil, 255, nil, nil, 255,
+ 255, nil, 225, nil, 250, nil, 250, 250, nil, 250,
+ 250, nil, 250, nil, 250, nil, 250, nil, 250, nil,
+ nil, 250, 250, 225, 155, 225, 225, nil, 225, 225,
+ nil, 225, nil, 225, nil, 225, nil, 225, nil, nil,
+ 225, 225, nil, 292, nil, 155, nil, 155, 155, nil,
+ 155, 155, nil, 155, nil, 155, nil, 155, nil, 155,
+ nil, nil, 155, 155, 292, 302, 292, 292, nil, 292,
+ 292, nil, 292, nil, 292, nil, 292, nil, 292, nil,
+ nil, 292, 292, nil, 303, nil, 302, nil, 302, 302,
+ nil, 302, 302, nil, 302, nil, 302, nil, 302, nil,
+ 302, nil, nil, 302, 302, 303, 191, 303, 303, nil,
+ 303, 303, nil, 303, nil, 303, nil, 303, nil, 303,
+ nil, nil, 303, 303, nil, 311, nil, 191, nil, 191,
+ 191, nil, 191, 191, nil, 191, nil, 191, nil, 191,
+ nil, 191, nil, nil, 191, 191, 311, 184, 311, 311,
+ nil, 311, 311, nil, 311, nil, 311, nil, 311, nil,
+ 311, nil, nil, 311, 311, nil, 313, nil, 184, nil,
+ 184, 184, nil, 184, 184, nil, 184, nil, 184, nil,
+ 184, nil, 184, nil, nil, 184, 184, 313, nil, 313,
+ 313, nil, 313, 313, nil, 313, nil, 313, nil, 313,
+ nil, 313, nil, nil, 313, 313, 0, nil, 0, 0,
+ nil, 0, 0, nil, 0, nil, 0, nil, 0, nil,
+ 0, nil, nil, 0, 0, 19, nil, 19, 19, nil,
+ 19, 19, nil, 19, nil, 19, nil, 19, nil, 19,
+ nil, nil, 19, 19 ]
racc_action_pointer = [
- 1252, 207, 354, nil, nil, 76, 348, nil, nil, nil,
- 23, nil, nil, 713, nil, 351, 210, 6, nil, 1233,
- 693, nil, nil, 223, 216, nil, nil, 79, 267, nil,
- nil, nil, nil, -2, 451, 245, 236, nil, 560, nil,
- nil, nil, 24, nil, nil, nil, nil, nil, 853, nil,
- 236, 592, 234, 213, nil, nil, nil, nil, 197, 8,
- 184, 200, nil, 152, nil, 134, nil, 128, 109, nil,
- 91, 71, 125, nil, nil, 616, 72, 47, 271, 178,
- 187, 223, 231, nil, 178, 264, nil, 234, 642, 228,
- 25, nil, 78, nil, 261, 272, nil, 279, nil, 271,
- nil, 934, 982, nil, nil, -5, 300, nil, 129, 309,
- nil, nil, 283, 302, 340, 345, 2, nil, 343, 345,
- nil, nil, nil, nil, nil, 334, 29, 347, nil, 2,
- 329, nil, 783, nil, 134, 47, 859, 834, nil, 899,
- 8, nil, nil, nil, 51, 104, 231, 345, 377, 398,
- 504, 483, 324, 292, 157, 1214, 430, 536, 19, 240,
- 183, 182, 131, nil, nil, 75, nil, nil, nil, nil,
- -11, 148, 828, 255, -19, 56, nil, 576, 699, 89,
- 64, nil, nil, nil, 1157, 116, 719, 131, 102, 108,
- nil, 1116, nil, nil, nil, 130, 515, nil, nil, nil,
- nil, 163, 145, nil, nil, nil, nil, nil, 744, 174,
- nil, nil, nil, nil, nil, 282, 251, 221, 185, 947,
- 26, 132, 886, 79, 245, 1053, 122, 32, nil, nil,
- 258, -20, 738, 814, 184, nil, nil, nil, nil, 808,
- nil, -3, nil, nil, 273, 274, -7, 67, nil, 1034,
- nil, nil, nil, nil, 1012, nil, nil, nil, nil, nil,
- 301, 987, nil, nil, nil, nil, 220, 632, 295, nil,
- nil, 310, nil, 311, 319, 320, nil, 322, nil, nil,
- nil, nil, 338, 758, 764, 648, nil, nil, 82, 1075,
- nil, nil, nil, nil, 789, 349, 351, nil, nil, 353,
- 1094, nil, nil, nil, nil, nil, nil, nil, 1195, 1135,
- nil, 1176, nil, nil ]
+ 1278, 127, 358, nil, nil, 58, 352, nil, nil, nil,
+ 23, nil, nil, 699, nil, 343, 218, 6, nil, 1297,
+ 632, nil, nil, 181, 70, nil, nil, 79, 271, nil,
+ nil, nil, nil, 536, 451, 273, 256, nil, 515, nil,
+ nil, nil, 24, nil, nil, nil, nil, nil, 885, nil,
+ 277, 592, 264, 252, nil, nil, nil, nil, 239, 8,
+ 236, 252, nil, 232, nil, 210, nil, 195, 186, nil,
+ 152, 152, 430, nil, nil, 576, 324, 50, 47, 207,
+ 231, 237, 242, nil, 19, 105, nil, 248, 725, 232,
+ 90, nil, 69, nil, 273, 278, nil, 284, nil, 281,
+ nil, 1024, 976, nil, nil, -5, 300, nil, 137, 310,
+ nil, nil, 280, 299, 330, 320, 2, nil, 347, 348,
+ nil, nil, nil, nil, nil, 342, 29, 350, nil, 2,
+ 321, nil, 766, nil, 220, -31, 901, 846, nil, 941,
+ 8, nil, nil, nil, 51, 72, 133, 239, 377, 398,
+ 483, 345, 292, 271, 186, 1117, 504, 165, -2, 129,
+ 234, 229, 25, nil, nil, 69, nil, nil, nil, nil,
+ -11, 156, 853, 231, -19, 56, nil, 715, 709, 79,
+ 95, nil, nil, nil, 1240, 156, 642, 184, 161, 163,
+ nil, 1199, nil, nil, nil, 188, 560, nil, nil, nil,
+ nil, 224, -7, nil, nil, nil, nil, nil, 764, 228,
+ nil, nil, nil, nil, nil, 229, 298, 96, 140, 989,
+ 193, 26, 928, 90, 245, 1095, 238, 45, 72, nil,
+ nil, 271, -20, 780, 782, 143, nil, nil, nil, nil,
+ 830, nil, 77, nil, nil, 292, 293, 284, 67, nil,
+ 1076, nil, nil, nil, nil, 1054, nil, nil, nil, nil,
+ nil, 305, 1029, nil, nil, nil, nil, 204, 616, 293,
+ nil, 317, nil, nil, 310, nil, 311, 313, 314, nil,
+ 315, nil, nil, nil, nil, 331, 805, 648, 693, nil,
+ nil, 139, 1136, nil, nil, nil, nil, 832, 352, 353,
+ nil, nil, 1158, 1177, nil, nil, nil, nil, nil, nil,
+ nil, 1218, nil, 1259, nil, nil, nil ]
racc_action_default = [
- -167, -191, -191, -7, -160, -191, -191, -8, -158, -9,
- -191, -10, -11, -159, -12, -191, -191, -191, -13, -1,
- -191, -14, -2, -191, -191, -15, -3, -191, -40, -16,
- -5, -17, -6, -191, -191, -79, -167, -159, -72, -165,
- -164, -163, -167, -161, -166, -184, -33, -20, -191, -32,
- -21, -191, -63, -22, -102, -23, -104, -103, -25, -62,
- -26, -191, -61, -27, -147, -28, -148, -29, -191, -30,
- -31, -191, -191, -110, -97, -191, -191, -91, -95, -92,
- -99, -93, -98, -96, -191, -191, -94, -90, -191, -72,
- -167, -42, -167, -4, -191, -151, -149, -191, -39, -167,
- -41, -70, -71, -78, -80, -191, -189, -77, -191, -191,
- -180, -63, -59, -65, -189, -68, -62, -57, -66, -191,
- -146, -145, -69, -67, -73, -64, -191, -191, -178, -191,
- -191, -19, -191, -82, -191, -191, -191, -191, 314, -191,
- -191, -186, -124, -117, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -189, -191, -167, -46, -48, -191, -55, -62, -54, -45,
- -191, -191, -191, -191, -168, -191, -169, -191, -191, -191,
- -190, -181, -182, -183, -191, -191, -60, -191, -190, -72,
- -179, -191, -162, -18, -24, -62, -191, -105, -187, -188,
- -34, -191, -191, -101, -136, -141, -144, -142, -191, -191,
- -143, -135, -127, -185, -113, -115, -119, -116, -121, -126,
- -123, -120, -125, -122, -118, -191, -111, -112, -114, -106,
- -191, -191, -191, -191, -191, -51, -50, -44, -43, -191,
- -129, -191, -133, -150, -177, -175, -191, -191, -172, -191,
- -76, -75, -38, -81, -191, -155, -35, -58, -36, -74,
- -189, -191, -157, -83, -100, -138, -189, -191, -108, -37,
- -49, -85, -52, -89, -86, -87, -88, -84, -53, -47,
- -130, -128, -191, -191, -191, -191, -170, -171, -191, -191,
- -153, -154, -56, -156, -191, -191, -188, -140, -107, -191,
- -191, -134, -176, -174, -173, -152, -139, -137, -191, -191,
- -132, -191, -131, -109 ]
+ -169, -193, -193, -7, -162, -193, -193, -8, -160, -9,
+ -193, -10, -11, -161, -12, -193, -193, -193, -13, -1,
+ -193, -14, -2, -193, -193, -15, -3, -193, -40, -16,
+ -5, -17, -6, -193, -193, -79, -169, -161, -72, -167,
+ -166, -165, -169, -163, -168, -186, -33, -20, -193, -32,
+ -21, -193, -63, -22, -102, -23, -104, -103, -25, -62,
+ -26, -193, -61, -27, -149, -28, -150, -29, -193, -30,
+ -31, -193, -193, -112, -97, -193, -193, -91, -95, -92,
+ -99, -93, -98, -96, -193, -193, -94, -90, -193, -72,
+ -169, -42, -169, -4, -193, -153, -151, -193, -39, -169,
+ -41, -70, -71, -78, -80, -193, -191, -77, -193, -193,
+ -182, -63, -59, -65, -191, -68, -62, -57, -66, -193,
+ -148, -147, -69, -67, -73, -64, -193, -193, -180, -193,
+ -193, -19, -193, -82, -193, -193, -193, -193, 317, -193,
+ -193, -188, -126, -119, -193, -193, -193, -193, -193, -193,
+ -193, -193, -193, -193, -193, -193, -193, -193, -193, -193,
+ -191, -193, -169, -46, -48, -193, -55, -62, -54, -45,
+ -193, -193, -193, -193, -170, -193, -171, -193, -193, -193,
+ -192, -183, -184, -185, -193, -193, -60, -193, -192, -72,
+ -181, -193, -164, -18, -24, -62, -193, -105, -189, -190,
+ -34, -193, -193, -101, -138, -143, -146, -144, -193, -193,
+ -145, -137, -129, -187, -115, -117, -121, -118, -123, -128,
+ -125, -122, -127, -124, -120, -193, -109, -113, -114, -116,
+ -106, -193, -193, -193, -193, -193, -51, -50, -44, -43,
+ -193, -131, -193, -135, -152, -179, -177, -193, -193, -174,
+ -193, -76, -75, -38, -81, -193, -157, -35, -58, -36,
+ -74, -191, -193, -159, -83, -100, -140, -191, -193, -109,
+ -108, -193, -37, -49, -85, -52, -89, -86, -87, -88,
+ -84, -53, -47, -132, -130, -193, -193, -193, -193, -172,
+ -173, -193, -193, -155, -156, -56, -158, -193, -193, -190,
+ -142, -107, -193, -193, -136, -178, -176, -175, -154, -141,
+ -139, -193, -111, -193, -134, -110, -133 ]
racc_goto_table = [
- 2, 70, 19, 122, 17, 93, 47, 104, 117, 107,
- 179, 96, 209, 46, 204, 43, 36, 240, 187, 2,
- 15, 134, 114, 17, 64, 248, 125, 279, 97, 22,
- 170, 91, 171, 272, 278, 294, 70, 298, 99, 239,
- 106, 130, 185, 211, 63, 140, 112, 242, 46, 64,
- 266, 95, 175, 58, 109, 42, 127, 194, 159, 64,
- 246, 247, 98, 181, 230, 110, nil, nil, nil, 118,
- nil, 128, nil, 160, nil, nil, nil, nil, 113, 63,
- nil, nil, nil, 209, 280, 265, nil, 69, 58, nil,
+ 2, 179, 93, 17, 209, 43, 19, 204, 47, 187,
+ 249, 122, 104, 46, 36, 70, 22, 114, 107, 2,
+ 241, 170, 17, 171, 117, 96, 270, 97, 15, 134,
+ 275, 281, 282, 297, 91, 240, 99, 106, 185, 243,
+ 125, 211, 112, 130, 267, 95, 64, 175, 46, 109,
+ 70, 42, 110, 140, 127, 231, 194, 247, 128, 67,
+ 248, 98, 181, nil, nil, nil, 159, nil, 160, 301,
+ 69, 64, nil, nil, nil, 209, nil, nil, 266, nil,
+ nil, 64, nil, nil, 121, nil, nil, nil, 283, nil,
+ nil, nil, nil, 232, 67, 123, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, 69, nil, 243, nil, nil,
+ nil, 94, nil, nil, nil, 176, nil, 182, nil, nil,
+ nil, 190, nil, nil, 192, 65, nil, 307, nil, nil,
+ nil, 202, nil, nil, 70, 200, 46, nil, 70, 210,
+ nil, nil, 133, nil, nil, nil, nil, nil, nil, nil,
+ 120, nil, nil, 304, nil, 2, 295, 254, 17, 122,
+ 65, 225, 298, 107, 209, 64, 133, 309, 261, 64,
+ 64, 260, 258, nil, 210, 244, nil, nil, 67, 133,
+ nil, nil, 67, 121, 2, nil, nil, 17, 125, 69,
+ 255, 2, nil, 69, 17, nil, nil, 262, nil, 60,
+ nil, nil, 63, nil, nil, 64, nil, nil, 93, nil,
+ 210, nil, nil, nil, nil, nil, nil, nil, 121, 64,
+ nil, nil, nil, nil, 115, 2, nil, 118, 17, nil,
+ nil, nil, 121, nil, 60, 280, 280, 63, 93, nil,
+ nil, 64, 210, 123, 65, 93, nil, nil, 65, 120,
+ 2, nil, nil, 17, 121, 2, 292, nil, 17, nil,
+ nil, nil, 2, nil, nil, 17, 64, 64, 251, 252,
+ nil, nil, nil, 64, nil, 93, 168, nil, 168, 121,
+ 121, nil, nil, nil, 120, nil, 121, 264, 210, nil,
+ 279, 279, 2, nil, 93, 17, 93, nil, 120, 210,
+ nil, nil, 2, 2, nil, 17, 17, nil, 311, 313,
+ nil, 2, 58, 2, 17, nil, 17, 85, 60, 64,
+ 120, 63, 60, 206, nil, 63, 207, nil, nil, nil,
+ 64, nil, 121, nil, 101, 102, nil, 113, nil, nil,
+ nil, nil, nil, 121, nil, 278, 278, 58, 168, nil,
+ nil, nil, 120, nil, nil, nil, nil, nil, 206, 300,
+ nil, 207, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, 115, 139, nil, 118, nil, 142, 305, 306,
+ nil, nil, nil, nil, nil, 143, nil, nil, nil, 166,
+ nil, 166, nil, nil, 206, nil, nil, 207, 120, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 120,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 276,
+ 276, 168, 277, 277, nil, nil, 206, nil, nil, 207,
+ nil, 58, nil, nil, nil, 58, 205, nil, nil, nil,
+ nil, nil, nil, nil, nil, 214, 215, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, nil, 227, 228, 229,
+ nil, 166, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, 205, 206, nil, nil, 207, nil, nil, nil, nil,
+ nil, nil, nil, 206, nil, 113, 207, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, 205, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 231, nil, nil, nil, nil, nil, nil, nil,
- nil, 94, 123, nil, 242, nil, nil, nil, nil, 182,
- 70, nil, 69, nil, 70, 210, nil, nil, 176, 202,
- 166, 190, 166, nil, 192, 200, 46, nil, nil, 304,
- nil, nil, 133, 64, nil, nil, nil, 64, 64, nil,
- nil, 122, 253, nil, 107, 2, 257, 225, 301, 17,
- 210, 243, 259, 63, 292, nil, 133, 63, 207, 209,
- 295, 306, 58, 260, 125, nil, 58, 205, nil, 133,
- nil, nil, nil, 64, 2, nil, 254, nil, 17, nil,
- nil, 2, nil, 261, nil, 17, 210, 64, 65, nil,
- nil, nil, 166, 207, nil, nil, 69, 67, nil, nil,
- 69, 93, 205, nil, nil, nil, nil, 118, nil, 64,
- 277, 277, nil, 120, nil, 2, 113, 210, nil, 17,
- nil, nil, 121, 65, nil, nil, nil, nil, nil, 207,
- 93, 60, 67, 64, 64, nil, nil, 93, 205, 2,
- 64, 289, nil, 17, 2, nil, nil, nil, 17, nil,
- 123, 2, nil, 274, 274, 17, 115, nil, 250, 251,
- 207, 210, 271, 271, 166, 93, 60, nil, nil, 205,
- nil, nil, 210, nil, nil, nil, nil, 263, nil, 2,
- nil, nil, nil, 17, 64, 93, nil, 93, nil, nil,
- 2, nil, 309, nil, 17, 64, 276, 276, 2, 2,
- 311, 2, 17, 17, 207, 17, nil, 65, 168, nil,
- 168, 65, 120, 205, nil, 207, 67, nil, nil, nil,
- 67, 121, nil, nil, 205, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, 120, 297, nil,
- 60, nil, nil, nil, 60, 206, 121, nil, nil, nil,
- nil, 120, nil, nil, nil, 302, 303, nil, nil, nil,
- 121, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 168, nil, nil, 120, nil, 85, nil, nil, nil, nil,
- 206, nil, 121, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 101, 102, 115, nil, nil, 275, 275, nil,
- nil, nil, nil, nil, 120, nil, 121, 121, nil, nil,
- nil, nil, nil, 121, nil, nil, 206, nil, nil, nil,
+ nil, nil, 274, 274, 166, nil, nil, nil, nil, 205,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 139, nil, nil, nil, 142, nil, nil, nil, nil,
- 273, 273, 168, 143, nil, nil, nil, 206, 120, nil,
- nil, nil, nil, nil, nil, nil, nil, 121, nil, 120,
- nil, nil, nil, nil, nil, nil, nil, nil, 121, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 206, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 206, 214, 215, 216, 217, 218, 219, 220,
- 221, 222, 223, 224, nil, 226, 227, 228 ]
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, 205, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, 205 ]
racc_goto_check = [
- 29, 28, 2, 48, 35, 4, 18, 53, 45, 50,
- 34, 28, 60, 29, 62, 69, 30, 58, 34, 29,
- 1, 54, 33, 35, 47, 72, 28, 40, 35, 3,
- 39, 38, 39, 44, 44, 55, 28, 56, 30, 57,
- 36, 18, 32, 61, 24, 54, 31, 60, 29, 47,
- 63, 64, 65, 22, 66, 67, 68, 21, 54, 47,
- 70, 71, 5, 73, 34, 3, nil, nil, nil, 24,
- nil, 3, nil, 33, nil, nil, nil, nil, 22, 24,
- nil, nil, nil, 60, 58, 62, nil, 27, 22, nil,
+ 29, 34, 4, 35, 60, 69, 2, 62, 18, 34,
+ 72, 48, 53, 29, 30, 28, 3, 33, 50, 29,
+ 58, 39, 35, 39, 45, 28, 56, 35, 1, 54,
+ 44, 44, 40, 55, 38, 57, 30, 36, 32, 60,
+ 28, 61, 31, 18, 63, 64, 47, 65, 29, 66,
+ 28, 67, 3, 54, 68, 34, 21, 70, 3, 26,
+ 71, 5, 73, nil, nil, nil, 54, nil, 33, 56,
+ 27, 47, nil, nil, nil, 60, nil, nil, 62, nil,
+ nil, 47, nil, nil, 26, nil, nil, nil, 58, nil,
+ nil, nil, nil, 39, 26, 27, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, 27, nil, 60, nil, nil,
+ nil, 51, nil, nil, nil, 3, nil, 30, nil, nil,
+ nil, 69, nil, nil, 69, 25, nil, 72, nil, nil,
+ nil, 18, nil, nil, 28, 29, 29, nil, 28, 28,
+ nil, nil, 51, nil, nil, nil, nil, nil, nil, nil,
+ 25, nil, nil, 60, nil, 29, 34, 53, 35, 48,
+ 25, 2, 34, 50, 60, 47, 51, 62, 33, 47,
+ 47, 50, 45, nil, 28, 28, nil, nil, 26, 51,
+ nil, nil, 26, 26, 29, nil, nil, 35, 28, 27,
+ 2, 29, nil, 27, 35, nil, nil, 2, nil, 23,
+ nil, nil, 24, nil, nil, 47, nil, nil, 4, nil,
+ 28, nil, nil, nil, nil, nil, nil, nil, 26, 47,
+ nil, nil, nil, nil, 23, 29, nil, 24, 35, nil,
+ nil, nil, 26, nil, 23, 28, 28, 24, 4, nil,
+ nil, 47, 28, 27, 25, 4, nil, nil, 25, 25,
+ 29, nil, nil, 35, 26, 29, 2, nil, 35, nil,
+ nil, nil, 29, nil, nil, 35, 47, 47, 51, 51,
+ nil, nil, nil, 47, nil, 4, 23, nil, 23, 26,
+ 26, nil, nil, nil, 25, nil, 26, 51, 28, nil,
+ 27, 27, 29, nil, 4, 35, 4, nil, 25, 28,
+ nil, nil, 29, 29, nil, 35, 35, nil, 2, 2,
+ nil, 29, 22, 29, 35, nil, 35, 49, 23, 47,
+ 25, 24, 23, 23, nil, 24, 24, nil, nil, nil,
+ 47, nil, 26, nil, 49, 49, nil, 22, nil, nil,
+ nil, nil, nil, 26, nil, 25, 25, 22, 23, nil,
+ nil, nil, 25, nil, nil, nil, nil, nil, 23, 51,
+ nil, 24, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, 23, 49, nil, 24, nil, 49, 51, 51,
+ nil, nil, nil, nil, nil, 49, nil, nil, nil, 22,
+ nil, 22, nil, nil, 23, nil, nil, 24, 25, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 25,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 23,
+ 23, 23, 24, 24, nil, nil, 23, nil, nil, 24,
+ nil, 22, nil, nil, nil, 22, 22, nil, nil, nil,
+ nil, nil, nil, nil, nil, 49, 49, 49, 49, 49,
+ 49, 49, 49, 49, 49, 49, nil, 49, 49, 49,
+ nil, 22, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, 22, 23, nil, nil, 24, nil, nil, nil, nil,
+ nil, nil, nil, 23, nil, 22, 24, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, 22, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 39, nil, nil, nil, nil, nil, nil, nil,
- nil, 51, 27, nil, 60, nil, nil, nil, nil, 30,
- 28, nil, 27, nil, 28, 28, nil, nil, 3, 18,
- 22, 69, 22, nil, 69, 29, 29, nil, nil, 72,
- nil, nil, 51, 47, nil, nil, nil, 47, 47, nil,
- nil, 48, 53, nil, 50, 29, 45, 2, 60, 35,
- 28, 28, 50, 24, 34, nil, 51, 24, 24, 60,
- 34, 62, 22, 33, 28, nil, 22, 22, nil, 51,
- nil, nil, nil, 47, 29, nil, 2, nil, 35, nil,
- nil, 29, nil, 2, nil, 35, 28, 47, 25, nil,
- nil, nil, 22, 24, nil, nil, 27, 26, nil, nil,
- 27, 4, 22, nil, nil, nil, nil, 24, nil, 47,
- 28, 28, nil, 25, nil, 29, 22, 28, nil, 35,
- nil, nil, 26, 25, nil, nil, nil, nil, nil, 24,
- 4, 23, 26, 47, 47, nil, nil, 4, 22, 29,
- 47, 2, nil, 35, 29, nil, nil, nil, 35, nil,
- 27, 29, nil, 24, 24, 35, 23, nil, 51, 51,
- 24, 28, 22, 22, 22, 4, 23, nil, nil, 22,
- nil, nil, 28, nil, nil, nil, nil, 51, nil, 29,
- nil, nil, nil, 35, 47, 4, nil, 4, nil, nil,
- 29, nil, 2, nil, 35, 47, 27, 27, 29, 29,
- 2, 29, 35, 35, 24, 35, nil, 25, 23, nil,
- 23, 25, 25, 22, nil, 24, 26, nil, nil, nil,
- 26, 26, nil, nil, 22, nil, nil, nil, nil, nil,
+ nil, nil, 22, 22, 22, nil, nil, nil, nil, 22,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, 25, 51, nil,
- 23, nil, nil, nil, 23, 23, 26, nil, nil, nil,
- nil, 25, nil, nil, nil, 51, 51, nil, nil, nil,
- 26, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 23, nil, nil, 25, nil, 49, nil, nil, nil, nil,
- 23, nil, 26, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 49, 49, 23, nil, nil, 25, 25, nil,
- nil, nil, nil, nil, 25, nil, 26, 26, nil, nil,
- nil, nil, nil, 26, nil, nil, 23, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 49, nil, nil, nil, 49, nil, nil, nil, nil,
- 23, 23, 23, 49, nil, nil, nil, 23, 25, nil,
- nil, nil, nil, nil, nil, nil, nil, 26, nil, 25,
- nil, nil, nil, nil, nil, nil, nil, nil, 26, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 23, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 23, 49, 49, 49, 49, 49, 49, 49,
- 49, 49, 49, 49, nil, 49, 49, 49 ]
+ nil, nil, nil, nil, nil, 22, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, 22 ]
racc_goto_pointer = [
- nil, 20, 2, 29, -14, 38, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, -7, nil,
- nil, -75, 40, 228, 31, 185, 194, 74, -12, 0,
- 11, 8, -70, -16, -96, 4, 5, nil, 14, -60,
- -207, nil, nil, nil, -199, -30, nil, 11, -35, 379,
- -26, 91, nil, -28, -30, -231, -231, -133, -155, nil,
- -125, -94, -123, -158, 28, -47, 18, 45, 14, 5,
- -114, -113, -149, -45 ]
+ nil, 28, 6, 16, -17, 37, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, -5, nil,
+ nil, -76, 299, 186, 189, 112, 46, 57, 2, 0,
+ 9, 4, -74, -21, -105, 3, 2, nil, 17, -69,
+ -203, nil, nil, nil, -203, -14, nil, 33, -27, 301,
+ -17, 91, nil, -23, -22, -234, -200, -137, -152, nil,
+ -133, -96, -130, -164, 22, -52, 13, 41, 12, -5,
+ -117, -114, -164, -46 ]
racc_goto_default = [
nil, nil, nil, 169, 26, 30, 32, 3, 7, 9,
11, 12, 14, 18, 21, 25, 29, 31, nil, 50,
53, 55, 77, 78, 79, 81, 82, 86, 87, 74,
6, nil, nil, nil, nil, 61, nil, 24, nil, nil,
- 163, 234, 164, 165, nil, nil, 119, 80, 83, nil,
- 124, 73, 103, nil, nil, 196, nil, nil, nil, 241,
+ 163, 235, 164, 165, nil, nil, 119, 80, 83, nil,
+ 124, 73, 103, nil, nil, 196, nil, nil, nil, 242,
68, nil, nil, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil ]
@@ -1528,138 +1552,161 @@ module_eval <<'.,.,', 'grammar.ra', 421
end
.,.,
- # reduce 108 omitted
+module_eval <<'.,.,', 'grammar.ra', 433
+ def _reduce_108( val, _values, result )
+ args = {
+ :test => val[1],
+ :statements => ast(AST::Nop)
+ }
-module_eval <<'.,.,', 'grammar.ra', 426
- def _reduce_109( val, _values, result )
- result = ast AST::Else, :statements => val[2]
+ if val[4]
+ args[:else] = val[4]
+ end
+
+ result = ast AST::IfStatement, args
result
end
.,.,
- # reduce 110 omitted
+ # reduce 109 omitted
-module_eval <<'.,.,', 'grammar.ra', 443
- def _reduce_111( val, _values, result )
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
+module_eval <<'.,.,', 'grammar.ra', 438
+ def _reduce_110( val, _values, result )
+ result = ast AST::Else, :statements => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 446
- def _reduce_112( val, _values, result )
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
+module_eval <<'.,.,', 'grammar.ra', 441
+ def _reduce_111( val, _values, result )
+ result = ast AST::Else, :statements => ast(AST::Nop)
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 449
+ # reduce 112 omitted
+
+module_eval <<'.,.,', 'grammar.ra', 458
def _reduce_113( val, _values, result )
result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 452
+module_eval <<'.,.,', 'grammar.ra', 461
def _reduce_114( val, _values, result )
result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 455
+module_eval <<'.,.,', 'grammar.ra', 464
def _reduce_115( val, _values, result )
result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 458
+module_eval <<'.,.,', 'grammar.ra', 467
def _reduce_116( val, _values, result )
result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 461
+module_eval <<'.,.,', 'grammar.ra', 470
def _reduce_117( val, _values, result )
- result = ast AST::Minus, :value => val[1]
+ result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 464
+module_eval <<'.,.,', 'grammar.ra', 473
def _reduce_118( val, _values, result )
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
+ result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 467
+module_eval <<'.,.,', 'grammar.ra', 476
def _reduce_119( val, _values, result )
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
+ result = ast AST::Minus, :value => val[1]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 470
+module_eval <<'.,.,', 'grammar.ra', 479
def _reduce_120( val, _values, result )
result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 473
+module_eval <<'.,.,', 'grammar.ra', 482
def _reduce_121( val, _values, result )
result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 476
+module_eval <<'.,.,', 'grammar.ra', 485
def _reduce_122( val, _values, result )
result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 479
+module_eval <<'.,.,', 'grammar.ra', 488
def _reduce_123( val, _values, result )
result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 482
+module_eval <<'.,.,', 'grammar.ra', 491
def _reduce_124( val, _values, result )
- result = ast AST::Not, :value => val[1]
+ result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 485
+module_eval <<'.,.,', 'grammar.ra', 494
def _reduce_125( val, _values, result )
- result = ast AST::BooleanOperator, :operator => val[1], :lval => val[0], :rval => val[2]
+ result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 488
+module_eval <<'.,.,', 'grammar.ra', 497
def _reduce_126( val, _values, result )
- result = ast AST::BooleanOperator, :operator => val[1], :lval => val[0], :rval => val[2]
+ result = ast AST::Not, :value => val[1]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 491
+module_eval <<'.,.,', 'grammar.ra', 500
def _reduce_127( val, _values, result )
- result = val[1]
+ result = ast AST::BooleanOperator, :operator => val[1], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 499
+module_eval <<'.,.,', 'grammar.ra', 503
def _reduce_128( val, _values, result )
+ result = ast AST::BooleanOperator, :operator => val[1], :lval => val[0], :rval => val[2]
+ result
+ end
+.,.,
+
+module_eval <<'.,.,', 'grammar.ra', 506
+ def _reduce_129( val, _values, result )
+ result = val[1]
+ result
+ end
+.,.,
+
+module_eval <<'.,.,', 'grammar.ra', 514
+ def _reduce_130( val, _values, result )
options = val[3]
unless options.instance_of?(AST::ASTArray)
options = ast AST::ASTArray, :children => [val[3]]
@@ -1669,10 +1716,10 @@ module_eval <<'.,.,', 'grammar.ra', 499
end
.,.,
- # reduce 129 omitted
+ # reduce 131 omitted
-module_eval <<'.,.,', 'grammar.ra', 509
- def _reduce_130( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 524
+ def _reduce_132( val, _values, result )
if val[0].instance_of?(AST::ASTArray)
val[0].push val[1]
result = val[0]
@@ -1683,15 +1730,15 @@ module_eval <<'.,.,', 'grammar.ra', 509
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 513
- def _reduce_131( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 528
+ def _reduce_133( val, _values, result )
result = ast AST::CaseOpt, :value => val[0], :statements => val[3]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 518
- def _reduce_132( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 533
+ def _reduce_134( val, _values, result )
result = ast(AST::CaseOpt,
:value => val[0],
:statements => ast(AST::ASTArray)
@@ -1700,10 +1747,10 @@ module_eval <<'.,.,', 'grammar.ra', 518
end
.,.,
- # reduce 133 omitted
+ # reduce 135 omitted
-module_eval <<'.,.,', 'grammar.ra', 528
- def _reduce_134( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 543
+ def _reduce_136( val, _values, result )
if val[0].instance_of?(AST::ASTArray)
val[0].push(val[2])
result = val[0]
@@ -1714,26 +1761,26 @@ module_eval <<'.,.,', 'grammar.ra', 528
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 532
- def _reduce_135( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 547
+ def _reduce_137( val, _values, result )
result = ast AST::Selector, :param => val[0], :values => val[2]
result
end
.,.,
- # reduce 136 omitted
+ # reduce 138 omitted
-module_eval <<'.,.,', 'grammar.ra', 534
- def _reduce_137( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 549
+ def _reduce_139( val, _values, result )
result = val[1]
result
end
.,.,
- # reduce 138 omitted
+ # reduce 140 omitted
-module_eval <<'.,.,', 'grammar.ra', 545
- def _reduce_139( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 560
+ def _reduce_141( val, _values, result )
if val[0].instance_of?(AST::ASTArray)
val[0].push(val[2])
result = val[0]
@@ -1744,17 +1791,13 @@ module_eval <<'.,.,', 'grammar.ra', 545
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 549
- def _reduce_140( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 564
+ def _reduce_142( val, _values, result )
result = ast AST::ResourceParam, :param => val[0], :value => val[2]
result
end
.,.,
- # reduce 141 omitted
-
- # reduce 142 omitted
-
# reduce 143 omitted
# reduce 144 omitted
@@ -1765,29 +1808,33 @@ module_eval <<'.,.,', 'grammar.ra', 549
# reduce 147 omitted
-module_eval <<'.,.,', 'grammar.ra', 560
- def _reduce_148( val, _values, result )
+ # reduce 148 omitted
+
+ # reduce 149 omitted
+
+module_eval <<'.,.,', 'grammar.ra', 575
+ def _reduce_150( val, _values, result )
result = ast AST::Default, :value => val[0]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 562
- def _reduce_149( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 577
+ def _reduce_151( val, _values, result )
result = [val[0].value]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 566
- def _reduce_150( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 581
+ def _reduce_152( val, _values, result )
results = val[0] << val[2].value
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 574
- def _reduce_151( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 589
+ def _reduce_153( val, _values, result )
val[1].each do |file|
import(file)
end
@@ -1797,8 +1844,8 @@ module_eval <<'.,.,', 'grammar.ra', 574
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 584
- def _reduce_152( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 599
+ def _reduce_154( val, _values, result )
newdefine classname(val[1]), :arguments => val[2], :code => val[4]
@lexer.indefine = false
result = nil
@@ -1808,8 +1855,8 @@ module_eval <<'.,.,', 'grammar.ra', 584
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 588
- def _reduce_153( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 603
+ def _reduce_155( val, _values, result )
newdefine classname(val[1]), :arguments => val[2]
@lexer.indefine = false
result = nil
@@ -1817,8 +1864,8 @@ module_eval <<'.,.,', 'grammar.ra', 588
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 596
- def _reduce_154( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 611
+ def _reduce_156( val, _values, result )
# Our class gets defined in the parent namespace, not our own.
@lexer.namepop
newclass classname(val[1]), :code => val[4], :parent => val[2]
@@ -1827,8 +1874,8 @@ module_eval <<'.,.,', 'grammar.ra', 596
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 601
- def _reduce_155( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 616
+ def _reduce_157( val, _values, result )
# Our class gets defined in the parent namespace, not our own.
@lexer.namepop
newclass classname(val[1]), :parent => val[2]
@@ -1837,32 +1884,32 @@ module_eval <<'.,.,', 'grammar.ra', 601
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 606
- def _reduce_156( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 621
+ def _reduce_158( val, _values, result )
newnode val[1], :parent => val[2], :code => val[4]
result = nil
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 609
- def _reduce_157( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 624
+ def _reduce_159( val, _values, result )
newnode val[1], :parent => val[2]
result = nil
result
end
.,.,
- # reduce 158 omitted
-
- # reduce 159 omitted
-
# reduce 160 omitted
# reduce 161 omitted
-module_eval <<'.,.,', 'grammar.ra', 623
- def _reduce_162( val, _values, result )
+ # reduce 162 omitted
+
+ # reduce 163 omitted
+
+module_eval <<'.,.,', 'grammar.ra', 638
+ def _reduce_164( val, _values, result )
result = val[0]
result = [result] unless result.is_a?(Array)
result << val[2]
@@ -1870,49 +1917,49 @@ module_eval <<'.,.,', 'grammar.ra', 623
end
.,.,
- # reduce 163 omitted
-
- # reduce 164 omitted
-
# reduce 165 omitted
# reduce 166 omitted
-module_eval <<'.,.,', 'grammar.ra', 632
- def _reduce_167( val, _values, result )
+ # reduce 167 omitted
+
+ # reduce 168 omitted
+
+module_eval <<'.,.,', 'grammar.ra', 647
+ def _reduce_169( val, _values, result )
result = nil
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 636
- def _reduce_168( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 651
+ def _reduce_170( val, _values, result )
result = ast AST::ASTArray, :children => []
result
end
.,.,
- # reduce 169 omitted
+ # reduce 171 omitted
-module_eval <<'.,.,', 'grammar.ra', 641
- def _reduce_170( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 656
+ def _reduce_172( val, _values, result )
result = nil
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 645
- def _reduce_171( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 660
+ def _reduce_173( val, _values, result )
result = val[1]
result = [result] unless result[0].is_a?(Array)
result
end
.,.,
- # reduce 172 omitted
+ # reduce 174 omitted
-module_eval <<'.,.,', 'grammar.ra', 652
- def _reduce_173( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 667
+ def _reduce_175( val, _values, result )
result = val[0]
result = [result] unless result[0].is_a?(Array)
result << val[2]
@@ -1920,67 +1967,67 @@ module_eval <<'.,.,', 'grammar.ra', 652
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 657
- def _reduce_174( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 672
+ def _reduce_176( val, _values, result )
Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
result = [val[0], val[2]]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 661
- def _reduce_175( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 676
+ def _reduce_177( val, _values, result )
Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
result = [val[0]]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 663
- def _reduce_176( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 678
+ def _reduce_178( val, _values, result )
result = [val[0], val[2]]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 665
- def _reduce_177( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 680
+ def _reduce_179( val, _values, result )
result = [val[0]]
result
end
.,.,
- # reduce 178 omitted
+ # reduce 180 omitted
-module_eval <<'.,.,', 'grammar.ra', 670
- def _reduce_179( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 685
+ def _reduce_181( val, _values, result )
result = val[1]
result
end
.,.,
- # reduce 180 omitted
+ # reduce 182 omitted
-module_eval <<'.,.,', 'grammar.ra', 675
- def _reduce_181( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 690
+ def _reduce_183( val, _values, result )
result = val[1]
result
end
.,.,
- # reduce 182 omitted
+ # reduce 184 omitted
- # reduce 183 omitted
+ # reduce 185 omitted
-module_eval <<'.,.,', 'grammar.ra', 681
- def _reduce_184( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 696
+ def _reduce_186( val, _values, result )
result = ast AST::Variable, :value => val[0]
result
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 689
- def _reduce_185( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 704
+ def _reduce_187( val, _values, result )
if val[1].instance_of?(AST::ASTArray)
result = val[1]
else
@@ -1990,21 +2037,21 @@ module_eval <<'.,.,', 'grammar.ra', 689
end
.,.,
-module_eval <<'.,.,', 'grammar.ra', 691
- def _reduce_186( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 706
+ def _reduce_188( val, _values, result )
result = ast AST::ASTArray
result
end
.,.,
- # reduce 187 omitted
+ # reduce 189 omitted
- # reduce 188 omitted
+ # reduce 190 omitted
- # reduce 189 omitted
+ # reduce 191 omitted
-module_eval <<'.,.,', 'grammar.ra', 696
- def _reduce_190( val, _values, result )
+module_eval <<'.,.,', 'grammar.ra', 711
+ def _reduce_192( val, _values, result )
result = nil
result
end
diff --git a/spec/unit/parser/ast/nop.rb b/spec/unit/parser/ast/nop.rb
new file mode 100755
index 0000000..5a71325
--- /dev/null
+++ b/spec/unit/parser/ast/nop.rb
@@ -0,0 +1,20 @@
+#!/usr/bin/env ruby
+
+require File.dirname(__FILE__) + '/../../../spec_helper'
+
+describe Puppet::Parser::AST::Nop do
+
+ before do
+ @scope = mock 'scope'
+ end
+
+ it "should do nothing on evaluation" do
+ Puppet::Parser::AST.expects(:safeevaluate).never
+ Puppet::Parser::AST::Nop.new({}).evaluate(@scope)
+ end
+
+ it "should not return anything" do
+ Puppet::Parser::AST::Nop.new({}).evaluate(@scope).should be_nil
+ end
+
+end
diff --git a/spec/unit/parser/parser.rb b/spec/unit/parser/parser.rb
index 0092a99..c0d22a2 100755
--- a/spec/unit/parser/parser.rb
+++ b/spec/unit/parser/parser.rb
@@ -116,4 +116,30 @@ describe Puppet::Parser do
end
+ describe Puppet::Parser, "when parsing if statements" do
+
+ it "should not raise errors with empty if" do
+ lambda { @parser.parse("if true { }") }.should_not raise_error
+ end
+
+ it "should not raise errors with empty else" do
+ lambda { @parser.parse("if false { notice('if') } else { }") }.should_not raise_error
+ end
+
+ it "should not raise errors with empty if and else" do
+ lambda { @parser.parse("if false { } else { }") }.should_not raise_error
+ end
+
+ it "should create a nop node for empty branch" do
+ AST::Nop.expects(:new)
+ @parser.parse("if true { }")
+ end
+
+ it "should create a nop node for empty else branch" do
+ AST::Nop.expects(:new)
+ @parser.parse("if true { notice('test') } else { }")
+ end
+
+ end
+
end
diff --git a/test/data/snippets/emptyifelse.pp b/test/data/snippets/emptyifelse.pp
new file mode 100644
index 0000000..598b486
--- /dev/null
+++ b/test/data/snippets/emptyifelse.pp
@@ -0,0 +1,9 @@
+
+if false {
+} else {
+ # nothing here
+}
+
+if true {
+ # still nothing
+}
--
Puppet packaging for Debian
More information about the Pkg-puppet-devel
mailing list