summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Berry <paul@puppetlabs.com>2010-09-01 14:18:41 -0700
committerPaul Berry <paul@puppetlabs.com>2010-09-01 14:27:37 -0700
commit25048ecc40db746f7e88bb6c5e1fc4f2c0150a4f (patch)
tree11bda23eca92a698966695662c441c8b0066b70b
parentfb9034731ddae41f1009745eb8eb1ea53aa05cfb (diff)
downloadpuppet-25048ecc40db746f7e88bb6c5e1fc4f2c0150a4f.tar.gz
puppet-25048ecc40db746f7e88bb6c5e1fc4f2c0150a4f.tar.xz
puppet-25048ecc40db746f7e88bb6c5e1fc4f2c0150a4f.zip
[#4685] Classes, defines, and nodes allowed inside of non-evaluated conditionals
Previously, ASTArray#evaluate() was responsible for checking whether the user had tried to declare a class, define, or node in a prohibited location (such as a conditional construct). This meant that errors would only be reported to the user if the conditional code was actually evaluated. Moved the checking into the parser, so that errors are always reported.
-rw-r--r--lib/puppet/parser/ast/astarray.rb20
-rw-r--r--lib/puppet/parser/grammar.ra25
-rw-r--r--lib/puppet/parser/parser.rb2233
-rwxr-xr-xspec/integration/parser/compiler_spec.rb13
4 files changed, 1130 insertions, 1161 deletions
diff --git a/lib/puppet/parser/ast/astarray.rb b/lib/puppet/parser/ast/astarray.rb
index 432300c7a..e856570f8 100644
--- a/lib/puppet/parser/ast/astarray.rb
+++ b/lib/puppet/parser/ast/astarray.rb
@@ -9,11 +9,6 @@ class Puppet::Parser::AST
class ASTArray < Branch
include Enumerable
- # True if this ASTArray represents a list of statements in a
- # context that defines a namespace. Classes and definitions may
- # only appear in such a context.
- attr_accessor :is_a_namespace
-
# Return a child by index. Probably never used.
def [](index)
@children[index]
@@ -37,17 +32,10 @@ class Puppet::Parser::AST
}
rets = items.flatten.collect { |child|
- if child.respond_to? :instantiate
- if is_a_namespace
- # no problem, just don't evaluate it.
- else
- msg = "Classes, definitions, and nodes may only appear at toplevel or inside other classes"
- error = Puppet::Error.new(msg)
- error.line = child.line
- error.file = child.file
- raise error
- end
- else
+ # Skip things that respond to :instantiate (classes, nodes,
+ # and definitions), because they have already been
+ # instantiated.
+ if !child.respond_to?(:instantiate)
child.safeevaluate(scope)
end
}
diff --git a/lib/puppet/parser/grammar.ra b/lib/puppet/parser/grammar.ra
index 3185c435d..9377c0b02 100644
--- a/lib/puppet/parser/grammar.ra
+++ b/lib/puppet/parser/grammar.ra
@@ -28,22 +28,30 @@ prechigh
preclow
rule
-program: statements {
- val[0].is_a_namespace = true
- result = val[0]
-}
+program: statements_and_declarations
| nil
- statements: statement {
+ statements_and_declarations: statement_or_declaration {
result = ast AST::ASTArray, :children => [val[0]]
}
- | statements statement {
+ | statements_and_declarations statement_or_declaration {
val[0].push(val[1])
result = val[0]
}
+# statements is like statements_and_declarations, but it doesn't allow
+# nested definitions, classes, or nodes.
+statements: statements_and_declarations {
+ val[0].each do |stmt|
+ if stmt.is_a?(AST::TopLevelConstruct)
+ error "Classes, definitions, and nodes may only appear at toplevel or inside other classes"
+ end
+ end
+ result = val[0]
+}
+
# The main list of valid statements
-statement: resource
+statement_or_declaration: resource
| virtualresource
| collection
| assignment
@@ -659,11 +667,10 @@ definition: DEFINE classname argumentlist LBRACE statements RBRACE {
}
#hostclass: CLASS NAME argumentlist parent LBRACE statements RBRACE {
-hostclass: CLASS classname argumentlist classparent LBRACE statements RBRACE {
+hostclass: CLASS classname argumentlist classparent LBRACE statements_and_declarations RBRACE {
@lexer.commentpop
# Our class gets defined in the parent namespace, not our own.
@lexer.namepop
- val[5].is_a_namespace = true
result = Puppet::Parser::AST::Hostclass.new(classname(val[1]),
ast_context(true).merge(:arguments => val[2], :parent => val[3],
:code => val[5], :line => val[0][:line]))
diff --git a/lib/puppet/parser/parser.rb b/lib/puppet/parser/parser.rb
index e4f5149b9..868716e0d 100644
--- a/lib/puppet/parser/parser.rb
+++ b/lib/puppet/parser/parser.rb
@@ -21,7 +21,7 @@ module Puppet
module Parser
class Parser < Racc::Parser
-module_eval(<<'...end grammar.ra/module_eval...', 'grammar.ra', 851)
+module_eval(<<'...end grammar.ra/module_eval...', 'grammar.ra', 858)
# It got too annoying having code in a file that needs to be compiled.
require 'puppet/parser/parser_support'
@@ -36,651 +36,608 @@ require 'puppet/parser/parser_support'
##### State transition tables begin ###
racc_action_table = [
- 256, 257, 228, 82, 54, 72, 75, 181, 251, 48,
- 72, 75, 194, 205, 210, 163, 156, 348, 46, 47,
- 344, 184, 201, 203, 206, 209, 162, 352, 54, 182,
- 351, 169, 54, -168, 72, 75, 241, 242, 102, 305,
- 106, 158, 58, 193, 230, 60, 204, 208, 193, 306,
- 213, 196, 197, 198, 200, 202, 97, 207, 211, 72,
- 75, 72, 75, 163, 199, 59, 58, 71, 245, 60,
- 58, 83, 86, 60, 162, 92, 244, 72, 75, 169,
- 78, 100, 352, 269, 89, 351, 63, 94, 64, 59,
- 228, 326, 71, 59, 162, 59, 83, 86, 83, 268,
- 92, 65, 92, 184, 76, 78, 307, 137, 163, 89,
- 162, 89, 72, 75, 83, 268, 241, 242, 92, 162,
- 59, 163, 59, 137, 169, 62, 254, 89, 207, 211,
- 72, 75, 162, 308, 102, 199, 106, 169, 59, 255,
- 213, 196, 197, 198, -166, 162, 309, 207, 211, 83,
- 268, 310, 97, 92, 199, 72, 75, 355, 137, 102,
- -170, 106, 89, 71, 218, 356, 173, 83, 86, 220,
- 313, 92, -171, 59, 72, 75, 78, 100, 37, 218,
- 89, 249, 38, 94, 220, 246, 247, 173, 71, 11,
- 210, 59, 83, 86, 246, 367, 92, 271, 201, 37,
- -167, 78, 37, 38, 270, 89, 38, 71, 246, 247,
- 11, 83, 86, 11, 14, 92, 59, 72, 75, 76,
- 78, 102, 278, 106, 89, 277, 213, 196, 197, 198,
- 200, 202, 275, 207, 211, 59, 246, 274, 152, 97,
- 199, 37, 318, 72, 75, 127, 319, 102, -169, 106,
- 71, 63, 11, 14, 83, 86, -167, 37, 92, 207,
- 211, 127, -169, 78, 100, 97, 199, 89, 11, 14,
- 94, -166, 117, 72, 75, -185, 71, 82, 59, 336,
- 83, 86, 197, 198, 92, 231, 338, 207, 211, 78,
- 100, 181, 48, 89, 199, 74, 94, 240, -168, 72,
- 75, 241, 242, 102, 59, 106, 71, 184, 176, 37,
- 83, 86, 59, 38, 92, 345, 322, 175, 76, 78,
- 11, 97, -172, 89, -171, 72, 75, -170, 59, 102,
- 214, 106, 71, 64, 59, 215, 83, 86, 173, 217,
- 92, -23, -23, -23, -23, 78, 100, 97, 155, 89,
- 72, 75, 94, 122, 102, 152, 106, 82, 71, 223,
- 59, 122, 83, 86, 72, 75, 92, -168, 102, 225,
- 106, 78, 100, -166, 276, 89, 226, 117, 94, 44,
- 45, 41, 42, 71, -169, -167, 59, 83, 86, 72,
- 75, 92, 226, 102, 229, 106, 78, 71, 52, -168,
- 89, 83, 86, 72, 75, 92, -166, 102, -169, 106,
- 78, 59, 197, 198, 89, -167, -171, 207, 211, 365,
- 231, 152, 71, 234, 199, 59, 83, 86, 50, 210,
- 92, -21, -21, -21, -21, 78, 71, 201, 372, 89,
- 83, 86, 49, 374, 92, 72, 75, 228, -220, 78,
- 59, 226, 354, 89, 377, 72, 75, 40, 39, 102,
- 237, 106, 341, nil, 59, 213, 196, 197, 198, 200,
- 202, nil, 207, 211, nil, nil, nil, 97, 162, 199,
- nil, nil, 83, 268, nil, nil, 92, nil, 71, nil,
- nil, 137, 83, 86, nil, 89, 92, 44, 45, 41,
- 42, 78, 100, 72, 75, 89, 59, 102, 94, 106,
- 213, 196, 197, 198, 200, 202, 59, 207, 211, nil,
- 213, 196, 197, 198, 199, 97, nil, 207, 211, 72,
- 75, nil, nil, 102, 199, 106, 71, nil, nil, nil,
- 83, 86, nil, nil, 92, nil, nil, nil, nil, 78,
- 100, 97, nil, 89, nil, nil, 94, nil, nil, 72,
- 75, nil, 71, 102, 59, 106, 83, 86, nil, nil,
- 92, nil, nil, nil, nil, 78, 100, nil, nil, 89,
- nil, 97, 94, nil, nil, 72, 75, nil, nil, 102,
- 59, 106, 71, nil, nil, nil, 83, 86, nil, nil,
- 92, nil, nil, nil, nil, 78, 100, 97, nil, 89,
- 72, 75, 94, nil, 102, nil, 106, nil, 71, nil,
- 59, nil, 83, 86, 72, 75, 92, nil, 102, nil,
- nil, 78, 100, nil, nil, 89, nil, nil, 94, nil,
- nil, nil, nil, 71, nil, nil, 59, 83, 86, 72,
- 75, 92, nil, 102, nil, 106, 78, 71, nil, nil,
- 89, 83, 143, nil, nil, 92, nil, nil, nil, nil,
- 137, 59, nil, nil, 89, 72, 75, nil, nil, 102,
- nil, 106, 71, nil, nil, 59, 83, 86, nil, nil,
- 92, nil, nil, nil, nil, 78, nil, 97, nil, 89,
- nil, 72, 75, nil, nil, 102, nil, 106, 71, nil,
- 59, nil, 83, 86, nil, nil, 92, nil, nil, nil,
- nil, 78, 100, 97, nil, 89, nil, nil, 94, nil,
- nil, 72, 75, nil, 71, 102, 59, 106, 83, 86,
- nil, nil, 92, nil, nil, nil, nil, 78, 100, nil,
- nil, 89, nil, 97, 94, nil, nil, 72, 75, nil,
- nil, 102, 59, 106, 71, nil, nil, nil, 83, 86,
- nil, nil, 92, nil, nil, nil, nil, 78, 100, 97,
- nil, 89, 72, 75, 94, nil, 102, nil, 106, nil,
- 71, nil, 59, nil, 83, 86, nil, nil, 92, nil,
- nil, nil, nil, 78, 100, nil, nil, 89, 72, 75,
- 94, nil, 102, nil, 106, 71, nil, nil, 59, 83,
- 86, nil, nil, 92, nil, nil, nil, nil, 78, nil,
- 97, nil, 89, nil, 72, 75, nil, nil, 102, nil,
- 106, 71, nil, 59, nil, 83, 86, nil, nil, 92,
- nil, nil, 72, 75, 78, 100, 97, nil, 89, 72,
- 75, 94, nil, 102, nil, 106, nil, 71, nil, 59,
- nil, 83, 86, nil, nil, 92, nil, nil, nil, nil,
- 78, 100, nil, nil, 89, 162, nil, 94, nil, 83,
- 268, nil, 71, 92, nil, 59, 83, 86, 137, nil,
- 92, nil, 89, nil, nil, 78, 72, 75, nil, 89,
- 102, nil, 106, 59, nil, nil, nil, nil, nil, nil,
- 59, nil, nil, nil, nil, 72, 75, nil, 97, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 71,
- nil, nil, nil, 83, 86, nil, nil, 92, 177, nil,
- 72, 75, 78, 100, nil, nil, 89, nil, 71, 94,
- nil, nil, 83, 86, nil, nil, 92, 59, 72, 75,
- 76, 78, 102, 339, 106, 89, nil, nil, nil, nil,
- nil, nil, nil, 71, nil, nil, 59, 83, 86, nil,
- 97, 92, nil, 72, 75, 76, 78, 102, nil, 106,
- 89, 71, nil, 72, 75, 83, 86, nil, nil, 92,
- nil, 59, nil, nil, 78, 100, nil, nil, 89, 72,
- 75, 94, nil, nil, nil, nil, 71, nil, nil, 59,
- 83, 86, nil, nil, 92, nil, 162, nil, nil, 78,
- 83, 268, nil, 89, 92, nil, 72, 75, nil, 137,
- 102, nil, 162, 89, 59, nil, 83, 268, nil, nil,
- 92, nil, 72, 75, 59, 137, 102, nil, 106, 89,
- nil, nil, 72, 75, nil, nil, 102, nil, 106, 71,
- 59, nil, nil, 83, 268, nil, nil, 92, nil, nil,
- nil, nil, 137, nil, 97, 71, 89, nil, nil, 83,
- 86, nil, nil, 92, nil, 71, nil, 59, 78, 83,
- 86, nil, 89, 92, nil, nil, nil, nil, 78, 100,
- 72, 75, 89, 59, 102, 94, 106, 213, 196, 197,
- 198, 200, 202, 59, 207, 211, nil, nil, nil, 72,
- 75, 199, 97, 102, 189, 106, 72, 75, nil, nil,
- 102, nil, 106, 71, nil, nil, nil, 83, 86, nil,
- nil, 92, nil, nil, nil, nil, 78, 100, 72, 75,
- 89, nil, 71, 94, nil, nil, 83, 86, nil, 71,
- 92, 59, nil, 83, 86, 78, nil, 92, nil, 89,
- nil, nil, 78, 72, 75, nil, 89, 102, nil, 106,
- 59, 162, nil, nil, nil, 83, 268, 59, nil, 92,
- nil, 72, 75, nil, 137, 102, nil, 106, 89, nil,
- nil, nil, nil, nil, nil, nil, 71, nil, nil, 59,
- 83, 86, nil, 97, 92, nil, nil, nil, nil, 78,
- nil, 72, 75, 89, 71, 102, nil, 106, 83, 86,
- nil, nil, 92, nil, 59, nil, nil, 78, 100, nil,
- nil, 89, nil, 97, 94, nil, nil, 72, 75, nil,
- nil, 102, 59, 106, 71, nil, nil, nil, 83, 86,
- nil, nil, 92, nil, nil, nil, nil, 78, 100, 97,
- nil, 89, nil, nil, 94, nil, nil, nil, nil, nil,
- 71, nil, 59, nil, 83, 86, 212, nil, 92, nil,
- nil, nil, nil, 78, 100, 205, 210, 89, nil, nil,
- 94, nil, nil, nil, 201, 203, 206, 209, 59, nil,
- 205, 210, nil, nil, nil, nil, nil, nil, nil, 201,
- 203, 206, 209, nil, nil, nil, nil, nil, 204, 208,
- nil, nil, 213, 196, 197, 198, 200, 202, nil, 207,
- 211, nil, nil, 204, 208, nil, 199, 213, 196, 197,
- 198, 200, 202, nil, 207, 211, 205, 210, nil, nil,
- nil, 199, nil, nil, nil, 201, 203, 206, 209, nil,
- nil, 205, 210, nil, nil, nil, nil, nil, nil, nil,
- 201, 203, 206, 209, nil, nil, nil, nil, nil, 204,
- 208, nil, nil, 213, 196, 197, 198, 200, 202, nil,
- 207, 211, nil, nil, 204, 208, nil, 199, 213, 196,
- 197, 198, 200, 202, nil, 207, 211, 205, 210, nil,
- nil, nil, 199, nil, nil, nil, 201, 203, 206, 209,
- nil, nil, 205, 210, nil, nil, nil, nil, nil, nil,
- 273, 201, 203, 206, 209, nil, nil, nil, nil, nil,
- nil, 208, nil, nil, 213, 196, 197, 198, 200, 202,
- nil, 207, 211, nil, nil, 204, 208, nil, 199, 213,
- 196, 197, 198, 200, 202, nil, 207, 211, 205, 210,
- nil, nil, nil, 199, nil, nil, nil, 201, 203, 206,
- 209, nil, nil, 26, 210, 33, 1, nil, 7, 12,
- nil, 17, 201, 23, nil, 29, nil, 3, nil, nil,
- 11, 14, nil, 210, nil, 213, 196, 197, 198, 200,
- 202, 201, 207, 211, nil, nil, nil, nil, nil, 199,
- 213, 196, 197, 198, 200, 202, nil, 207, 211, nil,
- nil, 324, nil, nil, 199, nil, nil, nil, nil, 213,
- 196, 197, 198, 200, 202, nil, 207, 211, nil, nil,
- 379, nil, 26, 199, 33, 1, nil, 7, 12, nil,
- 17, nil, 23, nil, 29, nil, 3, nil, nil, 11,
- 14, 26, 382, 33, 1, nil, 7, 12, nil, 17,
- nil, 23, nil, 29, nil, 3, nil, nil, 11, 14,
- nil, 296, nil, 26, nil, 33, 1, nil, 7, 12,
- nil, 17, nil, 23, nil, 29, nil, 3, nil, nil,
- 11, 14, 26, 364, 33, 1, nil, 7, 12, nil,
- 17, nil, 23, nil, 29, nil, 3, nil, nil, 11,
- 14, nil, 381, nil, 26, nil, 33, 1, nil, 7,
- 12, nil, 17, nil, 23, nil, 29, nil, 3, nil,
- nil, 11, 14, 26, 383, 33, 1, nil, 7, 12,
- nil, 17, nil, 23, nil, 29, nil, 3, nil, nil,
- 11, 14, nil, 357, nil, 26, nil, 33, 1, nil,
- 7, 12, nil, 17, nil, 23, nil, 29, nil, 3,
- nil, nil, 11, 14, 26, 363, 33, 1, nil, 7,
- 12, nil, 17, nil, 23, nil, 29, nil, 3, nil,
- nil, 11, 14, nil, 375, nil, 26, nil, 33, 1,
- nil, 7, 12, nil, 17, nil, 23, nil, 29, nil,
- 3, nil, nil, 11, 14, 26, 304, 33, 1, nil,
- 7, 12, nil, 17, nil, 23, nil, 29, nil, 3,
- nil, nil, 11, 14, nil, 349, nil, 26, nil, 33,
- 1, nil, 7, 12, nil, 17, nil, 23, nil, 29,
- nil, 3, nil, nil, 11, 14, 26, nil, 33, 1,
- nil, 7, 12, nil, 17, nil, 23, nil, 29, nil,
- 3, nil, nil, 11, 14, 26, nil, 33, 1, nil,
- 7, 12, nil, 17, nil, 23, nil, 29, nil, 3,
- nil, nil, 11, 14 ]
+ 242, 243, 55, 231, 356, 112, 157, 113, 78, 298,
+ 68, 71, 357, 181, 186, 326, 344, 340, 55, 295,
+ 114, 231, 177, 179, 182, 185, 170, 294, 68, 71,
+ 286, 158, 100, 285, 103, 68, 71, 291, 292, 55,
+ 59, 291, 292, 61, 111, 233, 180, 184, 198, 231,
+ 189, 172, 173, 174, 176, 178, 59, 183, 187, 61,
+ -168, 66, 170, 60, 175, 79, 81, 186, 202, 88,
+ 112, 166, 79, 252, 74, 177, 88, 59, 84, 60,
+ 61, 139, 68, 71, 333, 84, 100, 117, 103, 60,
+ 36, -170, 68, 71, 38, 306, 60, 307, 203, 240,
+ 60, 10, 203, 189, 172, 173, 174, 176, 178, 202,
+ 183, 187, 241, 202, 209, 66, 218, 175, 209, 79,
+ 81, 219, 284, 88, 309, 202, 256, 283, 74, 79,
+ 252, 308, 84, 88, 203, 68, 71, 310, 139, 100,
+ 203, 103, 84, 60, 218, 202, 256, 367, 36, 219,
+ 209, 202, 38, 60, 68, 71, 209, 95, 100, 10,
+ 103, 68, 71, 68, 71, 100, 337, 103, 66, 335,
+ 199, 154, 79, 81, 173, 174, 88, 183, 187, 183,
+ 187, 74, 99, 95, 175, 84, 175, 66, 90, 311,
+ 337, 79, 81, 335, 66, 88, 60, 287, 79, 81,
+ 74, 198, 88, 315, 84, 68, 71, 74, 99, -172,
+ 213, 84, 68, 71, 90, 60, 100, 36, 103, 68,
+ 71, 38, 60, 100, 318, 103, 68, 71, 10, 15,
+ 36, -167, 213, 355, 38, 167, 36, 313, 202, 154,
+ 127, 10, 79, 252, 323, 66, 88, 10, 15, 79,
+ 81, 139, 66, 88, 166, 84, 79, 81, 74, 202,
+ 88, 229, 84, 79, 252, 74, 60, 88, 49, 84,
+ 68, 71, 139, 60, 78, -186, 84, 47, 48, 49,
+ 60, 329, 36, 170, 183, 187, 127, 60, -169, 68,
+ 71, 175, 70, 10, 15, 68, 71, 161, -171, 100,
+ 289, 103, -169, 66, 291, 292, 60, 79, 81, 258,
+ -167, 88, -170, 256, 257, 72, 74, 95, -168, 60,
+ 84, 156, 66, 154, 68, 71, 79, 81, 66, 122,
+ 88, 60, 79, 81, 72, 74, 88, -170, -173, 84,
+ -172, 74, 99, 68, 71, 84, -171, 100, 90, 103,
+ 60, 200, 334, 68, 71, 213, 60, 202, 215, 254,
+ 338, 79, 252, 173, 174, 88, 122, 296, 183, 187,
+ 139, 256, 257, 216, 84, 175, 66, 234, 68, 71,
+ 79, 81, 113, 117, 88, 60, 202, 217, 78, 74,
+ 79, 252, 353, 84, 88, 53, 68, 71, 223, 139,
+ 100, 260, 103, 84, 60, 43, 44, 40, 41, 358,
+ 52, 66, 51, 225, 60, 79, 81, -169, 229, 88,
+ 365, 68, 71, 72, 74, 100, 238, 103, 84, 66,
+ 228, -167, 234, 79, 81, 372, 373, 88, -169, 60,
+ -167, -170, 74, 95, -168, -172, 84, 68, 71, 45,
+ 375, 100, 229, 103, 66, -221, 232, 60, 79, 81,
+ 378, 39, 88, -24, -24, -24, -24, 74, 99, 95,
+ -168, 84, 383, 384, 90, nil, nil, 68, 71, nil,
+ 66, 100, 60, 103, 79, 81, nil, nil, 88, -22,
+ -22, -22, -22, 74, 99, nil, nil, 84, nil, 95,
+ 90, nil, nil, 68, 71, nil, nil, 100, 60, 103,
+ 66, nil, nil, nil, 79, 81, nil, nil, 88, 43,
+ 44, 40, 41, 74, 99, 95, nil, 84, nil, nil,
+ 90, nil, nil, 68, 71, nil, 66, 100, 60, 103,
+ 79, 81, nil, nil, 88, nil, nil, nil, nil, 74,
+ 99, nil, nil, 84, nil, 95, 90, nil, nil, 68,
+ 71, nil, nil, 100, 60, 103, 66, nil, nil, nil,
+ 79, 81, nil, nil, 88, nil, nil, 68, 71, 74,
+ 99, 100, nil, 84, 68, 71, 90, nil, 100, nil,
+ 103, nil, 66, nil, 60, nil, 79, 81, nil, nil,
+ 88, nil, nil, nil, nil, 74, 95, nil, nil, 84,
+ 66, nil, nil, nil, 79, 144, nil, 66, 88, nil,
+ 60, 79, 81, 139, nil, 88, nil, 84, nil, nil,
+ 74, 99, nil, nil, 84, 68, 71, 90, 60, 100,
+ nil, 103, nil, nil, nil, 60, nil, nil, nil, nil,
+ nil, nil, nil, nil, 68, 71, nil, 95, 100, nil,
+ 103, 68, 71, nil, nil, 100, nil, 103, 66, nil,
+ nil, nil, 79, 81, nil, nil, 88, nil, nil, 68,
+ 71, 74, 99, nil, nil, 84, nil, 66, 90, nil,
+ nil, 79, 81, nil, 66, 88, 60, nil, 79, 81,
+ 74, nil, 88, nil, 84, 68, 71, 74, nil, nil,
+ nil, 84, 202, nil, nil, 60, 79, 252, nil, nil,
+ 88, nil, 60, nil, nil, 139, 68, 71, 162, 84,
+ 100, nil, 103, nil, nil, nil, nil, nil, 66, nil,
+ 60, nil, 79, 81, nil, nil, 88, nil, 95, nil,
+ 72, 74, 68, 71, nil, 84, 100, nil, 103, 66,
+ nil, nil, nil, 79, 81, nil, 60, 88, nil, nil,
+ nil, nil, 74, 99, 95, nil, 84, 68, 71, 90,
+ nil, nil, nil, nil, nil, 66, nil, 60, nil, 79,
+ 81, nil, nil, 88, nil, nil, nil, nil, 74, 99,
+ 327, nil, 84, 68, 71, 90, nil, 100, nil, 103,
+ 66, nil, nil, 60, 79, 81, nil, nil, 88, nil,
+ nil, nil, 72, 74, nil, 95, nil, 84, 68, 71,
+ nil, nil, 100, nil, 103, nil, 66, nil, 60, nil,
+ 79, 81, 68, 71, 88, nil, 100, nil, 103, 74,
+ 99, nil, nil, 84, nil, nil, 90, nil, nil, nil,
+ nil, 66, nil, nil, 60, 79, 81, 68, 71, 88,
+ nil, 100, nil, 103, 74, 66, nil, nil, 84, 79,
+ 81, 68, 71, 88, nil, 100, nil, nil, 74, 60,
+ nil, nil, 84, nil, nil, nil, nil, nil, nil, nil,
+ 66, nil, nil, 60, 79, 81, nil, nil, 88, nil,
+ nil, 68, 71, 74, 66, nil, nil, 84, 79, 252,
+ nil, nil, 88, nil, nil, nil, nil, 139, 60, 68,
+ 71, 84, nil, 100, nil, 103, nil, nil, nil, nil,
+ nil, nil, 60, nil, 202, nil, nil, nil, 79, 252,
+ nil, 95, 88, nil, nil, nil, nil, 139, nil, 68,
+ 71, 84, 66, 100, nil, 103, 79, 81, nil, nil,
+ 88, nil, 60, nil, nil, 74, 99, nil, nil, 84,
+ nil, 95, 90, nil, nil, 68, 71, nil, nil, 100,
+ 60, 103, 66, nil, nil, nil, 79, 81, nil, nil,
+ 88, nil, nil, nil, nil, 74, 99, 95, nil, 84,
+ nil, nil, 90, nil, nil, 68, 71, nil, 66, 100,
+ 60, 103, 79, 81, nil, nil, 88, nil, nil, nil,
+ nil, 74, 99, nil, nil, 84, nil, 95, 90, nil,
+ nil, 68, 71, nil, nil, 100, 60, 103, 66, nil,
+ nil, nil, 79, 81, nil, nil, 88, nil, nil, nil,
+ nil, 74, 99, 95, nil, 84, nil, nil, 90, nil,
+ nil, 68, 71, nil, 66, 100, 60, 103, 79, 81,
+ nil, nil, 88, nil, nil, nil, nil, 74, 99, nil,
+ nil, 84, nil, 95, 90, nil, nil, 68, 71, nil,
+ nil, 100, 60, 103, 66, nil, nil, nil, 79, 81,
+ nil, nil, 88, nil, nil, nil, nil, 74, 99, 95,
+ nil, 84, nil, nil, 90, nil, nil, 68, 71, nil,
+ 66, 100, 60, 103, 79, 81, nil, nil, 88, nil,
+ nil, nil, nil, 74, 99, nil, nil, 84, nil, 95,
+ 90, nil, nil, 68, 71, nil, nil, 100, 60, 103,
+ 66, nil, nil, nil, 79, 81, nil, nil, 88, nil,
+ nil, nil, nil, 74, 99, 95, nil, 84, 68, 71,
+ 90, nil, 100, 193, 103, nil, 66, nil, 60, nil,
+ 79, 81, nil, nil, 88, nil, nil, nil, nil, 74,
+ 99, nil, nil, 84, 68, 71, 90, nil, 100, nil,
+ 103, 66, nil, nil, 60, 79, 81, nil, nil, 88,
+ nil, nil, nil, nil, 74, nil, 95, nil, 84, nil,
+ 68, 71, nil, nil, 100, nil, 103, 66, nil, 60,
+ nil, 79, 81, nil, nil, 88, nil, nil, nil, nil,
+ 74, 99, 95, nil, 84, nil, nil, 90, nil, nil,
+ nil, nil, nil, 66, nil, 60, nil, 79, 81, 188,
+ nil, 88, nil, nil, nil, nil, 74, 99, 181, 186,
+ 84, nil, nil, 90, nil, nil, nil, 177, 179, 182,
+ 185, 60, nil, 181, 186, nil, nil, nil, nil, nil,
+ nil, 282, 177, 179, 182, 185, nil, nil, nil, nil,
+ nil, 180, 184, nil, nil, 189, 172, 173, 174, 176,
+ 178, nil, 183, 187, nil, nil, 180, 184, nil, 175,
+ 189, 172, 173, 174, 176, 178, nil, 183, 187, 181,
+ 186, nil, nil, nil, 175, nil, nil, nil, 177, 179,
+ 182, 185, nil, nil, 181, 186, nil, nil, nil, nil,
+ nil, nil, nil, 177, 179, 182, 185, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, 189, 172, 173, 174,
+ 176, 178, nil, 183, 187, nil, nil, 180, 184, nil,
+ 175, 189, 172, 173, 174, 176, 178, nil, 183, 187,
+ 181, 186, nil, nil, nil, 175, nil, nil, nil, 177,
+ 179, 182, 185, nil, nil, 181, 186, nil, nil, nil,
+ nil, nil, nil, nil, 177, 179, 182, 185, nil, nil,
+ nil, nil, nil, 180, 184, nil, nil, 189, 172, 173,
+ 174, 176, 178, nil, 183, 187, nil, nil, nil, 184,
+ nil, 175, 189, 172, 173, 174, 176, 178, nil, 183,
+ 187, 181, 186, nil, nil, nil, 175, nil, nil, nil,
+ 177, 179, 182, 185, nil, nil, nil, 186, nil, 189,
+ 172, 173, 174, 176, 178, 177, 183, 187, nil, nil,
+ nil, nil, nil, 175, 180, 184, 186, nil, 189, 172,
+ 173, 174, 176, 178, 177, 183, 187, nil, nil, nil,
+ nil, 186, 175, 189, 172, 173, 174, 176, 178, 177,
+ 183, 187, nil, nil, nil, nil, nil, 175, nil, nil,
+ nil, nil, 189, 172, 173, 174, 176, 178, nil, 183,
+ 187, 280, nil, nil, nil, nil, 175, 189, 172, 173,
+ 174, 176, 178, nil, 183, 187, nil, nil, nil, nil,
+ 325, 175, 26, nil, 32, 1, nil, 8, 11, nil,
+ 18, nil, 23, nil, 29, nil, 2, nil, nil, 10,
+ 15, 26, 363, 32, 1, nil, 8, 11, nil, 18,
+ nil, 23, nil, 29, nil, 2, nil, nil, 10, 15,
+ nil, 382, nil, 26, nil, 32, 1, nil, 8, 11,
+ nil, 18, nil, 23, nil, 29, nil, 2, nil, nil,
+ 10, 15, 26, 380, 32, 1, nil, 8, 11, nil,
+ 18, nil, 23, nil, 29, nil, 2, nil, nil, 10,
+ 15, nil, 376, nil, 26, nil, 32, 1, nil, 8,
+ 11, nil, 18, nil, 23, nil, 29, nil, 2, nil,
+ nil, 10, 15, 26, 305, 32, 1, nil, 8, 11,
+ nil, 18, nil, 23, nil, 29, nil, 2, nil, nil,
+ 10, 15, nil, nil, nil, 26, nil, 32, 1, nil,
+ 8, 11, nil, 18, nil, 23, nil, 29, nil, 2,
+ nil, nil, 10, 15, 26, nil, 32, 1, nil, 8,
+ 11, nil, 18, nil, 23, nil, 29, nil, 2, nil,
+ nil, 10, 15, 26, nil, 32, 1, nil, 8, 11,
+ nil, 18, nil, 23, nil, 29, nil, 2, nil, nil,
+ 10, 15, 26, nil, 32, 1, nil, 8, 11, nil,
+ 18, nil, 23, nil, 29, nil, 2, nil, nil, 10,
+ 15, 189, 172, 173, 174, 176, 178, nil, 183, 187,
+ 189, 172, 173, 174, nil, 175, nil, 183, 187, 189,
+ 172, 173, 174, nil, 175, nil, 183, 187, nil, nil,
+ nil, nil, nil, 175 ]
racc_action_check = [
- 180, 180, 152, 86, 156, 106, 106, 272, 174, 7,
- 277, 277, 106, 180, 180, 65, 55, 277, 7, 7,
- 272, 86, 180, 180, 180, 180, 65, 296, 17, 80,
- 296, 65, 158, 95, 202, 202, 174, 174, 202, 218,
- 202, 55, 156, 106, 152, 156, 180, 180, 277, 219,
- 180, 180, 180, 180, 180, 180, 202, 180, 180, 181,
- 181, 368, 368, 239, 180, 156, 17, 202, 165, 17,
- 158, 202, 202, 158, 239, 202, 165, 182, 182, 239,
- 202, 202, 349, 182, 202, 349, 22, 202, 22, 17,
- 143, 243, 181, 158, 368, 202, 181, 181, 368, 368,
- 181, 22, 368, 143, 181, 181, 220, 368, 163, 181,
- 182, 368, 355, 355, 182, 182, 243, 243, 182, 163,
- 181, 62, 368, 182, 163, 22, 178, 182, 281, 281,
- 351, 351, 62, 221, 351, 281, 351, 62, 182, 178,
- 285, 285, 285, 285, 101, 355, 221, 285, 285, 355,
- 355, 224, 351, 355, 285, 341, 341, 300, 355, 341,
- 91, 341, 355, 351, 308, 300, 226, 351, 351, 308,
- 227, 351, 90, 355, 184, 184, 351, 351, 12, 122,
- 351, 171, 12, 351, 122, 171, 171, 229, 341, 12,
- 286, 351, 341, 341, 343, 343, 341, 184, 286, 1,
- 87, 341, 30, 1, 183, 341, 30, 184, 183, 183,
- 1, 184, 184, 30, 30, 184, 341, 196, 196, 184,
- 184, 196, 195, 196, 184, 195, 286, 286, 286, 286,
- 286, 286, 188, 286, 286, 184, 188, 188, 231, 196,
- 286, 120, 232, 197, 197, 120, 233, 197, 103, 197,
- 196, 85, 120, 120, 196, 196, 105, 43, 196, 280,
- 280, 43, 84, 196, 196, 197, 280, 196, 43, 43,
- 196, 81, 215, 23, 23, 78, 197, 23, 196, 250,
- 197, 197, 279, 279, 197, 252, 253, 279, 279, 197,
- 197, 77, 71, 197, 279, 23, 197, 160, 68, 26,
- 26, 160, 160, 26, 197, 26, 23, 268, 67, 234,
- 23, 23, 211, 234, 23, 274, 234, 66, 23, 23,
- 234, 26, 107, 23, 108, 198, 198, 109, 207, 198,
- 114, 198, 26, 115, 23, 119, 26, 26, 64, 121,
- 26, 35, 35, 35, 35, 26, 26, 198, 52, 26,
- 29, 29, 26, 51, 29, 50, 29, 127, 198, 132,
- 26, 36, 198, 198, 307, 307, 198, 133, 307, 136,
- 307, 198, 198, 138, 192, 198, 139, 33, 198, 34,
- 34, 34, 34, 29, 140, 142, 198, 29, 29, 305,
- 305, 29, 315, 305, 144, 305, 29, 307, 16, 327,
- 29, 307, 307, 199, 199, 307, 328, 199, 330, 199,
- 307, 29, 297, 297, 307, 331, 332, 297, 297, 337,
- 153, 175, 305, 154, 297, 307, 305, 305, 9, 288,
- 305, 28, 28, 28, 28, 305, 199, 288, 352, 305,
- 199, 199, 8, 356, 199, 298, 298, 173, 367, 199,
- 305, 172, 298, 199, 369, 200, 200, 3, 2, 200,
- 157, 200, 263, nil, 199, 288, 288, 288, 288, 288,
- 288, nil, 288, 288, nil, nil, nil, 200, 298, 288,
- nil, nil, 298, 298, nil, nil, 298, nil, 200, nil,
- nil, 298, 200, 200, nil, 298, 200, 4, 4, 4,
- 4, 200, 200, 39, 39, 200, 298, 39, 200, 39,
- 293, 293, 293, 293, 293, 293, 200, 293, 293, nil,
- 283, 283, 283, 283, 293, 39, nil, 283, 283, 201,
- 201, nil, nil, 201, 283, 201, 39, nil, nil, nil,
- 39, 39, nil, nil, 39, nil, nil, nil, nil, 39,
- 39, 201, nil, 39, nil, nil, 39, nil, nil, 46,
- 46, nil, 201, 46, 39, 46, 201, 201, nil, nil,
- 201, nil, nil, nil, nil, 201, 201, nil, nil, 201,
- nil, 46, 201, nil, nil, 47, 47, nil, nil, 47,
- 201, 47, 46, nil, nil, nil, 46, 46, nil, nil,
- 46, nil, nil, nil, nil, 46, 46, 47, nil, 46,
- 48, 48, 46, nil, 48, nil, 48, nil, 47, nil,
- 46, nil, 47, 47, 49, 49, 47, nil, 49, nil,
- nil, 47, 47, nil, nil, 47, nil, nil, 47, nil,
- nil, nil, nil, 48, nil, nil, 47, 48, 48, 176,
- 176, 48, nil, 176, nil, 176, 48, 49, nil, nil,
- 48, 49, 49, nil, nil, 49, nil, nil, nil, nil,
- 49, 48, nil, nil, 49, 203, 203, nil, nil, 203,
- nil, 203, 176, nil, nil, 49, 176, 176, nil, nil,
- 176, nil, nil, nil, nil, 176, nil, 203, nil, 176,
- nil, 204, 204, nil, nil, 204, nil, 204, 203, nil,
- 176, nil, 203, 203, nil, nil, 203, nil, nil, nil,
- nil, 203, 203, 204, nil, 203, nil, nil, 203, nil,
- nil, 205, 205, nil, 204, 205, 203, 205, 204, 204,
- nil, nil, 204, nil, nil, nil, nil, 204, 204, nil,
- nil, 204, nil, 205, 204, nil, nil, 100, 100, nil,
- nil, 100, 204, 100, 205, nil, nil, nil, 205, 205,
- nil, nil, 205, nil, nil, nil, nil, 205, 205, 100,
- nil, 205, 63, 63, 205, nil, 63, nil, 63, nil,
- 100, nil, 205, nil, 100, 100, nil, nil, 100, nil,
- nil, nil, nil, 100, 100, nil, nil, 100, 208, 208,
- 100, nil, 208, nil, 208, 63, nil, nil, 100, 63,
- 63, nil, nil, 63, nil, nil, nil, nil, 63, nil,
- 208, nil, 63, nil, 209, 209, nil, nil, 209, nil,
- 209, 208, nil, 63, nil, 208, 208, nil, nil, 208,
- nil, nil, 269, 269, 208, 208, 209, nil, 208, 276,
- 276, 208, nil, 276, nil, 276, nil, 209, nil, 208,
- nil, 209, 209, nil, nil, 209, nil, nil, nil, nil,
- 209, 209, nil, nil, 209, 269, nil, 209, nil, 269,
- 269, nil, 276, 269, nil, 209, 276, 276, 269, nil,
- 276, nil, 269, nil, nil, 276, 256, 256, nil, 276,
- 256, nil, 256, 269, nil, nil, nil, nil, nil, nil,
- 276, nil, nil, nil, nil, 74, 74, nil, 256, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 256,
- nil, nil, nil, 256, 256, nil, nil, 256, 74, nil,
- 254, 254, 256, 256, nil, nil, 256, nil, 74, 256,
- nil, nil, 74, 74, nil, nil, 74, 256, 75, 75,
- 74, 74, 75, 254, 75, 74, nil, nil, nil, nil,
- nil, nil, nil, 254, nil, nil, 74, 254, 254, nil,
- 75, 254, nil, 248, 248, 254, 254, 248, nil, 248,
- 254, 75, nil, 245, 245, 75, 75, nil, nil, 75,
- nil, 254, nil, nil, 75, 75, nil, nil, 75, 244,
- 244, 75, nil, nil, nil, nil, 248, nil, nil, 75,
- 248, 248, nil, nil, 248, nil, 245, nil, nil, 248,
- 245, 245, nil, 248, 245, nil, 225, 225, nil, 245,
- 225, nil, 244, 245, 248, nil, 244, 244, nil, nil,
- 244, nil, 82, 82, 245, 244, 82, nil, 82, 244,
- nil, nil, 210, 210, nil, nil, 210, nil, 210, 225,
- 244, nil, nil, 225, 225, nil, nil, 225, nil, nil,
- nil, nil, 225, nil, 210, 82, 225, nil, nil, 82,
- 82, nil, nil, 82, nil, 210, nil, 225, 82, 210,
- 210, nil, 82, 210, nil, nil, nil, nil, 210, 210,
- 213, 213, 210, 82, 213, 210, 213, 284, 284, 284,
- 284, 284, 284, 210, 284, 284, nil, nil, nil, 102,
- 102, 284, 213, 102, 102, 102, 230, 230, nil, nil,
- 230, nil, 230, 213, nil, nil, nil, 213, 213, nil,
- nil, 213, nil, nil, nil, nil, 213, 213, 214, 214,
- 213, nil, 102, 213, nil, nil, 102, 102, nil, 230,
- 102, 213, nil, 230, 230, 102, nil, 230, nil, 102,
- nil, nil, 230, 228, 228, nil, 230, 228, nil, 228,
- 102, 214, nil, nil, nil, 214, 214, 230, nil, 214,
- nil, 94, 94, nil, 214, 94, nil, 94, 214, nil,
- nil, nil, nil, nil, nil, nil, 228, nil, nil, 214,
- 228, 228, nil, 94, 228, nil, nil, nil, nil, 228,
- nil, 97, 97, 228, 94, 97, nil, 97, 94, 94,
- nil, nil, 94, nil, 228, nil, nil, 94, 94, nil,
- nil, 94, nil, 97, 94, nil, nil, 206, 206, nil,
- nil, 206, 94, 206, 97, nil, nil, nil, 97, 97,
- nil, nil, 97, nil, nil, nil, nil, 97, 97, 206,
- nil, 97, nil, nil, 97, nil, nil, nil, nil, nil,
- 206, nil, 97, nil, 206, 206, 111, nil, 206, nil,
- nil, nil, nil, 206, 206, 111, 111, 206, nil, nil,
- 206, nil, nil, nil, 111, 111, 111, 111, 206, nil,
- 124, 124, nil, nil, nil, nil, nil, nil, nil, 124,
- 124, 124, 124, nil, nil, nil, nil, nil, 111, 111,
- nil, nil, 111, 111, 111, 111, 111, 111, nil, 111,
- 111, nil, nil, 124, 124, nil, 111, 124, 124, 124,
- 124, 124, 124, nil, 124, 124, 130, 130, nil, nil,
- nil, 124, nil, nil, nil, 130, 130, 130, 130, nil,
- nil, 131, 131, nil, nil, nil, nil, nil, nil, nil,
- 131, 131, 131, 131, nil, nil, nil, nil, nil, 130,
- 130, nil, nil, 130, 130, 130, 130, 130, 130, nil,
- 130, 130, nil, nil, 131, 131, nil, 130, 131, 131,
- 131, 131, 131, 131, nil, 131, 131, 287, 287, nil,
- nil, nil, 131, nil, nil, nil, 287, 287, 287, 287,
- nil, nil, 186, 186, nil, nil, nil, nil, nil, nil,
- 186, 186, 186, 186, 186, nil, nil, nil, nil, nil,
- nil, 287, nil, nil, 287, 287, 287, 287, 287, 287,
- nil, 287, 287, nil, nil, 186, 186, nil, 287, 186,
- 186, 186, 186, 186, 186, nil, 186, 186, 291, 291,
- nil, nil, nil, 186, nil, nil, nil, 291, 291, 291,
- 291, nil, nil, 19, 292, 19, 19, nil, 19, 19,
- nil, 19, 292, 19, nil, 19, nil, 19, nil, nil,
- 19, 19, nil, 289, nil, 291, 291, 291, 291, 291,
- 291, 289, 291, 291, nil, nil, nil, nil, nil, 291,
- 292, 292, 292, 292, 292, 292, nil, 292, 292, nil,
- nil, 237, nil, nil, 292, nil, nil, nil, nil, 289,
- 289, 289, 289, 289, 289, nil, 289, 289, nil, nil,
- 372, nil, 237, 289, 237, 237, nil, 237, 237, nil,
- 237, nil, 237, nil, 237, nil, 237, nil, nil, 237,
- 237, 372, 378, 372, 372, nil, 372, 372, nil, 372,
- nil, 372, nil, 372, nil, 372, nil, nil, 372, 372,
- nil, 212, nil, 378, nil, 378, 378, nil, 378, 378,
- nil, 378, nil, 378, nil, 378, nil, 378, nil, nil,
- 378, 378, 212, 323, 212, 212, nil, 212, 212, nil,
- 212, nil, 212, nil, 212, nil, 212, nil, nil, 212,
- 212, nil, 374, nil, 323, nil, 323, 323, nil, 323,
- 323, nil, 323, nil, 323, nil, 323, nil, 323, nil,
- nil, 323, 323, 374, 380, 374, 374, nil, 374, 374,
- nil, 374, nil, 374, nil, 374, nil, 374, nil, nil,
- 374, 374, nil, 303, nil, 380, nil, 380, 380, nil,
- 380, 380, nil, 380, nil, 380, nil, 380, nil, 380,
- nil, nil, 380, 380, 303, 319, 303, 303, nil, 303,
- 303, nil, 303, nil, 303, nil, 303, nil, 303, nil,
- nil, 303, 303, nil, 362, nil, 319, nil, 319, 319,
- nil, 319, 319, nil, 319, nil, 319, nil, 319, nil,
- 319, nil, nil, 319, 319, 362, 217, 362, 362, nil,
- 362, 362, nil, 362, nil, 362, nil, 362, nil, 362,
- nil, nil, 362, 362, nil, 295, nil, 217, nil, 217,
- 217, nil, 217, 217, nil, 217, nil, 217, nil, 217,
- nil, 217, nil, nil, 217, 217, 295, nil, 295, 295,
- nil, 295, 295, nil, 295, nil, 295, nil, 295, nil,
- 295, nil, nil, 295, 295, 0, nil, 0, 0, nil,
- 0, 0, nil, 0, nil, 0, nil, 0, nil, 0,
- nil, nil, 0, 0 ]
+ 164, 164, 158, 154, 301, 27, 56, 27, 81, 214,
+ 285, 285, 301, 164, 164, 239, 293, 285, 18, 206,
+ 27, 213, 164, 164, 164, 164, 81, 206, 175, 175,
+ 194, 56, 175, 194, 175, 368, 368, 214, 214, 157,
+ 158, 293, 293, 158, 27, 154, 164, 164, 285, 144,
+ 164, 164, 164, 164, 164, 164, 18, 164, 164, 18,
+ 85, 175, 144, 158, 164, 175, 175, 272, 368, 175,
+ 83, 261, 368, 368, 175, 272, 368, 157, 175, 18,
+ 157, 368, 161, 161, 261, 368, 161, 216, 161, 175,
+ 1, 82, 356, 356, 1, 218, 368, 219, 203, 163,
+ 157, 1, 114, 272, 272, 272, 272, 272, 272, 203,
+ 272, 272, 163, 114, 203, 161, 122, 272, 114, 161,
+ 161, 122, 192, 161, 221, 356, 192, 192, 161, 356,
+ 356, 220, 161, 356, 290, 335, 335, 221, 356, 335,
+ 111, 335, 356, 161, 309, 290, 331, 331, 11, 309,
+ 290, 111, 11, 356, 329, 329, 111, 335, 329, 11,
+ 329, 48, 48, 103, 103, 48, 334, 48, 335, 334,
+ 103, 200, 335, 335, 262, 262, 335, 263, 263, 262,
+ 262, 335, 335, 48, 263, 335, 262, 329, 335, 224,
+ 280, 329, 329, 280, 48, 329, 335, 197, 48, 48,
+ 329, 103, 48, 227, 329, 295, 295, 48, 48, 87,
+ 229, 48, 307, 307, 48, 329, 307, 33, 307, 306,
+ 306, 33, 48, 306, 230, 306, 299, 299, 33, 33,
+ 225, 80, 232, 299, 225, 77, 46, 225, 295, 234,
+ 46, 225, 295, 295, 235, 307, 295, 46, 46, 307,
+ 307, 295, 306, 307, 75, 295, 306, 306, 307, 299,
+ 306, 212, 307, 299, 299, 306, 295, 299, 8, 306,
+ 23, 23, 299, 307, 23, 74, 299, 8, 8, 66,
+ 306, 249, 42, 252, 264, 264, 42, 299, 65, 166,
+ 166, 264, 23, 42, 42, 26, 26, 64, 89, 26,
+ 201, 26, 94, 23, 201, 201, 187, 23, 23, 169,
+ 101, 23, 102, 169, 169, 23, 23, 26, 105, 183,
+ 23, 53, 166, 52, 294, 294, 166, 166, 26, 50,
+ 166, 23, 26, 26, 166, 166, 26, 143, 106, 166,
+ 107, 26, 26, 29, 29, 26, 108, 29, 26, 29,
+ 166, 110, 279, 167, 167, 113, 26, 294, 115, 167,
+ 283, 294, 294, 281, 281, 294, 37, 211, 281, 281,
+ 294, 211, 211, 116, 294, 281, 29, 288, 170, 170,
+ 29, 29, 119, 32, 29, 294, 167, 121, 127, 29,
+ 167, 167, 297, 29, 167, 17, 287, 287, 133, 167,
+ 287, 170, 287, 167, 29, 3, 3, 3, 3, 304,
+ 13, 170, 12, 134, 167, 170, 170, 136, 320, 170,
+ 324, 172, 172, 170, 170, 172, 159, 172, 170, 287,
+ 140, 141, 155, 287, 287, 337, 342, 287, 346, 170,
+ 347, 349, 287, 172, 350, 351, 287, 45, 45, 5,
+ 357, 45, 142, 45, 172, 367, 147, 287, 172, 172,
+ 369, 2, 172, 4, 4, 4, 4, 172, 172, 45,
+ 146, 172, 379, 381, 172, nil, nil, 173, 173, nil,
+ 45, 173, 172, 173, 45, 45, nil, nil, 45, 31,
+ 31, 31, 31, 45, 45, nil, nil, 45, nil, 173,
+ 45, nil, nil, 47, 47, nil, nil, 47, 45, 47,
+ 173, nil, nil, nil, 173, 173, nil, nil, 173, 6,
+ 6, 6, 6, 173, 173, 47, nil, 173, nil, nil,
+ 173, nil, nil, 174, 174, nil, 47, 174, 173, 174,
+ 47, 47, nil, nil, 47, nil, nil, nil, nil, 47,
+ 47, nil, nil, 47, nil, 174, 47, nil, nil, 49,
+ 49, nil, nil, 49, 47, 49, 174, nil, nil, nil,
+ 174, 174, nil, nil, 174, nil, nil, 51, 51, 174,
+ 174, 51, nil, 174, 176, 176, 174, nil, 176, nil,
+ 176, nil, 49, nil, 174, nil, 49, 49, nil, nil,
+ 49, nil, nil, nil, nil, 49, 176, nil, nil, 49,
+ 51, nil, nil, nil, 51, 51, nil, 176, 51, nil,
+ 49, 176, 176, 51, nil, 176, nil, 51, nil, nil,
+ 176, 176, nil, nil, 176, 177, 177, 176, 51, 177,
+ nil, 177, nil, nil, nil, 176, nil, nil, nil, nil,
+ nil, nil, nil, nil, 112, 112, nil, 177, 112, nil,
+ 112, 259, 259, nil, nil, 259, nil, 259, 177, nil,
+ nil, nil, 177, 177, nil, nil, 177, nil, nil, 254,
+ 254, 177, 177, nil, nil, 177, nil, 112, 177, nil,
+ nil, 112, 112, nil, 259, 112, 177, nil, 259, 259,
+ 112, nil, 259, nil, 112, 70, 70, 259, nil, nil,
+ nil, 259, 254, nil, nil, 112, 254, 254, nil, nil,
+ 254, nil, 259, nil, nil, 254, 242, 242, 70, 254,
+ 242, nil, 242, nil, nil, nil, nil, nil, 70, nil,
+ 254, nil, 70, 70, nil, nil, 70, nil, 242, nil,
+ 70, 70, 71, 71, nil, 70, 71, nil, 71, 242,
+ nil, nil, nil, 242, 242, nil, 70, 242, nil, nil,
+ nil, nil, 242, 242, 71, nil, 242, 240, 240, 242,
+ nil, nil, nil, nil, nil, 71, nil, 242, nil, 71,
+ 71, nil, nil, 71, nil, nil, nil, nil, 71, 71,
+ 240, nil, 71, 178, 178, 71, nil, 178, nil, 178,
+ 240, nil, nil, 71, 240, 240, nil, nil, 240, nil,
+ nil, nil, 240, 240, nil, 178, nil, 240, 233, 233,
+ nil, nil, 233, nil, 233, nil, 178, nil, 240, nil,
+ 178, 178, 78, 78, 178, nil, 78, nil, 78, 178,
+ 178, nil, nil, 178, nil, nil, 178, nil, nil, nil,
+ nil, 233, nil, nil, 178, 233, 233, 231, 231, 233,
+ nil, 231, nil, 231, 233, 78, nil, nil, 233, 78,
+ 78, 228, 228, 78, nil, 228, nil, nil, 78, 233,
+ nil, nil, 78, nil, nil, nil, nil, nil, nil, nil,
+ 231, nil, nil, 78, 231, 231, nil, nil, 231, nil,
+ nil, 215, 215, 231, 228, nil, nil, 231, 228, 228,
+ nil, nil, 228, nil, nil, nil, nil, 228, 231, 179,
+ 179, 228, nil, 179, nil, 179, nil, nil, nil, nil,
+ nil, nil, 228, nil, 215, nil, nil, nil, 215, 215,
+ nil, 179, 215, nil, nil, nil, nil, 215, nil, 185,
+ 185, 215, 179, 185, nil, 185, 179, 179, nil, nil,
+ 179, nil, 215, nil, nil, 179, 179, nil, nil, 179,
+ nil, 185, 179, nil, nil, 181, 181, nil, nil, 181,
+ 179, 181, 185, nil, nil, nil, 185, 185, nil, nil,
+ 185, nil, nil, nil, nil, 185, 185, 181, nil, 185,
+ nil, nil, 185, nil, nil, 189, 189, nil, 181, 189,
+ 185, 189, 181, 181, nil, nil, 181, nil, nil, nil,
+ nil, 181, 181, nil, nil, 181, nil, 189, 181, nil,
+ nil, 90, 90, nil, nil, 90, 181, 90, 189, nil,
+ nil, nil, 189, 189, nil, nil, 189, nil, nil, nil,
+ nil, 189, 189, 90, nil, 189, nil, nil, 189, nil,
+ nil, 182, 182, nil, 90, 182, 189, 182, 90, 90,
+ nil, nil, 90, nil, nil, nil, nil, 90, 90, nil,
+ nil, 90, nil, 182, 90, nil, nil, 184, 184, nil,
+ nil, 184, 90, 184, 182, nil, nil, nil, 182, 182,
+ nil, nil, 182, nil, nil, nil, nil, 182, 182, 184,
+ nil, 182, nil, nil, 182, nil, nil, 95, 95, nil,
+ 184, 95, 182, 95, 184, 184, nil, nil, 184, nil,
+ nil, nil, nil, 184, 184, nil, nil, 184, nil, 95,
+ 184, nil, nil, 99, 99, nil, nil, 99, 184, 99,
+ 95, nil, nil, nil, 95, 95, nil, nil, 95, nil,
+ nil, nil, nil, 95, 95, 99, nil, 95, 100, 100,
+ 95, nil, 100, 100, 100, nil, 99, nil, 95, nil,
+ 99, 99, nil, nil, 99, nil, nil, nil, nil, 99,
+ 99, nil, nil, 99, 186, 186, 99, nil, 186, nil,
+ 186, 100, nil, nil, 99, 100, 100, nil, nil, 100,
+ nil, nil, nil, nil, 100, nil, 186, nil, 100, nil,
+ 180, 180, nil, nil, 180, nil, 180, 186, nil, 100,
+ nil, 186, 186, nil, nil, 186, nil, nil, nil, nil,
+ 186, 186, 180, nil, 186, nil, nil, 186, nil, nil,
+ nil, nil, nil, 180, nil, 186, nil, 180, 180, 91,
+ nil, 180, nil, nil, nil, nil, 180, 180, 91, 91,
+ 180, nil, nil, 180, nil, nil, nil, 91, 91, 91,
+ 91, 180, nil, 190, 190, nil, nil, nil, nil, nil,
+ nil, 190, 190, 190, 190, 190, nil, nil, nil, nil,
+ nil, 91, 91, nil, nil, 91, 91, 91, 91, 91,
+ 91, nil, 91, 91, nil, nil, 190, 190, nil, 91,
+ 190, 190, 190, 190, 190, 190, nil, 190, 190, 274,
+ 274, nil, nil, nil, 190, nil, nil, nil, 274, 274,
+ 274, 274, nil, nil, 132, 132, nil, nil, nil, nil,
+ nil, nil, nil, 132, 132, 132, 132, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, 274, 274, 274, 274,
+ 274, 274, nil, 274, 274, nil, nil, 132, 132, nil,
+ 274, 132, 132, 132, 132, 132, 132, nil, 132, 132,
+ 131, 131, nil, nil, nil, 132, nil, nil, nil, 131,
+ 131, 131, 131, nil, nil, 270, 270, nil, nil, nil,
+ nil, nil, nil, nil, 270, 270, 270, 270, nil, nil,
+ nil, nil, nil, 131, 131, nil, nil, 131, 131, 131,
+ 131, 131, 131, nil, 131, 131, nil, nil, nil, 270,
+ nil, 131, 270, 270, 270, 270, 270, 270, nil, 270,
+ 270, 129, 129, nil, nil, nil, 270, nil, nil, nil,
+ 129, 129, 129, 129, nil, nil, nil, 269, nil, 276,
+ 276, 276, 276, 276, 276, 269, 276, 276, nil, nil,
+ nil, nil, nil, 276, 129, 129, 275, nil, 129, 129,
+ 129, 129, 129, 129, 275, 129, 129, nil, nil, nil,
+ nil, 271, 129, 269, 269, 269, 269, 269, 269, 271,
+ 269, 269, nil, nil, nil, nil, nil, 269, nil, nil,
+ nil, nil, 275, 275, 275, 275, 275, 275, nil, 275,
+ 275, 188, nil, nil, nil, nil, 275, 271, 271, 271,
+ 271, 271, 271, nil, 271, 271, nil, nil, nil, nil,
+ 238, 271, 188, nil, 188, 188, nil, 188, 188, nil,
+ 188, nil, 188, nil, 188, nil, 188, nil, nil, 188,
+ 188, 238, 311, 238, 238, nil, 238, 238, nil, 238,
+ nil, 238, nil, 238, nil, 238, nil, nil, 238, 238,
+ nil, 375, nil, 311, nil, 311, 311, nil, 311, 311,
+ nil, 311, nil, 311, nil, 311, nil, 311, nil, nil,
+ 311, 311, 375, 372, 375, 375, nil, 375, 375, nil,
+ 375, nil, 375, nil, 375, nil, 375, nil, nil, 375,
+ 375, nil, 362, nil, 372, nil, 372, 372, nil, 372,
+ 372, nil, 372, nil, 372, nil, 372, nil, 372, nil,
+ nil, 372, 372, 362, 217, 362, 362, nil, 362, 362,
+ nil, 362, nil, 362, nil, 362, nil, 362, nil, nil,
+ 362, 362, nil, nil, nil, 217, nil, 217, 217, nil,
+ 217, 217, nil, 217, nil, 217, nil, 217, nil, 217,
+ nil, nil, 217, 217, 0, nil, 0, 0, nil, 0,
+ 0, nil, 0, nil, 0, nil, 0, nil, 0, nil,
+ nil, 0, 0, 20, nil, 20, 20, nil, 20, 20,
+ nil, 20, nil, 20, nil, 20, nil, 20, nil, nil,
+ 20, 20, 278, nil, 278, 278, nil, 278, 278, nil,
+ 278, nil, 278, nil, 278, nil, 278, nil, nil, 278,
+ 278, 267, 267, 267, 267, 267, 267, nil, 267, 267,
+ 266, 266, 266, 266, nil, 267, nil, 266, 266, 268,
+ 268, 268, 268, nil, 266, nil, 268, 268, nil, nil,
+ nil, nil, nil, 268 ]
racc_action_pointer = [
- 1795, 163, 443, 413, 433, nil, nil, 3, 434, 420,
- nil, nil, 142, nil, nil, nil, 398, 26, nil, 1483,
- nil, nil, 80, 271, nil, nil, 297, nil, 367, 348,
- 166, nil, nil, 375, 315, 277, 337, nil, nil, 501,
- nil, nil, nil, 221, nil, nil, 557, 583, 608, 622,
- 315, 329, 348, nil, nil, 4, nil, nil, nil, nil,
- nil, nil, 97, 780, 298, -9, 309, 302, 275, nil,
- nil, 286, nil, nil, 923, 966, nil, 279, 269, nil,
- 6, 248, 1060, nil, 239, 245, -3, 177, nil, nil,
- 149, 137, nil, nil, 1209, 10, nil, 1239, nil, nil,
- 755, 121, 1137, 225, nil, 233, 3, 299, 301, 304,
- nil, 1298, nil, nil, 322, 325, nil, nil, nil, 323,
- 205, 331, 144, nil, 1313, nil, nil, 351, nil, nil,
- 1359, 1374, 352, 344, nil, nil, 328, nil, 350, 364,
- 361, nil, 362, 79, 374, nil, nil, nil, nil, nil,
- nil, nil, -9, 408, 386, nil, 2, 452, 30, nil,
- 251, nil, nil, 84, nil, 50, nil, nil, nil, nil,
- nil, 174, 439, 436, -14, 381, 647, nil, 114, nil,
- -4, 57, 75, 197, 172, nil, 1435, nil, 225, nil,
- nil, nil, 363, nil, nil, 213, 215, 241, 323, 401,
- 453, 527, 32, 673, 699, 729, 1265, 265, 806, 832,
- 1070, 249, 1612, 1118, 1166, 270, nil, 1757, 24, 24,
- 91, 121, nil, nil, 142, 1044, 126, 161, 1191, 147,
- 1144, 198, 233, 238, 273, nil, nil, 1552, nil, 39,
- nil, nil, nil, 66, 1017, 1001, nil, nil, 991, nil,
- 270, nil, 273, 279, 948, nil, 904, nil, nil, nil,
- nil, nil, nil, 451, nil, nil, nil, nil, 283, 850,
- nil, nil, -5, nil, 308, nil, 857, 8, nil, 226,
- 198, 67, nil, 466, 1073, 86, 172, 1420, 411, 1515,
- nil, 1481, 1496, 456, nil, 1776, -4, 356, 443, nil,
- 145, nil, nil, 1694, nil, 387, nil, 362, 129, nil,
- nil, nil, nil, nil, nil, 380, nil, nil, nil, 1716,
- nil, nil, nil, 1634, nil, nil, nil, 376, 383, nil,
- 385, 392, 393, nil, nil, nil, nil, 410, nil, nil,
- nil, 153, nil, 183, nil, nil, nil, nil, nil, 51,
- nil, 128, 430, nil, nil, 110, 435, nil, nil, nil,
- nil, nil, 1735, nil, nil, nil, nil, 439, 59, 445,
- nil, nil, 1571, nil, 1653, nil, nil, nil, 1593, nil,
- 1675, nil, nil, nil ]
+ 1674, 54, 417, 341, 399, 434, 455, nil, 262, nil,
+ nil, 112, 404, 402, nil, nil, nil, 395, 16, nil,
+ 1693, nil, nil, 268, nil, nil, 293, -1, nil, 341,
+ nil, 425, 381, 181, nil, nil, nil, 342, nil, nil,
+ nil, nil, 246, nil, nil, 445, 200, 501, 159, 557,
+ 305, 575, 283, 321, nil, nil, -6, nil, nil, nil,
+ nil, nil, nil, nil, 291, 265, 273, nil, nil, nil,
+ 703, 750, nil, nil, 269, 242, nil, 212, 840, nil,
+ 208, 2, 68, 64, nil, 37, nil, 186, nil, 275,
+ 1039, 1261, nil, nil, 279, 1125, nil, nil, nil, 1151,
+ 1176, 287, 289, 161, nil, 295, 315, 317, 323, nil,
+ 343, 116, 652, 315, 78, 350, 361, nil, nil, 374,
+ nil, 379, 81, nil, nil, nil, nil, 382, nil, 1444,
+ nil, 1383, 1337, 391, 376, nil, 394, nil, nil, nil,
+ 389, 408, 440, 314, 38, nil, 447, 436, nil, nil,
+ nil, nil, nil, nil, -8, 420, nil, 37, 0, 418,
+ nil, 80, nil, 87, -4, nil, 287, 351, nil, 302,
+ 376, nil, 419, 475, 531, 26, 582, 633, 801, 927,
+ 1228, 983, 1069, 256, 1095, 957, 1202, 243, 1532, 1013,
+ 1276, nil, 115, nil, 21, nil, nil, 186, nil, nil,
+ 131, 254, nil, 74, nil, nil, 1, nil, nil, nil,
+ nil, 360, 249, 10, -13, 909, 85, 1655, 80, 82,
+ 106, 112, nil, nil, 181, 194, nil, 194, 879, 170,
+ 215, 865, 192, 826, 199, 235, nil, nil, 1551, 8,
+ 775, nil, 724, nil, nil, nil, nil, nil, nil, 270,
+ nil, nil, 259, nil, 677, nil, nil, nil, nil, 659,
+ nil, 59, 118, 116, 223, nil, 1716, 1707, 1725, 1459,
+ 1398, 1493, 49, nil, 1322, 1478, 1425, nil, 1712, 343,
+ 159, 307, nil, 353, nil, 8, nil, 394, 365, nil,
+ 110, nil, nil, -9, 322, 203, nil, 383, nil, 224,
+ nil, -8, nil, nil, 400, nil, 217, 210, nil, 109,
+ nil, 1573, nil, nil, nil, nil, nil, nil, nil, nil,
+ 406, nil, nil, nil, 411, nil, nil, nil, nil, 152,
+ nil, 135, nil, nil, 135, 133, nil, 427, nil, nil,
+ nil, nil, 427, nil, nil, nil, 415, 417, nil, 418,
+ 421, 422, nil, nil, nil, nil, 90, 442, nil, nil,
+ nil, nil, 1633, nil, nil, nil, nil, 446, 33, 451,
+ nil, nil, 1614, nil, nil, 1592, nil, nil, nil, 463,
+ nil, 464, nil, nil, nil ]
racc_action_default = [
- -196, -233, -233, -50, -233, -8, -9, -233, -233, -22,
- -10, -187, -188, -11, -185, -12, -233, -233, -13, -1,
- -14, -2, -233, -186, -15, -3, -233, -16, -5, -233,
- -233, -17, -6, -233, -18, -7, -196, -188, -186, -233,
- -51, -26, -27, -233, -24, -25, -233, -233, -233, -85,
- -92, -196, -233, -195, -193, -196, -189, -191, -192, -221,
- -194, -4, -196, -233, -85, -196, -53, -231, -42, -174,
- -43, -213, -117, -33, -233, -233, -44, -31, -74, -32,
- -233, -36, -233, -122, -37, -233, -73, -38, -172, -72,
- -39, -40, -173, -41, -233, -103, -111, -233, -132, -112,
- -233, -104, -233, -108, -110, -105, -233, -114, -106, -113,
- -109, -233, -125, -107, -233, -233, -49, -175, -176, -178,
- -233, -233, -197, -198, -83, -19, -22, -186, -21, -23,
- -82, -84, -233, -75, -86, -81, -70, -74, -76, -219,
- -79, -68, -77, -73, -233, -171, -170, -80, -78, -90,
- -91, -93, -233, -219, -196, 384, -233, -233, -233, -207,
- -233, -57, -213, -196, -59, -233, -66, -65, -56, -73,
- -95, -233, -219, -233, -233, -92, -233, -30, -233, -118,
- -233, -233, -233, -233, -233, -142, -233, -149, -233, -216,
- -229, -225, -233, -228, -224, -233, -233, -233, -233, -233,
- -233, -233, -233, -233, -233, -233, -233, -233, -233, -233,
- -233, -233, -233, -233, -233, -233, -20, -233, -206, -233,
- -204, -233, -201, -230, -233, -71, -220, -233, -233, -85,
- -233, -220, -233, -233, -233, -209, -190, -233, -208, -233,
- -54, -62, -61, -233, -233, -233, -217, -218, -233, -124,
- -233, -55, -219, -233, -233, -28, -233, -120, -119, -35,
- -34, -168, -166, -233, -169, -160, -167, -161, -73, -233,
- -123, -116, -233, -152, -218, -214, -233, -233, -222, -137,
- -139, -138, -133, -140, -144, -141, -146, -151, -148, -145,
- -134, -150, -147, -143, -135, -233, -128, -136, -233, -154,
- -233, -158, -177, -233, -180, -233, -199, -233, -233, -200,
- -45, -69, -87, -46, -88, -219, -89, -94, -48, -233,
- -211, -210, -212, -233, -184, -58, -60, -97, -98, -63,
- -102, -99, -100, -101, -64, -96, -47, -233, -232, -29,
- -121, -233, -163, -219, -115, -215, -227, -226, -223, -128,
- -127, -233, -233, -155, -153, -233, -233, -179, -205, -203,
- -202, -67, -233, -182, -183, -52, -165, -218, -233, -233,
- -126, -129, -233, -159, -233, -181, -164, -162, -233, -131,
- -233, -157, -130, -156 ]
+ -197, -234, -51, -19, -8, -234, -234, -9, -234, -10,
+ -188, -189, -234, -23, -11, -186, -12, -234, -234, -13,
+ -1, -14, -2, -187, -15, -3, -234, -234, -16, -234,
+ -17, -6, -234, -234, -18, -7, -189, -197, -187, -52,
+ -27, -28, -234, -25, -26, -234, -234, -234, -234, -234,
+ -197, -86, -93, -234, -196, -194, -197, -190, -192, -193,
+ -222, -195, -4, -42, -232, -43, -214, -175, -118, -44,
+ -234, -234, -45, -34, -75, -32, -33, -234, -234, -123,
+ -37, -74, -38, -234, -73, -39, -173, -40, -174, -41,
+ -234, -234, -126, -108, -104, -234, -112, -133, -113, -234,
+ -234, -105, -109, -234, -111, -106, -115, -107, -114, -110,
+ -54, -197, -234, -86, -197, -234, -179, -176, -177, -234,
+ -50, -234, -198, -199, -24, -21, -23, -187, -22, -84,
+ -20, -83, -85, -234, -197, -79, -76, -87, -82, -75,
+ -71, -77, -220, -80, -74, -69, -78, -234, -172, -171,
+ -81, -91, -92, -94, -234, -220, 385, -234, -234, -234,
+ -208, -234, -31, -234, -234, -119, -234, -234, -96, -234,
+ -234, -143, -234, -234, -234, -234, -234, -234, -234, -234,
+ -234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
+ -234, -150, -234, -217, -234, -230, -226, -234, -229, -225,
+ -93, -234, -214, -197, -58, -60, -234, -67, -57, -74,
+ -66, -234, -220, -234, -234, -234, -234, -234, -207, -205,
+ -234, -234, -202, -231, -234, -234, -210, -234, -72, -221,
+ -234, -234, -86, -234, -221, -234, -191, -209, -234, -234,
+ -234, -29, -234, -121, -120, -36, -35, -169, -167, -234,
+ -170, -161, -74, -168, -234, -162, -218, -219, -124, -234,
+ -117, -234, -138, -140, -139, -134, -141, -145, -142, -147,
+ -152, -149, -146, -135, -151, -148, -144, -136, -5, -234,
+ -129, -137, -153, -219, -215, -234, -223, -234, -220, -55,
+ -234, -63, -62, -234, -234, -234, -125, -234, -56, -234,
+ -155, -234, -159, -178, -234, -181, -234, -234, -200, -234,
+ -201, -234, -212, -213, -211, -46, -70, -88, -47, -89,
+ -220, -90, -95, -49, -234, -185, -233, -30, -122, -234,
+ -164, -220, -97, -116, -129, -234, -128, -234, -216, -227,
+ -224, -228, -234, -59, -61, -102, -98, -99, -64, -103,
+ -100, -101, -65, -48, -156, -154, -234, -234, -180, -206,
+ -204, -203, -234, -183, -68, -184, -166, -219, -234, -234,
+ -127, -130, -234, -53, -160, -234, -182, -165, -163, -234,
+ -132, -234, -158, -131, -157 ]
racc_goto_table = [
- 22, 9, 68, 112, 53, 118, 61, 36, 91, 222,
- 19, 267, 70, 93, 2, 227, 139, 191, 51, 22,
- 9, 179, 77, 56, 73, 149, 21, 141, 133, 232,
- 115, 172, 153, 2, 146, 263, 125, 116, 135, 148,
- 147, 299, 129, 22, 126, 260, 160, 350, 250, 174,
- 128, 171, 43, 68, 121, 329, 334, 298, 368, 91,
- 258, 265, 123, 70, 93, 317, 343, 301, 136, 154,
- 183, 119, 224, 178, 233, 73, 55, 123, 157, 66,
- 238, 159, 120, 219, 221, 190, 325, 321, 195, 16,
- 188, nil, nil, nil, nil, nil, nil, nil, 342, nil,
- 370, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, 216, nil, nil, nil, nil, 260, 129,
- 22, 126, 263, nil, nil, 353, nil, 128, 337, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 81,
- nil, nil, nil, 53, nil, 53, nil, 243, nil, nil,
- 149, 301, nil, nil, nil, nil, nil, 252, nil, nil,
- 68, 261, 236, 68, nil, 138, 91, 146, nil, 91,
- 70, 93, nil, 70, 93, nil, nil, nil, 166, nil,
- 235, 166, 259, 272, nil, 73, nil, 302, 347, nil,
- 81, 361, nil, 261, 290, 360, 315, 376, 294, 146,
- nil, 312, 340, 311, 133, nil, 149, nil, 373, nil,
- 146, nil, 22, 9, 135, 148, 147, 22, 9, 369,
- nil, 263, 295, 327, 327, nil, 2, 303, nil, 146,
- 146, 2, nil, 68, 333, 333, nil, 22, 9, 91,
- 320, 88, nil, 70, 93, nil, nil, 323, 261, nil,
- nil, 2, nil, nil, 146, 259, 190, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, 88, nil, nil,
- nil, nil, nil, nil, nil, 87, nil, 261, nil, 166,
- nil, nil, 61, 146, nil, nil, nil, nil, nil, nil,
- 61, nil, 88, nil, nil, 22, 9, 81, 262, nil,
- 81, 142, nil, 22, 9, nil, nil, nil, nil, 2,
- 61, nil, nil, nil, nil, nil, nil, 2, nil, 22,
- 9, nil, nil, 22, 9, nil, 87, nil, 371, 362,
- 262, nil, nil, 2, 261, nil, nil, 2, nil, nil,
- 146, 138, nil, nil, nil, nil, nil, 261, nil, 61,
- nil, nil, nil, 146, nil, 166, nil, nil, nil, nil,
- 328, 328, 22, 9, 114, 61, nil, 61, nil, 84,
- 81, nil, 22, 9, 22, 9, 2, 90, 22, 9,
- 22, 9, 378, 132, 380, 262, 2, nil, 2, nil,
- nil, nil, 2, nil, 2, 140, nil, nil, 170, 88,
- 88, nil, 88, 145, nil, nil, nil, nil, 167, nil,
- nil, 167, nil, nil, 262, nil, nil, 170, nil, nil,
- 84, nil, nil, nil, nil, nil, nil, nil, 90, nil,
- nil, nil, 88, 87, 266, nil, 87, 170, nil, nil,
- nil, nil, nil, 88, nil, nil, nil, nil, nil, nil,
+ 27, 13, 5, 37, 62, 255, 249, 20, 118, 196,
+ 92, 89, 142, 50, 155, 300, 69, 63, 222, 336,
+ 27, 13, 5, 165, 73, 75, 57, 279, 348, 352,
+ 246, 151, 145, 119, 343, 150, 121, 230, 65, 149,
+ 299, 22, 27, 126, 138, 135, 27, 126, 201, 134,
+ 235, 214, 120, 87, 302, 86, 304, 244, 89, 42,
+ 169, 128, 46, 69, 63, 128, 136, 251, 368, 331,
+ 322, 73, 163, 370, 212, 125, 124, 324, 123, 130,
+ 124, 148, 192, 86, 116, 65, 140, 224, 56, 159,
+ 227, 123, 330, 249, 211, 237, 220, 160, 221, 354,
+ 87, 110, 86, 115, 246, 314, 194, 297, 17, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, 195, nil,
+ nil, nil, nil, 133, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, 54, nil, nil, nil, 302, nil,
+ 293, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, 168, nil, 89, 149, nil, nil, 89, 69,
+ 63, nil, 288, 69, 63, 236, nil, 245, nil, nil,
+ nil, 73, 261, 82, 168, 226, nil, nil, nil, 151,
+ nil, 65, 247, 342, nil, 65, 168, nil, 27, 13,
+ 5, 339, 303, 320, 328, 374, 87, 148, 86, 86,
+ 87, 143, 86, 149, 80, 361, 377, 249, 317, 316,
+ nil, 379, 150, 151, 381, 364, 149, 27, 13, 5,
+ 82, 138, 135, nil, nil, nil, 369, 312, 89, nil,
+ 247, nil, 141, 69, 63, 239, nil, nil, 27, 13,
+ 5, 245, 149, 136, nil, 148, nil, 86, nil, 265,
+ nil, 80, nil, nil, nil, 65, nil, nil, 148, nil,
+ 86, 210, 62, nil, 210, nil, nil, nil, 85, 247,
+ 87, nil, 86, 54, 54, nil, nil, nil, 27, 13,
+ 5, nil, 149, 149, 148, nil, 86, 149, 345, 345,
+ nil, nil, 207, nil, nil, 207, 146, nil, nil, 273,
+ 195, nil, nil, 277, nil, 319, nil, 321, nil, 346,
+ 346, 27, 13, 5, 247, 85, 82, 250, 362, 371,
+ 82, nil, nil, nil, 351, 351, 86, 86, nil, 148,
+ nil, 86, nil, 332, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, 149, nil, 62, 80, 248, nil,
+ nil, 80, nil, 210, nil, nil, 149, nil, nil, nil,
+ nil, 341, 27, 13, 5, 250, nil, nil, nil, nil,
+ nil, 247, 27, 13, 5, 27, 13, 5, 143, nil,
+ 359, 360, nil, 247, 207, nil, 148, nil, 86, nil,
+ 82, nil, 129, nil, 131, 132, 248, nil, 148, nil,
+ 86, nil, nil, 366, 250, nil, nil, nil, nil, 141,
+ nil, 85, 253, nil, nil, 85, nil, nil, 164, nil,
+ nil, 80, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, 248, nil, 171, nil, nil,
+ 210, nil, 190, nil, 349, 349, 191, nil, nil, 250,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 88, 88, nil, nil, 266, nil, nil, nil,
- nil, 262, 88, nil, nil, nil, nil, 142, nil, nil,
- nil, nil, nil, nil, 262, nil, nil, 88, nil, nil,
- nil, nil, nil, nil, nil, nil, 331, 331, nil, nil,
- nil, nil, nil, nil, nil, nil, 87, nil, nil, 167,
- nil, 253, nil, nil, nil, nil, 88, nil, nil, nil,
- nil, 266, nil, nil, nil, nil, nil, 84, 264, nil,
- 84, nil, nil, nil, 282, 90, 145, nil, 90, nil,
+ 253, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, 207, nil, 146, nil, 347, 347, nil, nil, nil,
+ 248, nil, nil, nil, nil, 85, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 253,
+ nil, nil, nil, nil, nil, nil, 250, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, 250, 262,
+ 263, 264, nil, 266, 267, 268, 269, 270, 271, 272,
+ nil, 274, 275, 276, nil, nil, 281, 248, nil, 350,
+ 350, nil, nil, nil, 253, nil, nil, nil, nil, 248,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 266, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 264, nil, nil, 314, nil, 316, nil, 124, 145, nil,
- nil, 140, nil, 88, 130, 131, nil, nil, nil, 145,
- nil, nil, nil, 335, nil, 167, 88, nil, nil, nil,
- 330, 330, nil, nil, nil, nil, nil, nil, 332, 332,
- 84, nil, nil, 180, nil, nil, nil, 266, 90, nil,
- nil, 346, nil, nil, nil, 264, nil, nil, nil, nil,
- 266, nil, 185, 145, nil, 186, nil, nil, 187, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 358, nil, 359, nil, 264, nil, nil, nil, nil, nil,
- nil, nil, 145, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, 366, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 164,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 264, nil, nil, nil, nil, nil, nil, nil, 145,
- nil, nil, nil, nil, 264, nil, nil, nil, nil, nil,
- nil, nil, 145, nil, 279, 280, 281, nil, 283, 284,
- 285, 286, 287, 288, 289, nil, 291, 292, 293, nil,
- nil, 297, 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, nil,
- nil, nil, nil, nil, 180 ]
+ nil, 253, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, 253 ]
racc_goto_check = [
- 37, 21, 30, 62, 64, 72, 4, 32, 28, 82,
- 2, 70, 31, 29, 52, 36, 35, 85, 32, 37,
- 21, 60, 22, 78, 21, 53, 3, 47, 30, 36,
- 37, 35, 38, 52, 28, 68, 19, 5, 31, 29,
- 50, 66, 7, 37, 21, 23, 41, 63, 36, 41,
- 5, 57, 20, 30, 74, 46, 46, 65, 58, 28,
- 61, 69, 3, 31, 29, 56, 71, 68, 33, 74,
- 57, 73, 34, 22, 75, 21, 76, 3, 77, 40,
- 79, 3, 20, 80, 81, 30, 42, 83, 84, 1,
- 57, nil, nil, nil, nil, nil, nil, nil, 70, nil,
- 63, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, 19, nil, nil, nil, nil, 23, 7,
- 37, 21, 68, nil, nil, 66, nil, 5, 36, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 24,
- nil, nil, nil, 64, nil, 64, nil, 41, nil, nil,
- 53, 68, nil, nil, nil, nil, nil, 38, nil, nil,
- 30, 30, 78, 30, nil, 24, 28, 28, nil, 28,
- 31, 29, nil, 31, 29, nil, nil, nil, 24, nil,
- 3, 24, 21, 22, nil, 21, nil, 72, 85, nil,
- 24, 36, nil, 30, 64, 82, 35, 70, 64, 28,
- nil, 53, 60, 47, 30, nil, 53, nil, 68, nil,
- 28, nil, 37, 21, 31, 29, 50, 37, 21, 36,
- nil, 68, 2, 30, 30, nil, 52, 2, nil, 28,
- 28, 52, nil, 30, 29, 29, nil, 37, 21, 28,
- 32, 49, nil, 31, 29, nil, nil, 2, 30, nil,
- nil, 52, nil, nil, 28, 21, 30, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, 49, nil, nil,
- nil, nil, nil, nil, nil, 26, nil, 30, nil, 24,
- nil, nil, 4, 28, nil, nil, nil, nil, nil, nil,
- 4, nil, 49, nil, nil, 37, 21, 24, 24, nil,
- 24, 26, nil, 37, 21, nil, nil, nil, nil, 52,
- 4, nil, nil, nil, nil, nil, nil, 52, nil, 37,
- 21, nil, nil, 37, 21, nil, 26, nil, 62, 2,
- 24, nil, nil, 52, 30, nil, nil, 52, nil, nil,
- 28, 24, nil, nil, nil, nil, nil, 30, nil, 4,
- nil, nil, nil, 28, nil, 24, nil, nil, nil, nil,
- 24, 24, 37, 21, 54, 4, nil, 4, nil, 25,
- 24, nil, 37, 21, 37, 21, 52, 27, 37, 21,
- 37, 21, 2, 54, 2, 24, 52, nil, 52, nil,
- nil, nil, 52, nil, 52, 25, nil, nil, 54, 49,
- 49, nil, 49, 27, nil, nil, nil, nil, 25, nil,
- nil, 25, nil, nil, 24, nil, nil, 54, nil, nil,
- 25, nil, nil, nil, nil, nil, nil, nil, 27, nil,
- nil, nil, 49, 26, 26, nil, 26, 54, nil, nil,
- nil, nil, nil, 49, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, 49, 49, nil, nil, 26, nil, nil, nil,
- nil, 24, 49, nil, nil, nil, nil, 26, nil, nil,
- nil, nil, nil, nil, 24, nil, nil, 49, nil, nil,
- nil, nil, nil, nil, nil, nil, 26, 26, nil, nil,
- nil, nil, nil, nil, nil, nil, 26, nil, nil, 25,
- nil, 54, nil, nil, nil, nil, 49, nil, nil, nil,
- nil, 26, nil, nil, nil, nil, nil, 25, 25, nil,
- 25, nil, nil, nil, 54, 27, 27, nil, 27, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 26, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 25, nil, nil, 54, nil, 54, nil, 51, 27, nil,
- nil, 25, nil, 49, 51, 51, nil, nil, nil, 27,
- nil, nil, nil, 54, nil, 25, 49, nil, nil, nil,
- 25, 25, nil, nil, nil, nil, nil, nil, 27, 27,
- 25, nil, nil, 51, nil, nil, nil, 26, 27, nil,
- nil, 54, nil, nil, nil, 25, nil, nil, nil, nil,
- 26, nil, 51, 27, nil, 51, nil, nil, 51, nil,
+ 38, 22, 53, 33, 4, 71, 69, 2, 73, 86,
+ 63, 29, 36, 33, 39, 67, 32, 30, 83, 64,
+ 38, 22, 53, 61, 22, 23, 79, 5, 47, 47,
+ 24, 54, 48, 38, 43, 51, 75, 37, 31, 29,
+ 66, 3, 38, 22, 32, 30, 38, 22, 42, 75,
+ 37, 42, 6, 28, 69, 50, 5, 62, 29, 21,
+ 58, 6, 21, 32, 30, 6, 31, 70, 59, 72,
+ 57, 22, 23, 64, 36, 20, 8, 5, 3, 20,
+ 8, 28, 58, 50, 74, 31, 34, 76, 77, 78,
+ 35, 3, 71, 69, 58, 80, 81, 3, 82, 67,
+ 28, 41, 50, 55, 24, 84, 85, 37, 1, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, 31, nil,
+ nil, nil, nil, 55, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, 65, nil, nil, nil, 69, nil,
+ 42, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, 55, nil, 29, 29, nil, nil, 29, 32,
+ 30, nil, 39, 32, 30, 79, nil, 22, nil, nil,
+ nil, 22, 23, 26, 55, 3, nil, nil, nil, 54,
+ nil, 31, 31, 37, nil, 31, 55, nil, 38, 22,
+ 53, 86, 73, 36, 61, 69, 28, 28, 50, 50,
+ 28, 26, 50, 29, 25, 83, 71, 69, 54, 48,
+ nil, 5, 51, 54, 5, 37, 29, 38, 22, 53,
+ 26, 32, 30, nil, nil, nil, 37, 33, 29, nil,
+ 31, nil, 25, 32, 30, 55, nil, nil, 38, 22,
+ 53, 22, 29, 31, nil, 28, nil, 50, nil, 55,
+ nil, 25, nil, nil, nil, 31, nil, nil, 28, nil,
+ 50, 26, 4, nil, 26, nil, nil, nil, 27, 31,
+ 28, nil, 50, 65, 65, nil, nil, nil, 38, 22,
+ 53, nil, 29, 29, 28, nil, 50, 29, 30, 30,
+ nil, nil, 25, nil, nil, 25, 27, nil, nil, 65,
+ 31, nil, nil, 65, nil, 55, nil, 55, nil, 31,
+ 31, 38, 22, 53, 31, 27, 26, 26, 2, 63,
+ 26, nil, nil, nil, 28, 28, 50, 50, nil, 28,
+ nil, 50, nil, 55, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, 29, nil, 4, 25, 25, nil,
+ nil, 25, nil, 26, nil, nil, 29, nil, nil, nil,
+ nil, 55, 38, 22, 53, 26, nil, nil, nil, nil,
+ nil, 31, 38, 22, 53, 38, 22, 53, 26, nil,
+ 55, 55, nil, 31, 25, nil, 28, nil, 50, nil,
+ 26, nil, 52, nil, 52, 52, 25, nil, 28, nil,
+ 50, nil, nil, 55, 26, nil, nil, nil, nil, 25,
+ nil, 27, 27, nil, nil, 27, nil, nil, 52, nil,
+ nil, 25, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, 25, nil, 52, nil, nil,
+ 26, nil, 52, nil, 26, 26, 52, nil, nil, 26,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- 54, nil, 54, nil, 25, nil, nil, nil, nil, nil,
- nil, nil, 27, nil, nil, nil, nil, nil, nil, nil,
+ 27, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, 25, nil, 27, nil, 25, 25, nil, nil, nil,
+ 25, nil, nil, nil, nil, 27, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 27,
+ nil, nil, nil, nil, nil, nil, 26, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, 26, 52,
+ 52, 52, nil, 52, 52, 52, 52, 52, 52, 52,
+ nil, 52, 52, 52, nil, nil, 52, 25, nil, 27,
+ 27, nil, nil, nil, 27, nil, nil, nil, nil, 25,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, nil, nil, nil, nil, nil, 54, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
- nil, 25, nil, nil, nil, nil, nil, nil, nil, 27,
- nil, nil, nil, nil, 25, nil, nil, nil, nil, nil,
- nil, nil, 27, nil, 51, 51, 51, nil, 51, 51,
- 51, 51, 51, 51, 51, nil, 51, 51, 51, nil,
- nil, 51, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 52,
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, 51 ]
+ nil, 27, nil, nil, nil, nil, nil, nil, nil, nil,
+ nil, nil, nil, 27 ]
racc_goto_pointer = [
- nil, 89, 10, 26, -13, 7, nil, -1, nil, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, -7,
- 48, 1, -1, -136, 116, 346, 252, 354, -15, -10,
- -21, -11, 6, 19, -64, -33, -124, 0, -18, nil,
- 57, -16, -153, nil, nil, nil, -189, -22, nil, 218,
- -9, 528, 14, -25, 335, nil, -166, -12, -285, nil,
- -54, -120, -23, -249, -13, -157, -173, nil, -147, -121,
- -171, -203, -28, 38, 18, -80, 59, 23, 6, -78,
- -39, -38, -113, -147, -18, -89, nil ]
+ nil, 108, 7, 41, -16, -161, 19, nil, 34, nil,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ 33, 56, 1, 2, -136, 181, 150, 245, 30, -12,
+ -6, 15, -7, 2, 35, -50, -39, -105, 0, -38,
+ nil, 74, -63, -256, nil, nil, nil, -266, -19, nil,
+ 32, -16, 347, 2, -21, 74, nil, -164, -18, -263,
+ nil, -48, -107, -16, -261, 116, -175, -200, nil, -161,
+ -100, -162, -185, -24, 52, -1, -47, 70, 33, 8,
+ -63, -26, -24, -104, -120, 3, -94, nil ]
racc_goto_default = [
- nil, nil, nil, 168, 25, 28, 32, 35, 5, 6,
- 10, 13, 15, 18, 20, 24, 27, 31, 34, 4,
- nil, 99, nil, 79, 101, 103, 105, 108, 109, 113,
- 95, 96, 8, nil, nil, nil, nil, 85, nil, 30,
- nil, nil, 161, 239, 164, 165, nil, nil, 144, 107,
- 110, 111, 67, 134, 98, 150, 151, nil, 248, 104,
- nil, nil, nil, nil, 69, nil, nil, 300, 80, nil,
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 57,
- nil, nil, nil, nil, nil, nil, 192 ]
+ nil, nil, 278, 208, 25, nil, 31, 35, 4, 7,
+ 9, 14, 16, 19, 21, 24, 28, 30, 34, 3,
+ 6, nil, 98, nil, 76, 101, 102, 105, 107, 108,
+ 93, 94, 96, 12, nil, nil, nil, nil, 83, nil,
+ 33, nil, nil, 204, 290, 205, 206, nil, nil, 147,
+ 106, 109, 91, 64, 137, 97, 152, 153, nil, 259,
+ 104, nil, nil, nil, nil, 67, nil, nil, 301, 77,
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
+ 58, nil, nil, nil, nil, nil, nil, 197 ]
racc_reduce_table = [
0, 0, :racc_error,
- 1, 70, :_reduce_1,
+ 1, 70, :_reduce_none,
1, 70, :_reduce_none,
1, 71, :_reduce_3,
2, 71, :_reduce_4,
+ 1, 74, :_reduce_5,
1, 73, :_reduce_none,
1, 73, :_reduce_none,
1, 73, :_reduce_none,
@@ -695,224 +652,224 @@ racc_reduce_table = [
1, 73, :_reduce_none,
1, 73, :_reduce_none,
1, 73, :_reduce_none,
- 3, 87, :_reduce_19,
- 3, 87, :_reduce_20,
- 1, 88, :_reduce_none,
- 1, 88, :_reduce_none,
- 1, 88, :_reduce_none,
+ 3, 88, :_reduce_20,
+ 3, 88, :_reduce_21,
1, 89, :_reduce_none,
1, 89, :_reduce_none,
1, 89, :_reduce_none,
- 1, 89, :_reduce_none,
- 4, 81, :_reduce_28,
- 5, 81, :_reduce_29,
- 3, 81, :_reduce_30,
- 2, 81, :_reduce_31,
- 1, 91, :_reduce_none,
- 1, 91, :_reduce_none,
- 3, 91, :_reduce_34,
- 3, 91, :_reduce_35,
- 1, 92, :_reduce_none,
- 1, 92, :_reduce_none,
- 1, 92, :_reduce_none,
- 1, 92, :_reduce_none,
+ 1, 90, :_reduce_none,
+ 1, 90, :_reduce_none,
+ 1, 90, :_reduce_none,
+ 1, 90, :_reduce_none,
+ 4, 82, :_reduce_29,
+ 5, 82, :_reduce_30,
+ 3, 82, :_reduce_31,
+ 2, 82, :_reduce_32,
1, 92, :_reduce_none,
1, 92, :_reduce_none,
- 1, 92, :_reduce_none,
- 1, 92, :_reduce_none,
- 1, 92, :_reduce_44,
- 5, 74, :_reduce_45,
- 5, 74, :_reduce_46,
- 5, 74, :_reduce_47,
- 5, 85, :_reduce_48,
- 2, 75, :_reduce_49,
- 1, 108, :_reduce_50,
- 2, 108, :_reduce_51,
- 6, 76, :_reduce_52,
- 2, 76, :_reduce_53,
- 3, 109, :_reduce_54,
- 3, 109, :_reduce_55,
- 1, 110, :_reduce_none,
- 1, 110, :_reduce_none,
- 3, 110, :_reduce_58,
+ 3, 92, :_reduce_35,
+ 3, 92, :_reduce_36,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_none,
+ 1, 93, :_reduce_45,
+ 5, 75, :_reduce_46,
+ 5, 75, :_reduce_47,
+ 5, 75, :_reduce_48,
+ 5, 86, :_reduce_49,
+ 2, 76, :_reduce_50,
+ 1, 109, :_reduce_51,
+ 2, 109, :_reduce_52,
+ 6, 77, :_reduce_53,
+ 2, 77, :_reduce_54,
+ 3, 110, :_reduce_55,
+ 3, 110, :_reduce_56,
1, 111, :_reduce_none,
- 3, 111, :_reduce_60,
- 1, 112, :_reduce_61,
- 1, 112, :_reduce_62,
- 3, 113, :_reduce_63,
- 3, 113, :_reduce_64,
- 1, 114, :_reduce_none,
- 1, 114, :_reduce_none,
- 4, 116, :_reduce_67,
- 1, 102, :_reduce_none,
- 3, 102, :_reduce_69,
- 0, 103, :_reduce_none,
- 1, 103, :_reduce_none,
- 1, 118, :_reduce_72,
- 1, 93, :_reduce_73,
- 1, 95, :_reduce_74,
- 1, 117, :_reduce_none,
- 1, 117, :_reduce_none,
- 1, 117, :_reduce_none,
- 1, 117, :_reduce_none,
- 1, 117, :_reduce_none,
- 1, 117, :_reduce_none,
- 1, 117, :_reduce_none,
- 3, 77, :_reduce_82,
- 3, 77, :_reduce_83,
- 3, 86, :_reduce_84,
- 0, 104, :_reduce_85,
- 1, 104, :_reduce_86,
- 3, 104, :_reduce_87,
- 3, 122, :_reduce_88,
- 3, 124, :_reduce_89,
- 1, 125, :_reduce_none,
- 1, 125, :_reduce_none,
- 0, 107, :_reduce_92,
- 1, 107, :_reduce_93,
- 3, 107, :_reduce_94,
- 1, 126, :_reduce_none,
- 3, 126, :_reduce_96,
- 1, 115, :_reduce_none,
- 1, 115, :_reduce_none,
- 1, 115, :_reduce_none,
- 1, 115, :_reduce_none,
+ 1, 111, :_reduce_none,
+ 3, 111, :_reduce_59,
+ 1, 112, :_reduce_none,
+ 3, 112, :_reduce_61,
+ 1, 113, :_reduce_62,
+ 1, 113, :_reduce_63,
+ 3, 114, :_reduce_64,
+ 3, 114, :_reduce_65,
1, 115, :_reduce_none,
1, 115, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 1, 123, :_reduce_none,
- 4, 97, :_reduce_115,
- 3, 97, :_reduce_116,
- 1, 99, :_reduce_117,
- 2, 99, :_reduce_118,
- 2, 129, :_reduce_119,
- 1, 130, :_reduce_120,
- 2, 130, :_reduce_121,
- 1, 96, :_reduce_122,
- 4, 90, :_reduce_123,
- 4, 90, :_reduce_124,
- 2, 79, :_reduce_125,
- 5, 131, :_reduce_126,
- 4, 131, :_reduce_127,
- 0, 132, :_reduce_none,
- 2, 132, :_reduce_129,
- 4, 132, :_reduce_130,
- 3, 132, :_reduce_131,
- 1, 120, :_reduce_none,
- 3, 120, :_reduce_133,
- 3, 120, :_reduce_134,
- 3, 120, :_reduce_135,
- 3, 120, :_reduce_136,
- 3, 120, :_reduce_137,
- 3, 120, :_reduce_138,
- 3, 120, :_reduce_139,
- 3, 120, :_reduce_140,
- 3, 120, :_reduce_141,
- 2, 120, :_reduce_142,
- 3, 120, :_reduce_143,
- 3, 120, :_reduce_144,
- 3, 120, :_reduce_145,
- 3, 120, :_reduce_146,
- 3, 120, :_reduce_147,
- 3, 120, :_reduce_148,
- 2, 120, :_reduce_149,
- 3, 120, :_reduce_150,
- 3, 120, :_reduce_151,
- 3, 120, :_reduce_152,
- 5, 78, :_reduce_153,
- 1, 134, :_reduce_none,
- 2, 134, :_reduce_155,
- 5, 135, :_reduce_156,
- 4, 135, :_reduce_157,
- 1, 136, :_reduce_none,
- 3, 136, :_reduce_159,
- 3, 98, :_reduce_160,
- 1, 138, :_reduce_none,
- 4, 138, :_reduce_162,
- 1, 140, :_reduce_none,
- 3, 140, :_reduce_164,
- 3, 139, :_reduce_165,
- 1, 137, :_reduce_none,
- 1, 137, :_reduce_none,
- 1, 137, :_reduce_none,
- 1, 137, :_reduce_none,
- 1, 137, :_reduce_none,
- 1, 137, :_reduce_none,
- 1, 137, :_reduce_none,
- 1, 137, :_reduce_173,
+ 4, 117, :_reduce_68,
+ 1, 103, :_reduce_none,
+ 3, 103, :_reduce_70,
+ 0, 104, :_reduce_none,
+ 1, 104, :_reduce_none,
+ 1, 119, :_reduce_73,
+ 1, 94, :_reduce_74,
+ 1, 96, :_reduce_75,
+ 1, 118, :_reduce_none,
+ 1, 118, :_reduce_none,
+ 1, 118, :_reduce_none,
+ 1, 118, :_reduce_none,
+ 1, 118, :_reduce_none,
+ 1, 118, :_reduce_none,
+ 1, 118, :_reduce_none,
+ 3, 78, :_reduce_83,
+ 3, 78, :_reduce_84,
+ 3, 87, :_reduce_85,
+ 0, 105, :_reduce_86,
+ 1, 105, :_reduce_87,
+ 3, 105, :_reduce_88,
+ 3, 123, :_reduce_89,
+ 3, 125, :_reduce_90,
+ 1, 126, :_reduce_none,
+ 1, 126, :_reduce_none,
+ 0, 108, :_reduce_93,
+ 1, 108, :_reduce_94,
+ 3, 108, :_reduce_95,
+ 1, 127, :_reduce_none,
+ 3, 127, :_reduce_97,
+ 1, 116, :_reduce_none,
+ 1, 116, :_reduce_none,
+ 1, 116, :_reduce_none,
+ 1, 116, :_reduce_none,
+ 1, 116, :_reduce_none,
+ 1, 116, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 1, 124, :_reduce_none,
+ 4, 98, :_reduce_116,
+ 3, 98, :_reduce_117,
+ 1, 100, :_reduce_118,
+ 2, 100, :_reduce_119,
+ 2, 130, :_reduce_120,
+ 1, 131, :_reduce_121,
+ 2, 131, :_reduce_122,
+ 1, 97, :_reduce_123,
+ 4, 91, :_reduce_124,
+ 4, 91, :_reduce_125,
+ 2, 80, :_reduce_126,
+ 5, 132, :_reduce_127,
+ 4, 132, :_reduce_128,
+ 0, 133, :_reduce_none,
+ 2, 133, :_reduce_130,
+ 4, 133, :_reduce_131,
+ 3, 133, :_reduce_132,
+ 1, 121, :_reduce_none,
+ 3, 121, :_reduce_134,
+ 3, 121, :_reduce_135,
+ 3, 121, :_reduce_136,
+ 3, 121, :_reduce_137,
+ 3, 121, :_reduce_138,
+ 3, 121, :_reduce_139,
+ 3, 121, :_reduce_140,
+ 3, 121, :_reduce_141,
+ 3, 121, :_reduce_142,
+ 2, 121, :_reduce_143,
+ 3, 121, :_reduce_144,
+ 3, 121, :_reduce_145,
+ 3, 121, :_reduce_146,
+ 3, 121, :_reduce_147,
+ 3, 121, :_reduce_148,
+ 3, 121, :_reduce_149,
+ 2, 121, :_reduce_150,
+ 3, 121, :_reduce_151,
+ 3, 121, :_reduce_152,
+ 3, 121, :_reduce_153,
+ 5, 79, :_reduce_154,
+ 1, 135, :_reduce_none,
+ 2, 135, :_reduce_156,
+ 5, 136, :_reduce_157,
+ 4, 136, :_reduce_158,
1, 137, :_reduce_none,
- 1, 141, :_reduce_175,
- 1, 142, :_reduce_none,
- 3, 142, :_reduce_177,
- 2, 80, :_reduce_178,
- 6, 82, :_reduce_179,
- 5, 82, :_reduce_180,
- 7, 83, :_reduce_181,
- 6, 83, :_reduce_182,
+ 3, 137, :_reduce_160,
+ 3, 99, :_reduce_161,
+ 1, 139, :_reduce_none,
+ 4, 139, :_reduce_163,
+ 1, 141, :_reduce_none,
+ 3, 141, :_reduce_165,
+ 3, 140, :_reduce_166,
+ 1, 138, :_reduce_none,
+ 1, 138, :_reduce_none,
+ 1, 138, :_reduce_none,
+ 1, 138, :_reduce_none,
+ 1, 138, :_reduce_none,
+ 1, 138, :_reduce_none,
+ 1, 138, :_reduce_none,
+ 1, 138, :_reduce_174,
+ 1, 138, :_reduce_none,
+ 1, 142, :_reduce_176,
+ 1, 143, :_reduce_none,
+ 3, 143, :_reduce_178,
+ 2, 81, :_reduce_179,
+ 6, 83, :_reduce_180,
+ 5, 83, :_reduce_181,
+ 7, 84, :_reduce_182,
6, 84, :_reduce_183,
- 5, 84, :_reduce_184,
- 1, 106, :_reduce_185,
- 1, 101, :_reduce_186,
- 1, 101, :_reduce_187,
- 1, 101, :_reduce_188,
- 1, 145, :_reduce_189,
- 3, 145, :_reduce_190,
- 1, 147, :_reduce_191,
+ 6, 85, :_reduce_184,
+ 5, 85, :_reduce_185,
+ 1, 107, :_reduce_186,
+ 1, 102, :_reduce_187,
+ 1, 102, :_reduce_188,
+ 1, 102, :_reduce_189,
+ 1, 146, :_reduce_190,
+ 3, 146, :_reduce_191,
1, 148, :_reduce_192,
- 1, 148, :_reduce_193,
- 1, 148, :_reduce_194,
- 1, 148, :_reduce_none,
- 0, 72, :_reduce_196,
- 0, 149, :_reduce_197,
- 1, 143, :_reduce_none,
- 3, 143, :_reduce_199,
- 3, 143, :_reduce_200,
- 1, 150, :_reduce_none,
- 3, 150, :_reduce_202,
- 3, 151, :_reduce_203,
- 1, 151, :_reduce_204,
- 3, 151, :_reduce_205,
- 1, 151, :_reduce_206,
- 1, 146, :_reduce_none,
- 2, 146, :_reduce_208,
+ 1, 149, :_reduce_193,
+ 1, 149, :_reduce_194,
+ 1, 149, :_reduce_195,
+ 1, 149, :_reduce_none,
+ 0, 72, :_reduce_197,
+ 0, 150, :_reduce_198,
1, 144, :_reduce_none,
- 2, 144, :_reduce_210,
- 1, 152, :_reduce_none,
- 1, 152, :_reduce_none,
- 1, 94, :_reduce_213,
- 3, 119, :_reduce_214,
- 4, 119, :_reduce_215,
- 2, 119, :_reduce_216,
- 1, 127, :_reduce_none,
- 1, 127, :_reduce_none,
- 0, 105, :_reduce_none,
- 1, 105, :_reduce_220,
- 1, 133, :_reduce_221,
- 3, 128, :_reduce_222,
- 4, 128, :_reduce_223,
- 2, 128, :_reduce_224,
+ 3, 144, :_reduce_200,
+ 3, 144, :_reduce_201,
+ 1, 151, :_reduce_none,
+ 3, 151, :_reduce_203,
+ 3, 152, :_reduce_204,
+ 1, 152, :_reduce_205,
+ 3, 152, :_reduce_206,
+ 1, 152, :_reduce_207,
+ 1, 147, :_reduce_none,
+ 2, 147, :_reduce_209,
+ 1, 145, :_reduce_none,
+ 2, 145, :_reduce_211,
1, 153, :_reduce_none,
- 3, 153, :_reduce_226,
+ 1, 153, :_reduce_none,
+ 1, 95, :_reduce_214,
+ 3, 120, :_reduce_215,
+ 4, 120, :_reduce_216,
+ 2, 120, :_reduce_217,
+ 1, 128, :_reduce_none,
+ 1, 128, :_reduce_none,
+ 0, 106, :_reduce_none,
+ 1, 106, :_reduce_221,
+ 1, 134, :_reduce_222,
+ 3, 129, :_reduce_223,
+ 4, 129, :_reduce_224,
+ 2, 129, :_reduce_225,
+ 1, 154, :_reduce_none,
3, 154, :_reduce_227,
- 1, 155, :_reduce_228,
- 1, 155, :_reduce_229,
- 4, 121, :_reduce_230,
- 1, 100, :_reduce_none,
- 4, 100, :_reduce_232 ]
+ 3, 155, :_reduce_228,
+ 1, 156, :_reduce_229,
+ 1, 156, :_reduce_230,
+ 4, 122, :_reduce_231,
+ 1, 101, :_reduce_none,
+ 4, 101, :_reduce_233 ]
-racc_reduce_n = 233
+racc_reduce_n = 234
-racc_shift_n = 384
+racc_shift_n = 385
racc_token_table = {
false => 0,
@@ -1077,9 +1034,10 @@ Racc_token_to_s_table = [
"IN",
"$start",
"program",
- "statements",
+ "statements_and_declarations",
"nil",
- "statement",
+ "statement_or_declaration",
+ "statements",
"resource",
"virtualresource",
"collection",
@@ -1169,18 +1127,11 @@ Racc_debug_parser = false
# reduce 0 omitted
-module_eval(<<'.,.,', 'grammar.ra', 31)
- def _reduce_1(val, _values, result)
- val[0].is_a_namespace = true
- result = val[0]
-
- result
- end
-.,.,
+# reduce 1 omitted
# reduce 2 omitted
-module_eval(<<'.,.,', 'grammar.ra', 37)
+module_eval(<<'.,.,', 'grammar.ra', 34)
def _reduce_3(val, _values, result)
result = ast AST::ASTArray, :children => [val[0]]
@@ -1188,7 +1139,7 @@ module_eval(<<'.,.,', 'grammar.ra', 37)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 40)
+module_eval(<<'.,.,', 'grammar.ra', 37)
def _reduce_4(val, _values, result)
val[0].push(val[1])
result = val[0]
@@ -1197,7 +1148,18 @@ module_eval(<<'.,.,', 'grammar.ra', 40)
end
.,.,
-# reduce 5 omitted
+module_eval(<<'.,.,', 'grammar.ra', 44)
+ def _reduce_5(val, _values, result)
+ val[0].each do |stmt|
+ if stmt.is_a?(AST::TopLevelConstruct)
+ error "Classes, definitions, and nodes may only appear at toplevel or inside other classes"
+ end
+ end
+ result = val[0]
+
+ result
+ end
+.,.,
# reduce 6 omitted
@@ -1225,24 +1187,24 @@ module_eval(<<'.,.,', 'grammar.ra', 40)
# reduce 18 omitted
-module_eval(<<'.,.,', 'grammar.ra', 61)
- def _reduce_19(val, _values, result)
+# reduce 19 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 69)
+ def _reduce_20(val, _values, result)
result = AST::Relationship.new(val[0], val[2], val[1][:value], ast_context)
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 64)
- def _reduce_20(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 72)
+ def _reduce_21(val, _values, result)
result = AST::Relationship.new(val[0], val[2], val[1][:value], ast_context)
result
end
.,.,
-# reduce 21 omitted
-
# reduce 22 omitted
# reduce 23 omitted
@@ -1255,8 +1217,10 @@ module_eval(<<'.,.,', 'grammar.ra', 64)
# reduce 27 omitted
-module_eval(<<'.,.,', 'grammar.ra', 72)
- def _reduce_28(val, _values, result)
+# reduce 28 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 80)
+ def _reduce_29(val, _values, result)
args = aryfy(val[2])
result = ast AST::Function,
:name => val[0][:value],
@@ -1268,8 +1232,8 @@ module_eval(<<'.,.,', 'grammar.ra', 72)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 80)
- def _reduce_29(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 88)
+ def _reduce_30(val, _values, result)
args = aryfy(val[2])
result = ast AST::Function,
:name => val[0][:value],
@@ -1281,8 +1245,8 @@ module_eval(<<'.,.,', 'grammar.ra', 80)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 87)
- def _reduce_30(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 95)
+ def _reduce_31(val, _values, result)
result = ast AST::Function,
:name => val[0][:value],
:line => val[0][:line],
@@ -1293,8 +1257,8 @@ module_eval(<<'.,.,', 'grammar.ra', 87)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 94)
- def _reduce_31(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 102)
+ def _reduce_32(val, _values, result)
args = aryfy(val[1])
result = ast AST::Function,
:name => val[0][:value],
@@ -1306,12 +1270,12 @@ module_eval(<<'.,.,', 'grammar.ra', 94)
end
.,.,
-# reduce 32 omitted
-
# reduce 33 omitted
-module_eval(<<'.,.,', 'grammar.ra', 105)
- def _reduce_34(val, _values, result)
+# reduce 34 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 113)
+ def _reduce_35(val, _values, result)
result = aryfy(val[0], val[2])
result.line = @lexer.line
result.file = @lexer.file
@@ -1320,8 +1284,8 @@ module_eval(<<'.,.,', 'grammar.ra', 105)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 110)
- def _reduce_35(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 118)
+ def _reduce_36(val, _values, result)
unless val[0].is_a?(AST::ASTArray)
val[0] = aryfy(val[0])
end
@@ -1334,8 +1298,6 @@ module_eval(<<'.,.,', 'grammar.ra', 110)
end
.,.,
-# reduce 36 omitted
-
# reduce 37 omitted
# reduce 38 omitted
@@ -1350,16 +1312,18 @@ module_eval(<<'.,.,', 'grammar.ra', 110)
# reduce 43 omitted
-module_eval(<<'.,.,', 'grammar.ra', 130)
- def _reduce_44(val, _values, result)
+# reduce 44 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 138)
+ def _reduce_45(val, _values, result)
result = ast AST::Name, :value => val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 134)
- def _reduce_45(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 142)
+ def _reduce_46(val, _values, result)
@lexer.commentpop
array = val[2]
array = [array] if array.instance_of?(AST::ResourceInstance)
@@ -1383,8 +1347,8 @@ module_eval(<<'.,.,', 'grammar.ra', 134)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 153)
- def _reduce_46(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 161)
+ def _reduce_47(val, _values, result)
# This is a deprecated syntax.
error "All resource specifications require names"
@@ -1392,8 +1356,8 @@ module_eval(<<'.,.,', 'grammar.ra', 153)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 156)
- def _reduce_47(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 164)
+ def _reduce_48(val, _values, result)
# a defaults setting for a type
@lexer.commentpop
result = ast(AST::ResourceDefaults, :type => val[0], :parameters => val[2])
@@ -1402,8 +1366,8 @@ module_eval(<<'.,.,', 'grammar.ra', 156)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 163)
- def _reduce_48(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 171)
+ def _reduce_49(val, _values, result)
@lexer.commentpop
result = ast AST::ResourceOverride, :object => val[0], :parameters => val[2]
@@ -1411,8 +1375,8 @@ module_eval(<<'.,.,', 'grammar.ra', 163)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 170)
- def _reduce_49(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 178)
+ def _reduce_50(val, _values, result)
type = val[0]
if (type == :exported and ! Puppet[:storeconfigs]) and ! Puppet[:parseonly]
@@ -1438,22 +1402,22 @@ module_eval(<<'.,.,', 'grammar.ra', 170)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 192)
- def _reduce_50(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 200)
+ def _reduce_51(val, _values, result)
result = :virtual
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 193)
- def _reduce_51(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 201)
+ def _reduce_52(val, _values, result)
result = :exported
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 198)
- def _reduce_52(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 206)
+ def _reduce_53(val, _values, result)
@lexer.commentpop
Puppet.warning addcontext("Collection names must now be capitalized") if val[0] =~ /^[a-z]/
type = val[0].downcase
@@ -1476,8 +1440,8 @@ module_eval(<<'.,.,', 'grammar.ra', 198)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 217)
- def _reduce_53(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 225)
+ def _reduce_54(val, _values, result)
if val[0] =~ /^[a-z]/
Puppet.warning addcontext("Collection names must now be capitalized")
end
@@ -1500,8 +1464,8 @@ module_eval(<<'.,.,', 'grammar.ra', 217)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 238)
- def _reduce_54(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 246)
+ def _reduce_55(val, _values, result)
if val[1]
result = val[1]
result.form = :virtual
@@ -1513,8 +1477,8 @@ module_eval(<<'.,.,', 'grammar.ra', 238)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 246)
- def _reduce_55(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 254)
+ def _reduce_56(val, _values, result)
if val[1]
result = val[1]
result.form = :exported
@@ -1526,22 +1490,22 @@ module_eval(<<'.,.,', 'grammar.ra', 246)
end
.,.,
-# reduce 56 omitted
-
# reduce 57 omitted
-module_eval(<<'.,.,', 'grammar.ra', 259)
- def _reduce_58(val, _values, result)
+# reduce 58 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 267)
+ def _reduce_59(val, _values, result)
result = ast AST::CollExpr, :test1 => val[0], :oper => val[1], :test2 => val[2]
result
end
.,.,
-# reduce 59 omitted
+# reduce 60 omitted
-module_eval(<<'.,.,', 'grammar.ra', 264)
- def _reduce_60(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 272)
+ def _reduce_61(val, _values, result)
result = val[1]
result.parens = true
@@ -1549,22 +1513,22 @@ module_eval(<<'.,.,', 'grammar.ra', 264)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 268)
- def _reduce_61(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 276)
+ def _reduce_62(val, _values, result)
result=val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 269)
- def _reduce_62(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 277)
+ def _reduce_63(val, _values, result)
result=val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 272)
- def _reduce_63(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 280)
+ def _reduce_64(val, _values, result)
result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
#result = ast AST::CollExpr
#result.push *val
@@ -1573,8 +1537,8 @@ module_eval(<<'.,.,', 'grammar.ra', 272)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 277)
- def _reduce_64(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 285)
+ def _reduce_65(val, _values, result)
result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
#result = ast AST::CollExpr
#result.push *val
@@ -1583,22 +1547,22 @@ module_eval(<<'.,.,', 'grammar.ra', 277)
end
.,.,
-# reduce 65 omitted
-
# reduce 66 omitted
-module_eval(<<'.,.,', 'grammar.ra', 286)
- def _reduce_67(val, _values, result)
+# reduce 67 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 294)
+ def _reduce_68(val, _values, result)
result = ast AST::ResourceInstance, :children => [val[0],val[2]]
result
end
.,.,
-# reduce 68 omitted
+# reduce 69 omitted
-module_eval(<<'.,.,', 'grammar.ra', 291)
- def _reduce_69(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 299)
+ def _reduce_70(val, _values, result)
if val[0].instance_of?(AST::ResourceInstance)
result = ast AST::ASTArray, :children => [val[0],val[2]]
else
@@ -1610,36 +1574,34 @@ module_eval(<<'.,.,', 'grammar.ra', 291)
end
.,.,
-# reduce 70 omitted
-
# reduce 71 omitted
-module_eval(<<'.,.,', 'grammar.ra', 303)
- def _reduce_72(val, _values, result)
+# reduce 72 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 311)
+ def _reduce_73(val, _values, result)
result = ast AST::Undef, :value => :undef
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 307)
- def _reduce_73(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 315)
+ def _reduce_74(val, _values, result)
result = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 311)
- def _reduce_74(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 319)
+ def _reduce_75(val, _values, result)
result = ast AST::Type, :value => val[0][:value], :line => val[0][:line]
result
end
.,.,
-# reduce 75 omitted
-
# reduce 76 omitted
# reduce 77 omitted
@@ -1652,8 +1614,10 @@ module_eval(<<'.,.,', 'grammar.ra', 311)
# reduce 81 omitted
-module_eval(<<'.,.,', 'grammar.ra', 323)
- def _reduce_82(val, _values, result)
+# reduce 82 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 331)
+ def _reduce_83(val, _values, result)
raise Puppet::ParseError, "Cannot assign to variables in other namespaces" if val[0][:value] =~ /::/
# this is distinct from referencing a variable
variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
@@ -1663,16 +1627,16 @@ module_eval(<<'.,.,', 'grammar.ra', 323)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 329)
- def _reduce_83(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 337)
+ def _reduce_84(val, _values, result)
result = ast AST::VarDef, :name => val[0], :value => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 333)
- def _reduce_84(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 341)
+ def _reduce_85(val, _values, result)
variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
result = ast AST::VarDef, :name => variable, :value => val[2], :append => true, :line => val[0][:line]
@@ -1680,23 +1644,23 @@ module_eval(<<'.,.,', 'grammar.ra', 333)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 339)
- def _reduce_85(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 347)
+ def _reduce_86(val, _values, result)
result = ast AST::ASTArray
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 341)
- def _reduce_86(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 349)
+ def _reduce_87(val, _values, result)
result = val[0]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 343)
- def _reduce_87(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 351)
+ def _reduce_88(val, _values, result)
if val[0].instance_of?(AST::ASTArray)
val[0].push(val[2])
result = val[0]
@@ -1708,16 +1672,16 @@ module_eval(<<'.,.,', 'grammar.ra', 343)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 352)
- def _reduce_88(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 360)
+ def _reduce_89(val, _values, result)
result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 356)
- def _reduce_89(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 364)
+ def _reduce_90(val, _values, result)
result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2],
:add => true
@@ -1725,27 +1689,27 @@ module_eval(<<'.,.,', 'grammar.ra', 356)
end
.,.,
-# reduce 90 omitted
-
# reduce 91 omitted
-module_eval(<<'.,.,', 'grammar.ra', 365)
- def _reduce_92(val, _values, result)
+# reduce 92 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 373)
+ def _reduce_93(val, _values, result)
result = ast AST::ASTArray
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 367)
- def _reduce_93(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 375)
+ def _reduce_94(val, _values, result)
result = val[0]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 369)
- def _reduce_94(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 377)
+ def _reduce_95(val, _values, result)
if val[0].instance_of?(AST::ASTArray)
val[0].push(val[2])
result = val[0]
@@ -1757,10 +1721,10 @@ module_eval(<<'.,.,', 'grammar.ra', 369)
end
.,.,
-# reduce 95 omitted
+# reduce 96 omitted
-module_eval(<<'.,.,', 'grammar.ra', 379)
- def _reduce_96(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 387)
+ def _reduce_97(val, _values, result)
if val[0].instance_of?(AST::ASTArray)
result = val[0].push(val[2])
else
@@ -1771,8 +1735,6 @@ module_eval(<<'.,.,', 'grammar.ra', 379)
end
.,.,
-# reduce 97 omitted
-
# reduce 98 omitted
# reduce 99 omitted
@@ -1807,8 +1769,10 @@ module_eval(<<'.,.,', 'grammar.ra', 379)
# reduce 114 omitted
-module_eval(<<'.,.,', 'grammar.ra', 408)
- def _reduce_115(val, _values, result)
+# reduce 115 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 416)
+ def _reduce_116(val, _values, result)
args = aryfy(val[2])
result = ast AST::Function,
:name => val[0][:value], :line => val[0][:line],
@@ -1819,8 +1783,8 @@ module_eval(<<'.,.,', 'grammar.ra', 408)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 414)
- def _reduce_116(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 422)
+ def _reduce_117(val, _values, result)
result = ast AST::Function,
:name => val[0][:value], :line => val[0][:line],
:arguments => AST::ASTArray.new({}),
@@ -1830,51 +1794,51 @@ module_eval(<<'.,.,', 'grammar.ra', 414)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 420)
- def _reduce_117(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 428)
+ def _reduce_118(val, _values, result)
result = ast AST::String, :value => val[0][:value], :line => val[0][:line]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 421)
- def _reduce_118(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 429)
+ def _reduce_119(val, _values, result)
result = ast AST::Concat, :value => [ast(AST::String,val[0])]+val[1], :line => val[0][:line]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 423)
- def _reduce_119(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 431)
+ def _reduce_120(val, _values, result)
result = [val[0]] + val[1]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 425)
- def _reduce_120(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 433)
+ def _reduce_121(val, _values, result)
result = [ast(AST::String,val[0])]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 426)
- def _reduce_121(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 434)
+ def _reduce_122(val, _values, result)
result = [ast(AST::String,val[0])] + val[1]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 429)
- def _reduce_122(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 437)
+ def _reduce_123(val, _values, result)
result = ast AST::Boolean, :value => val[0][:value], :line => val[0][:line]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 433)
- def _reduce_123(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 441)
+ def _reduce_124(val, _values, result)
Puppet.warning addcontext("Deprecation notice: Resource references should now be capitalized")
result = ast AST::ResourceReference, :type => val[0][:value], :line => val[0][:line], :title => val[2]
@@ -1882,24 +1846,24 @@ module_eval(<<'.,.,', 'grammar.ra', 433)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 436)
- def _reduce_124(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 444)
+ def _reduce_125(val, _values, result)
result = ast AST::ResourceReference, :type => val[0], :title => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 440)
- def _reduce_125(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 448)
+ def _reduce_126(val, _values, result)
result = val[1]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 444)
- def _reduce_126(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 452)
+ def _reduce_127(val, _values, result)
@lexer.commentpop
args = {
:test => val[0],
@@ -1914,8 +1878,8 @@ module_eval(<<'.,.,', 'grammar.ra', 444)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 455)
- def _reduce_127(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 463)
+ def _reduce_128(val, _values, result)
@lexer.commentpop
args = {
:test => val[0],
@@ -1930,18 +1894,18 @@ module_eval(<<'.,.,', 'grammar.ra', 455)
end
.,.,
-# reduce 128 omitted
+# reduce 129 omitted
-module_eval(<<'.,.,', 'grammar.ra', 468)
- def _reduce_129(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 476)
+ def _reduce_130(val, _values, result)
result = ast AST::Else, :statements => val[1]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 471)
- def _reduce_130(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 479)
+ def _reduce_131(val, _values, result)
@lexer.commentpop
result = ast AST::Else, :statements => val[2]
@@ -1949,8 +1913,8 @@ module_eval(<<'.,.,', 'grammar.ra', 471)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 475)
- def _reduce_131(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 483)
+ def _reduce_132(val, _values, result)
@lexer.commentpop
result = ast AST::Else, :statements => ast(AST::Nop)
@@ -1958,25 +1922,17 @@ module_eval(<<'.,.,', 'grammar.ra', 475)
end
.,.,
-# reduce 132 omitted
+# reduce 133 omitted
-module_eval(<<'.,.,', 'grammar.ra', 493)
- def _reduce_133(val, _values, result)
- result = ast AST::InOperator, :lval => val[0], :rval => val[2]
-
- result
- end
-.,.,
-
-module_eval(<<'.,.,', 'grammar.ra', 496)
+module_eval(<<'.,.,', 'grammar.ra', 501)
def _reduce_134(val, _values, result)
- result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
+ result = ast AST::InOperator, :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 499)
+module_eval(<<'.,.,', 'grammar.ra', 504)
def _reduce_135(val, _values, result)
result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -1984,15 +1940,15 @@ module_eval(<<'.,.,', 'grammar.ra', 499)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 502)
+module_eval(<<'.,.,', 'grammar.ra', 507)
def _reduce_136(val, _values, result)
- result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
+ result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 505)
+module_eval(<<'.,.,', 'grammar.ra', 510)
def _reduce_137(val, _values, result)
result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2000,7 +1956,7 @@ module_eval(<<'.,.,', 'grammar.ra', 505)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 508)
+module_eval(<<'.,.,', 'grammar.ra', 513)
def _reduce_138(val, _values, result)
result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2008,7 +1964,7 @@ module_eval(<<'.,.,', 'grammar.ra', 508)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 511)
+module_eval(<<'.,.,', 'grammar.ra', 516)
def _reduce_139(val, _values, result)
result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2016,7 +1972,7 @@ module_eval(<<'.,.,', 'grammar.ra', 511)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 514)
+module_eval(<<'.,.,', 'grammar.ra', 519)
def _reduce_140(val, _values, result)
result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2024,7 +1980,7 @@ module_eval(<<'.,.,', 'grammar.ra', 514)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 517)
+module_eval(<<'.,.,', 'grammar.ra', 522)
def _reduce_141(val, _values, result)
result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2032,23 +1988,23 @@ module_eval(<<'.,.,', 'grammar.ra', 517)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 520)
+module_eval(<<'.,.,', 'grammar.ra', 525)
def _reduce_142(val, _values, result)
- result = ast AST::Minus, :value => val[1]
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 523)
+module_eval(<<'.,.,', 'grammar.ra', 528)
def _reduce_143(val, _values, result)
- result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
+ result = ast AST::Minus, :value => val[1]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 526)
+module_eval(<<'.,.,', 'grammar.ra', 531)
def _reduce_144(val, _values, result)
result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2056,7 +2012,7 @@ module_eval(<<'.,.,', 'grammar.ra', 526)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 529)
+module_eval(<<'.,.,', 'grammar.ra', 534)
def _reduce_145(val, _values, result)
result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2064,7 +2020,7 @@ module_eval(<<'.,.,', 'grammar.ra', 529)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 532)
+module_eval(<<'.,.,', 'grammar.ra', 537)
def _reduce_146(val, _values, result)
result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2072,7 +2028,7 @@ module_eval(<<'.,.,', 'grammar.ra', 532)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 535)
+module_eval(<<'.,.,', 'grammar.ra', 540)
def _reduce_147(val, _values, result)
result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2080,7 +2036,7 @@ module_eval(<<'.,.,', 'grammar.ra', 535)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 538)
+module_eval(<<'.,.,', 'grammar.ra', 543)
def _reduce_148(val, _values, result)
result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2088,23 +2044,23 @@ module_eval(<<'.,.,', 'grammar.ra', 538)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 541)
+module_eval(<<'.,.,', 'grammar.ra', 546)
def _reduce_149(val, _values, result)
- result = ast AST::Not, :value => val[1]
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 544)
+module_eval(<<'.,.,', 'grammar.ra', 549)
def _reduce_150(val, _values, result)
- result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
+ result = ast AST::Not, :value => val[1]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 547)
+module_eval(<<'.,.,', 'grammar.ra', 552)
def _reduce_151(val, _values, result)
result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
@@ -2112,16 +2068,24 @@ module_eval(<<'.,.,', 'grammar.ra', 547)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 550)
+module_eval(<<'.,.,', 'grammar.ra', 555)
def _reduce_152(val, _values, result)
- result = val[1]
+ result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 554)
+module_eval(<<'.,.,', 'grammar.ra', 558)
def _reduce_153(val, _values, result)
+ result = val[1]
+
+ result
+ end
+.,.,
+
+module_eval(<<'.,.,', 'grammar.ra', 562)
+ def _reduce_154(val, _values, result)
@lexer.commentpop
options = val[3]
options = ast AST::ASTArray, :children => [val[3]] unless options.instance_of?(AST::ASTArray)
@@ -2131,10 +2095,10 @@ module_eval(<<'.,.,', 'grammar.ra', 554)
end
.,.,
-# reduce 154 omitted
+# reduce 155 omitted
-module_eval(<<'.,.,', 'grammar.ra', 562)
- def _reduce_155(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 570)
+ def _reduce_156(val, _values, result)
if val[0].instance_of?(AST::ASTArray)
val[0].push val[1]
result = val[0]
@@ -2146,8 +2110,8 @@ module_eval(<<'.,.,', 'grammar.ra', 562)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 571)
- def _reduce_156(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 579)
+ def _reduce_157(val, _values, result)
@lexer.commentpop
result = ast AST::CaseOpt, :value => val[0], :statements => val[3]
@@ -2155,8 +2119,8 @@ module_eval(<<'.,.,', 'grammar.ra', 571)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 574)
- def _reduce_157(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 582)
+ def _reduce_158(val, _values, result)
@lexer.commentpop
result = ast(
@@ -2170,10 +2134,10 @@ module_eval(<<'.,.,', 'grammar.ra', 574)
end
.,.,
-# reduce 158 omitted
+# reduce 159 omitted
-module_eval(<<'.,.,', 'grammar.ra', 586)
- def _reduce_159(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 594)
+ def _reduce_160(val, _values, result)
if val[0].instance_of?(AST::ASTArray)
val[0].push(val[2])
result = val[0]
@@ -2185,18 +2149,18 @@ module_eval(<<'.,.,', 'grammar.ra', 586)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 595)
- def _reduce_160(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 603)
+ def _reduce_161(val, _values, result)
result = ast AST::Selector, :param => val[0], :values => val[2]
result
end
.,.,
-# reduce 161 omitted
+# reduce 162 omitted
-module_eval(<<'.,.,', 'grammar.ra', 600)
- def _reduce_162(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 608)
+ def _reduce_163(val, _values, result)
@lexer.commentpop
result = val[1]
@@ -2204,10 +2168,10 @@ module_eval(<<'.,.,', 'grammar.ra', 600)
end
.,.,
-# reduce 163 omitted
+# reduce 164 omitted
-module_eval(<<'.,.,', 'grammar.ra', 606)
- def _reduce_164(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 614)
+ def _reduce_165(val, _values, result)
if val[0].instance_of?(AST::ASTArray)
val[0].push(val[2])
result = val[0]
@@ -2219,16 +2183,14 @@ module_eval(<<'.,.,', 'grammar.ra', 606)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 615)
- def _reduce_165(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 623)
+ def _reduce_166(val, _values, result)
result = ast AST::ResourceParam, :param => val[0], :value => val[2]
result
end
.,.,
-# reduce 166 omitted
-
# reduce 167 omitted
# reduce 168 omitted
@@ -2241,34 +2203,36 @@ module_eval(<<'.,.,', 'grammar.ra', 615)
# reduce 172 omitted
-module_eval(<<'.,.,', 'grammar.ra', 626)
- def _reduce_173(val, _values, result)
+# reduce 173 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 634)
+ def _reduce_174(val, _values, result)
result = ast AST::Default, :value => val[0][:value], :line => val[0][:line]
result
end
.,.,
-# reduce 174 omitted
+# reduce 175 omitted
-module_eval(<<'.,.,', 'grammar.ra', 631)
- def _reduce_175(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 639)
+ def _reduce_176(val, _values, result)
result = [val[0][:value]]
result
end
.,.,
-# reduce 176 omitted
+# reduce 177 omitted
-module_eval(<<'.,.,', 'grammar.ra', 633)
- def _reduce_177(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 641)
+ def _reduce_178(val, _values, result)
result = val[0] += val[2]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 636)
- def _reduce_178(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 644)
+ def _reduce_179(val, _values, result)
val[1].each do |file|
import(file)
end
@@ -2279,8 +2243,8 @@ module_eval(<<'.,.,', 'grammar.ra', 636)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 646)
- def _reduce_179(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 654)
+ def _reduce_180(val, _values, result)
@lexer.commentpop
result = Puppet::Parser::AST::Definition.new(classname(val[1]),
ast_context(true).merge(:arguments => val[2], :code => val[4],
@@ -2293,8 +2257,8 @@ module_eval(<<'.,.,', 'grammar.ra', 646)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 654)
- def _reduce_180(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 662)
+ def _reduce_181(val, _values, result)
@lexer.commentpop
result = Puppet::Parser::AST::Definition.new(classname(val[1]),
ast_context(true).merge(:arguments => val[2], :line => val[0][:line]))
@@ -2304,12 +2268,11 @@ module_eval(<<'.,.,', 'grammar.ra', 654)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 662)
- def _reduce_181(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 670)
+ def _reduce_182(val, _values, result)
@lexer.commentpop
# Our class gets defined in the parent namespace, not our own.
@lexer.namepop
- val[5].is_a_namespace = true
result = Puppet::Parser::AST::Hostclass.new(classname(val[1]),
ast_context(true).merge(:arguments => val[2], :parent => val[3],
:code => val[5], :line => val[0][:line]))
@@ -2318,8 +2281,8 @@ module_eval(<<'.,.,', 'grammar.ra', 662)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 670)
- def _reduce_182(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 677)
+ def _reduce_183(val, _values, result)
@lexer.commentpop
# Our class gets defined in the parent namespace, not our own.
@lexer.namepop
@@ -2331,8 +2294,8 @@ module_eval(<<'.,.,', 'grammar.ra', 670)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 679)
- def _reduce_183(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 686)
+ def _reduce_184(val, _values, result)
@lexer.commentpop
result = Puppet::Parser::AST::Node.new(val[1],
ast_context(true).merge(:parent => val[2], :code => val[4],
@@ -2342,8 +2305,8 @@ module_eval(<<'.,.,', 'grammar.ra', 679)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 684)
- def _reduce_184(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 691)
+ def _reduce_185(val, _values, result)
@lexer.commentpop
result = Puppet::Parser::AST::Node.new(val[1], ast_context(true).merge(:parent => val[2], :line => val[0][:line]))
@@ -2351,44 +2314,44 @@ module_eval(<<'.,.,', 'grammar.ra', 684)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 688)
- def _reduce_185(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 695)
+ def _reduce_186(val, _values, result)
result = val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 690)
- def _reduce_186(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 697)
+ def _reduce_187(val, _values, result)
result = val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 691)
- def _reduce_187(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 698)
+ def _reduce_188(val, _values, result)
result = val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 692)
- def _reduce_188(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 699)
+ def _reduce_189(val, _values, result)
result = "class"
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 697)
- def _reduce_189(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 704)
+ def _reduce_190(val, _values, result)
result = [result]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 700)
- def _reduce_190(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 707)
+ def _reduce_191(val, _values, result)
result = val[0]
result << val[2]
@@ -2396,65 +2359,65 @@ module_eval(<<'.,.,', 'grammar.ra', 700)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 705)
- def _reduce_191(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 712)
+ def _reduce_192(val, _values, result)
result = ast AST::HostName, :value => val[0]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 708)
- def _reduce_192(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 715)
+ def _reduce_193(val, _values, result)
result = val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 709)
- def _reduce_193(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 716)
+ def _reduce_194(val, _values, result)
result = val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 710)
- def _reduce_194(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 717)
+ def _reduce_195(val, _values, result)
result = val[0][:value]
result
end
.,.,
-# reduce 195 omitted
+# reduce 196 omitted
-module_eval(<<'.,.,', 'grammar.ra', 714)
- def _reduce_196(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 721)
+ def _reduce_197(val, _values, result)
result = nil
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 718)
- def _reduce_197(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 725)
+ def _reduce_198(val, _values, result)
result = ast AST::ASTArray, :children => []
result
end
.,.,
-# reduce 198 omitted
+# reduce 199 omitted
-module_eval(<<'.,.,', 'grammar.ra', 723)
- def _reduce_199(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 730)
+ def _reduce_200(val, _values, result)
result = nil
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 726)
- def _reduce_200(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 733)
+ def _reduce_201(val, _values, result)
result = val[1]
result = [result] unless result[0].is_a?(Array)
@@ -2462,10 +2425,10 @@ module_eval(<<'.,.,', 'grammar.ra', 726)
end
.,.,
-# reduce 201 omitted
+# reduce 202 omitted
-module_eval(<<'.,.,', 'grammar.ra', 732)
- def _reduce_202(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 739)
+ def _reduce_203(val, _values, result)
result = val[0]
result = [result] unless result[0].is_a?(Array)
result << val[2]
@@ -2474,8 +2437,8 @@ module_eval(<<'.,.,', 'grammar.ra', 732)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 738)
- def _reduce_203(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 745)
+ def _reduce_204(val, _values, result)
Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
result = [val[0][:value], val[2]]
@@ -2483,8 +2446,8 @@ module_eval(<<'.,.,', 'grammar.ra', 738)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 742)
- def _reduce_204(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 749)
+ def _reduce_205(val, _values, result)
Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
result = [val[0][:value]]
@@ -2492,56 +2455,56 @@ module_eval(<<'.,.,', 'grammar.ra', 742)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 745)
- def _reduce_205(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 752)
+ def _reduce_206(val, _values, result)
result = [val[0][:value], val[2]]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 747)
- def _reduce_206(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 754)
+ def _reduce_207(val, _values, result)
result = [val[0][:value]]
result
end
.,.,
-# reduce 207 omitted
+# reduce 208 omitted
-module_eval(<<'.,.,', 'grammar.ra', 752)
- def _reduce_208(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 759)
+ def _reduce_209(val, _values, result)
result = val[1]
result
end
.,.,
-# reduce 209 omitted
+# reduce 210 omitted
-module_eval(<<'.,.,', 'grammar.ra', 757)
- def _reduce_210(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 764)
+ def _reduce_211(val, _values, result)
result = val[1]
result
end
.,.,
-# reduce 211 omitted
-
# reduce 212 omitted
-module_eval(<<'.,.,', 'grammar.ra', 763)
- def _reduce_213(val, _values, result)
+# reduce 213 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 770)
+ def _reduce_214(val, _values, result)
result = ast AST::Variable, :value => val[0][:value], :line => val[0][:line]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 767)
- def _reduce_214(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 774)
+ def _reduce_215(val, _values, result)
if val[1].instance_of?(AST::ASTArray)
result = val[1]
else
@@ -2552,8 +2515,8 @@ module_eval(<<'.,.,', 'grammar.ra', 767)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 774)
- def _reduce_215(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 781)
+ def _reduce_216(val, _values, result)
if val[1].instance_of?(AST::ASTArray)
result = val[1]
else
@@ -2564,37 +2527,37 @@ module_eval(<<'.,.,', 'grammar.ra', 774)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 780)
- def _reduce_216(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 787)
+ def _reduce_217(val, _values, result)
result = ast AST::ASTArray
result
end
.,.,
-# reduce 217 omitted
-
# reduce 218 omitted
# reduce 219 omitted
-module_eval(<<'.,.,', 'grammar.ra', 787)
- def _reduce_220(val, _values, result)
+# reduce 220 omitted
+
+module_eval(<<'.,.,', 'grammar.ra', 794)
+ def _reduce_221(val, _values, result)
result = nil
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 790)
- def _reduce_221(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 797)
+ def _reduce_222(val, _values, result)
result = ast AST::Regex, :value => val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 794)
- def _reduce_222(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 801)
+ def _reduce_223(val, _values, result)
if val[1].instance_of?(AST::ASTHash)
result = val[1]
else
@@ -2605,8 +2568,8 @@ module_eval(<<'.,.,', 'grammar.ra', 794)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 801)
- def _reduce_223(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 808)
+ def _reduce_224(val, _values, result)
if val[1].instance_of?(AST::ASTHash)
result = val[1]
else
@@ -2617,18 +2580,18 @@ module_eval(<<'.,.,', 'grammar.ra', 801)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 807)
- def _reduce_224(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 814)
+ def _reduce_225(val, _values, result)
result = ast AST::ASTHash
result
end
.,.,
-# reduce 225 omitted
+# reduce 226 omitted
-module_eval(<<'.,.,', 'grammar.ra', 812)
- def _reduce_226(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 819)
+ def _reduce_227(val, _values, result)
if val[0].instance_of?(AST::ASTHash)
result = val[0].merge(val[2])
else
@@ -2640,40 +2603,40 @@ module_eval(<<'.,.,', 'grammar.ra', 812)
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 821)
- def _reduce_227(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 828)
+ def _reduce_228(val, _values, result)
result = ast AST::ASTHash, { :value => { val[0] => val[2] } }
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 824)
- def _reduce_228(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 831)
+ def _reduce_229(val, _values, result)
result = val[0][:value]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 825)
- def _reduce_229(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 832)
+ def _reduce_230(val, _values, result)
result = val[0]
result
end
.,.,
-module_eval(<<'.,.,', 'grammar.ra', 828)
- def _reduce_230(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 835)
+ def _reduce_231(val, _values, result)
result = ast AST::HashOrArrayAccess, :variable => val[0][:value], :key => val[2]
result
end
.,.,
-# reduce 231 omitted
+# reduce 232 omitted
-module_eval(<<'.,.,', 'grammar.ra', 833)
- def _reduce_232(val, _values, result)
+module_eval(<<'.,.,', 'grammar.ra', 840)
+ def _reduce_233(val, _values, result)
result = ast AST::HashOrArrayAccess, :variable => val[0], :key => val[2]
result
diff --git a/spec/integration/parser/compiler_spec.rb b/spec/integration/parser/compiler_spec.rb
index 266347c60..ffff4d845 100755
--- a/spec/integration/parser/compiler_spec.rb
+++ b/spec/integration/parser/compiler_spec.rb
@@ -81,7 +81,7 @@ describe Puppet::Parser::Compiler do
Puppet::Parser::Compiler.compile(node).version.should == 2
end
- it "should not allow classes inside conditional constructs" do
+ it "should not allow classes inside evaluated conditional constructs" do
Puppet[:code] = <<-PP
if true {
class foo {
@@ -91,4 +91,15 @@ describe Puppet::Parser::Compiler do
lambda { Puppet::Parser::Compiler.compile(Puppet::Node.new("mynode")) }.should raise_error(Puppet::Error)
end
+
+ it "should not allow classes inside unevaluated conditional constructs" do
+ Puppet[:code] = <<-PP
+ if false {
+ class foo {
+ }
+ }
+ PP
+
+ lambda { Puppet::Parser::Compiler.compile(Puppet::Node.new("mynode")) }.should raise_error(Puppet::Error)
+ end
end