puppet 2.7.11 → 2.7.12

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (220) hide show
  1. data/CHANGELOG +188 -0
  2. data/conf/osx/createpackage.sh +1 -0
  3. data/conf/redhat/puppet.spec +12 -9
  4. data/conf/suse/puppet.spec +4 -1
  5. data/install.rb +9 -22
  6. data/lib/puppet.rb +1 -31
  7. data/lib/puppet/agent.rb +3 -5
  8. data/lib/puppet/agent/locker.rb +15 -1
  9. data/lib/puppet/application.rb +7 -4
  10. data/lib/puppet/application/agent.rb +4 -25
  11. data/lib/puppet/application/apply.rb +3 -3
  12. data/lib/puppet/application/device.rb +2 -16
  13. data/lib/puppet/application/doc.rb +2 -2
  14. data/lib/puppet/application/face_base.rb +22 -5
  15. data/lib/puppet/application/filebucket.rb +2 -0
  16. data/lib/puppet/application/inspect.rb +2 -1
  17. data/lib/puppet/application/kick.rb +25 -9
  18. data/lib/puppet/application/queue.rb +0 -23
  19. data/lib/puppet/configurer.rb +1 -0
  20. data/lib/puppet/configurer/downloader.rb +7 -3
  21. data/lib/puppet/defaults.rb +34 -29
  22. data/lib/puppet/face/ca.rb +1 -1
  23. data/lib/puppet/face/catalog.rb +1 -0
  24. data/lib/puppet/face/file/store.rb +1 -1
  25. data/lib/puppet/face/module/list.rb +23 -3
  26. data/lib/puppet/face/module/search.rb +21 -32
  27. data/lib/puppet/face/module/uninstall.rb +56 -15
  28. data/lib/puppet/file_bucket/dipper.rb +2 -2
  29. data/lib/puppet/file_serving/base.rb +6 -5
  30. data/lib/puppet/file_serving/configuration/parser.rb +1 -1
  31. data/lib/puppet/file_serving/content.rb +1 -1
  32. data/lib/puppet/forge.rb +153 -0
  33. data/lib/puppet/{module_tool → forge}/cache.rb +1 -2
  34. data/lib/puppet/{module_tool → forge}/repository.rb +46 -4
  35. data/lib/puppet/indirector/exec.rb +1 -1
  36. data/lib/puppet/indirector/file_bucket_file/file.rb +3 -3
  37. data/lib/puppet/interface/action.rb +6 -2
  38. data/lib/puppet/module.rb +70 -10
  39. data/lib/puppet/module_tool.rb +2 -38
  40. data/lib/puppet/module_tool/applications.rb +15 -11
  41. data/lib/puppet/module_tool/applications/application.rb +2 -5
  42. data/lib/puppet/module_tool/applications/cleaner.rb +1 -1
  43. data/lib/puppet/module_tool/applications/installer.rb +10 -45
  44. data/lib/puppet/module_tool/applications/searcher.rb +2 -26
  45. data/lib/puppet/module_tool/applications/uninstaller.rb +39 -13
  46. data/lib/puppet/module_tool/applications/unpacker.rb +1 -1
  47. data/lib/puppet/module_tool/dependency.rb +1 -1
  48. data/lib/puppet/network/authconfig.rb +1 -1
  49. data/lib/puppet/network/handler/fileserver.rb +1 -1
  50. data/lib/puppet/network/http/handler.rb +4 -1
  51. data/lib/puppet/network/http/webrick.rb +4 -2
  52. data/lib/puppet/node/environment.rb +32 -6
  53. data/lib/puppet/parameter/path.rb +0 -4
  54. data/lib/puppet/parser/ast/relationship.rb +3 -16
  55. data/lib/puppet/parser/collector.rb +5 -3
  56. data/lib/puppet/parser/compiler.rb +2 -1
  57. data/lib/puppet/parser/functions/file.rb +1 -1
  58. data/lib/puppet/parser/functions/generate.rb +8 -2
  59. data/lib/puppet/parser/grammar.ra +16 -15
  60. data/lib/puppet/parser/parser.rb +959 -881
  61. data/lib/puppet/parser/relationship.rb +32 -15
  62. data/lib/puppet/parser/resource.rb +0 -1
  63. data/lib/puppet/parser/type_loader.rb +1 -2
  64. data/lib/puppet/provider/augeas/augeas.rb +17 -29
  65. data/lib/puppet/provider/exec/windows.rb +25 -3
  66. data/lib/puppet/provider/file/posix.rb +1 -1
  67. data/lib/puppet/provider/file/windows.rb +1 -1
  68. data/lib/puppet/provider/group/windows_adsi.rb +1 -1
  69. data/lib/puppet/provider/package/aix.rb +1 -1
  70. data/lib/puppet/provider/package/appdmg.rb +1 -1
  71. data/lib/puppet/provider/package/dpkg.rb +1 -1
  72. data/lib/puppet/provider/package/gem.rb +21 -23
  73. data/lib/puppet/provider/package/macports.rb +1 -1
  74. data/lib/puppet/provider/package/msi.rb +7 -1
  75. data/lib/puppet/provider/package/openbsd.rb +13 -16
  76. data/lib/puppet/provider/package/pacman.rb +1 -1
  77. data/lib/puppet/provider/package/pip.rb +3 -0
  78. data/lib/puppet/provider/package/pkg.rb +1 -1
  79. data/lib/puppet/provider/package/pkgdmg.rb +1 -1
  80. data/lib/puppet/provider/package/pkgutil.rb +1 -1
  81. data/lib/puppet/provider/package/portage.rb +2 -2
  82. data/lib/puppet/provider/package/rpm.rb +1 -1
  83. data/lib/puppet/provider/package/sun.rb +1 -1
  84. data/lib/puppet/provider/package/zypper.rb +35 -3
  85. data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +6 -2
  86. data/lib/puppet/provider/selmodule/semodule.rb +2 -2
  87. data/lib/puppet/provider/service/base.rb +1 -1
  88. data/lib/puppet/provider/service/launchd.rb +4 -0
  89. data/lib/puppet/provider/service/src.rb +2 -2
  90. data/lib/puppet/provider/service/upstart.rb +1 -1
  91. data/lib/puppet/provider/service/windows.rb +5 -4
  92. data/lib/puppet/provider/user/aix.rb +3 -3
  93. data/lib/puppet/provider/user/pw.rb +6 -0
  94. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  95. data/lib/puppet/resource/catalog.rb +6 -6
  96. data/lib/puppet/resource/type.rb +2 -0
  97. data/lib/puppet/ssl/certificate_request.rb +0 -70
  98. data/lib/puppet/transaction.rb +1 -1
  99. data/lib/puppet/transaction/report.rb +3 -2
  100. data/lib/puppet/type.rb +1 -1
  101. data/lib/puppet/type/cron.rb +5 -2
  102. data/lib/puppet/type/exec.rb +8 -0
  103. data/lib/puppet/type/file.rb +27 -18
  104. data/lib/puppet/type/file/checksum.rb +2 -2
  105. data/lib/puppet/type/file/content.rb +14 -9
  106. data/lib/puppet/type/file/ensure.rb +5 -4
  107. data/lib/puppet/type/file/group.rb +10 -2
  108. data/lib/puppet/type/file/mode.rb +46 -18
  109. data/lib/puppet/type/file/owner.rb +10 -2
  110. data/lib/puppet/type/file/source.rb +27 -40
  111. data/lib/puppet/type/file/target.rb +6 -6
  112. data/lib/puppet/type/group.rb +13 -9
  113. data/lib/puppet/type/k5login.rb +1 -1
  114. data/lib/puppet/type/package.rb +24 -8
  115. data/lib/puppet/type/scheduled_task.rb +77 -131
  116. data/lib/puppet/type/service.rb +22 -8
  117. data/lib/puppet/type/user.rb +29 -9
  118. data/lib/puppet/util.rb +24 -33
  119. data/lib/puppet/util/colors.rb +98 -0
  120. data/lib/puppet/util/diff.rb +3 -1
  121. data/lib/puppet/util/log.rb +5 -1
  122. data/lib/puppet/util/log/destinations.rb +37 -44
  123. data/lib/puppet/util/monkey_patches.rb +32 -0
  124. data/lib/puppet/util/pidlock.rb +70 -21
  125. data/lib/puppet/util/rdoc/parser.rb +4 -2
  126. data/lib/puppet/util/selinux.rb +1 -1
  127. data/lib/puppet/util/suidmanager.rb +2 -12
  128. data/lib/puppet/util/windows.rb +2 -0
  129. data/lib/puppet/util/windows/process.rb +33 -0
  130. data/lib/puppet/util/windows/security.rb +6 -4
  131. data/lib/puppet/util/windows/user.rb +44 -0
  132. data/lib/semver.rb +55 -4
  133. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.detail +19 -0
  134. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.list +10 -0
  135. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.query +1 -0
  136. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-SLES11sp1.out +369 -0
  137. data/spec/integration/defaults_spec.rb +10 -0
  138. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  139. data/spec/integration/module_tool_spec.rb +10 -12
  140. data/spec/integration/parser/compiler_spec.rb +147 -0
  141. data/spec/integration/type/file_spec.rb +1 -1
  142. data/spec/integration/util/windows/user_spec.rb +59 -0
  143. data/spec/lib/puppet/face/basetest.rb +5 -0
  144. data/spec/lib/puppet_spec/modules.rb +26 -0
  145. data/spec/spec_helper.rb +25 -0
  146. data/spec/unit/agent/locker_spec.rb +12 -0
  147. data/spec/unit/agent_backward_compatibility_spec.rb +152 -0
  148. data/spec/unit/agent_spec.rb +28 -8
  149. data/spec/unit/application/agent_spec.rb +4 -36
  150. data/spec/unit/application/device_spec.rb +55 -10
  151. data/spec/unit/application/face_base_spec.rb +32 -10
  152. data/spec/unit/application/filebucket_spec.rb +5 -0
  153. data/spec/unit/application/kick_spec.rb +6 -0
  154. data/spec/unit/application_spec.rb +8 -1
  155. data/spec/unit/configurer/downloader_spec.rb +4 -5
  156. data/spec/unit/face/ca_spec.rb +15 -4
  157. data/spec/unit/file_bucket/dipper_spec.rb +1 -1
  158. data/spec/unit/file_serving/base_spec.rb +60 -42
  159. data/spec/unit/file_serving/configuration/parser_spec.rb +5 -3
  160. data/spec/unit/file_serving/content_spec.rb +26 -27
  161. data/spec/unit/file_serving/metadata_spec.rb +22 -21
  162. data/spec/unit/forge/repository_spec.rb +86 -0
  163. data/spec/unit/forge_spec.rb +114 -0
  164. data/spec/unit/indirector/exec_spec.rb +8 -6
  165. data/spec/unit/indirector/facts/inventory_active_record_spec.rb +0 -1
  166. data/spec/unit/indirector/file_bucket_file/file_spec.rb +1 -1
  167. data/spec/unit/indirector/node/exec_spec.rb +1 -1
  168. data/spec/unit/indirector/resource/active_record_spec.rb +0 -4
  169. data/spec/unit/interface/action_builder_spec.rb +7 -5
  170. data/spec/unit/module_spec.rb +228 -9
  171. data/spec/unit/module_tool/application_spec.rb +3 -3
  172. data/spec/unit/module_tool/uninstaller_spec.rb +107 -27
  173. data/spec/unit/module_tool_spec.rb +0 -33
  174. data/spec/unit/network/authconfig_spec.rb +22 -21
  175. data/spec/unit/network/http/webrick_spec.rb +13 -9
  176. data/spec/unit/node/environment_spec.rb +159 -66
  177. data/spec/unit/parser/collector_spec.rb +16 -8
  178. data/spec/unit/parser/functions/generate_spec.rb +60 -18
  179. data/spec/unit/parser/resource_spec.rb +44 -0
  180. data/spec/unit/provider/augeas/augeas_spec.rb +160 -179
  181. data/spec/unit/provider/confine/feature_spec.rb +3 -5
  182. data/spec/unit/provider/package/dpkg_spec.rb +4 -2
  183. data/spec/unit/provider/package/gem_spec.rb +59 -43
  184. data/spec/unit/provider/package/openbsd_spec.rb +114 -0
  185. data/spec/unit/provider/package/pacman_spec.rb +1 -1
  186. data/spec/unit/provider/package/pip_spec.rb +10 -4
  187. data/spec/unit/provider/package/zypper_spec.rb +56 -14
  188. data/spec/unit/provider/selmodule_spec.rb +3 -3
  189. data/spec/unit/provider/service/launchd_spec.rb +22 -21
  190. data/spec/unit/provider/service/{upstart.rb → upstart_spec.rb} +7 -3
  191. data/spec/unit/provider/user/pw_spec.rb +19 -0
  192. data/spec/unit/resource/catalog_spec.rb +3 -3
  193. data/spec/unit/semver_spec.rb +117 -24
  194. data/spec/unit/transaction/report_spec.rb +11 -1
  195. data/spec/unit/type/cron_spec.rb +200 -213
  196. data/spec/unit/type/exec_spec.rb +7 -0
  197. data/spec/unit/type/file/content_spec.rb +2 -2
  198. data/spec/unit/type/file_spec.rb +12 -9
  199. data/spec/unit/type/package_spec.rb +25 -0
  200. data/spec/unit/type/schedule_spec.rb +31 -31
  201. data/spec/unit/util/diff_spec.rb +30 -0
  202. data/spec/unit/util/execution_stub_spec.rb +1 -2
  203. data/spec/unit/util/log/destinations_spec.rb +51 -0
  204. data/spec/unit/util/log_spec.rb +17 -1
  205. data/spec/unit/util/monkey_patches_spec.rb +119 -0
  206. data/spec/unit/util/rdoc/parser_spec.rb +25 -1
  207. data/spec/unit/util/selinux_spec.rb +2 -2
  208. data/spec/unit/util/suidmanager_spec.rb +6 -51
  209. data/spec/unit/util_spec.rb +82 -24
  210. data/test/lib/puppettest/certificates.rb +16 -0
  211. data/test/lib/puppettest/servertest.rb +4 -0
  212. data/test/util/pidlock.rb +125 -0
  213. metadata +23 -14
  214. data/ext/puppetstoredconfigclean.rb +0 -103
  215. data/lib/puppet/agent/disabler.rb +0 -27
  216. data/lib/puppet/util/anonymous_filelock.rb +0 -36
  217. data/spec/unit/agent/disabler_spec.rb +0 -60
  218. data/spec/unit/module_tool/repository_spec.rb +0 -52
  219. data/spec/unit/util/anonymous_filelock_spec.rb +0 -78
  220. data/spec/unit/util/pidlock_spec.rb +0 -208
@@ -4,36 +4,12 @@ module Puppet::Module::Tool
4
4
 
5
5
  def initialize(term, options = {})
6
6
  @term = term
7
+ @forge = Puppet::Forge::Forge.new
7
8
  super(options)
8
9
  end
9
10
 
10
11
  def run
11
- request = Net::HTTP::Get.new("/modules.json?q=#{URI.escape(@term)}")
12
- response = repository.make_http_request(request)
13
- case response
14
- when Net::HTTPOK
15
- matches = PSON.parse(response.body)
16
- else
17
- raise RuntimeError, "Could not execute search (HTTP #{response.code})"
18
- matches = []
19
- end
20
-
21
- # Return a list of module metadata hashes that match the search query.
22
- # This return value is used by the module_tool face install search,
23
- # and displayed to on the console.
24
- #
25
- # Example return value:
26
- #
27
- # [
28
- # {
29
- # "name" => "nginx",
30
- # "project_url" => "http://github.com/puppetlabs/puppetlabs-nginx",
31
- # "version" => "0.0.1",
32
- # "full_name" => "puppetlabs/nginx" # full_name comes back from
33
- # } # API all to the forge.
34
- # ]
35
- #
36
- matches
12
+ @forge.search(@term)
37
13
  end
38
14
  end
39
15
  end
@@ -2,29 +2,55 @@ module Puppet::Module::Tool
2
2
  module Applications
3
3
  class Uninstaller < Application
4
4
 
5
- def initialize(name, options = {})
5
+ def initialize(name, options)
6
6
  @name = name
7
- @target_directories = options[:target_directories]
8
- @removed_dirs = []
7
+ @options = options
8
+ @errors = Hash.new {|h, k| h[k] = []}
9
+ @removed_mods = []
10
+ @environment = Puppet::Node::Environment.new(options[:environment])
9
11
  end
10
12
 
11
13
  def run
12
- uninstall
13
- Puppet.notice "#{@name} is not installed" if @removed_dirs.empty?
14
- @removed_dirs
14
+ if module_installed?
15
+ uninstall
16
+ else
17
+ @errors[@name] << "Module #{@name} is not installed"
18
+ end
19
+ { :removed_mods => @removed_mods, :errors => @errors, :options => @options }
15
20
  end
16
21
 
17
22
  private
18
23
 
24
+ def version_match?(mod)
25
+ if @options[:version]
26
+ mod.version == @options[:version]
27
+ else
28
+ true
29
+ end
30
+ end
31
+
32
+ def module_installed?
33
+ @environment.module(@name)
34
+ end
35
+
36
+ def has_changes?
37
+ Puppet::Module::Tool::Applications::Checksummer.run(@module.path)
38
+ end
39
+
19
40
  def uninstall
20
41
  # TODO: #11803 Check for broken dependencies before uninstalling modules.
21
- #
22
- # Search each path in the target directories for the specified module
23
- # and delete the directory.
24
- @target_directories.each do |target|
25
- if File.directory? target
26
- module_path = File.join(target, @name)
27
- @removed_dirs << FileUtils.rm_rf(module_path).first if File.directory?(module_path)
42
+ @environment.modules_by_path.each do |path, modules|
43
+ modules.each do |mod|
44
+ if mod.name == @name
45
+ unless version_match?(mod)
46
+ @errors[@name] << "Installed version of #{mod.name} (v#{mod.version}) does not match version range"
47
+ end
48
+
49
+ if @errors[@name].empty?
50
+ FileUtils.rm_rf(mod.path)
51
+ @removed_mods << mod
52
+ end
53
+ end
28
54
  end
29
55
  end
30
56
  end
@@ -36,7 +36,7 @@ module Puppet::Module::Tool
36
36
  def extract_module_to_install_dir
37
37
  delete_existing_installation_or_abort!
38
38
 
39
- build_dir = Puppet::Module::Tool::Cache.base_path + "tmp-unpacker-#{Digest::SHA1.hexdigest(@filename.basename.to_s)}"
39
+ build_dir = Puppet::Forge::Cache.base_path + "tmp-unpacker-#{Digest::SHA1.hexdigest(@filename.basename.to_s)}"
40
40
  build_dir.mkpath
41
41
  begin
42
42
  Puppet.notice "Installing #{@filename.basename} to #{@module_dir.expand_path}"
@@ -10,7 +10,7 @@ module Puppet::Module::Tool
10
10
  # TODO: add error checking, the next line raises ArgumentError when +full_module_name+ is invalid
11
11
  @username, @name = Puppet::Module::Tool.username_and_modname_from(full_module_name)
12
12
  @version_requirement = version_requirement
13
- @repository = repository ? Repository.new(repository) : nil
13
+ @repository = repository ? Puppet::Forge::Repository.new(repository) : nil
14
14
  end
15
15
 
16
16
  # Return PSON representation of this data.
@@ -89,7 +89,7 @@ module Puppet
89
89
  File.open(@file) { |f|
90
90
  right = nil
91
91
  count = 1
92
- f.each { |line|
92
+ f.each_line { |line|
93
93
  case line
94
94
  when /^\s*#/ # skip comments
95
95
  count += 1
@@ -255,7 +255,7 @@ class Puppet::Network::Handler
255
255
  File.open(@configuration.file) { |f|
256
256
  mount = nil
257
257
  count = 1
258
- f.each { |line|
258
+ f.each_line { |line|
259
259
  case line
260
260
  when /^\s*#/; next # skip comments
261
261
  when /^\s*$/; next # skip blank lines
@@ -89,7 +89,10 @@ module Puppet::Network::HTTP::Handler
89
89
  status = 403 if status == 400
90
90
  end
91
91
  if exception.is_a?(Exception)
92
- puts exception.backtrace if Puppet[:trace]
92
+ if Puppet[:trace] then
93
+ puts exception.backtrace
94
+ Puppet.err(exception.backtrace.join("\n"))
95
+ end
93
96
  Puppet.err(exception)
94
97
  end
95
98
  set_content_type(response, "text/plain")
@@ -78,8 +78,10 @@ class Puppet::Network::HTTP::WEBrick
78
78
 
79
79
  # open the log manually to prevent file descriptor leak
80
80
  file_io = ::File.open(file, "a+")
81
- file_io.sync
82
- file_io.fcntl(Fcntl::F_SETFD, Fcntl::FD_CLOEXEC)
81
+ file_io.sync = true
82
+ if defined?(Fcntl::FD_CLOEXEC)
83
+ file_io.fcntl(Fcntl::F_SETFD, Fcntl::FD_CLOEXEC)
84
+ end
83
85
 
84
86
  args = [file_io]
85
87
  args << WEBrick::Log::DEBUG if Puppet::Util::Log.level == :debug
@@ -1,3 +1,4 @@
1
+ require 'puppet/util'
1
2
  require 'puppet/util/cacher'
2
3
  require 'monitor'
3
4
 
@@ -92,6 +93,14 @@ class Puppet::Node::Environment
92
93
  mod
93
94
  end
94
95
 
96
+ def module_by_forge_name(forge_name)
97
+ author, modname = forge_name.split('/')
98
+ found_mod = self.module(modname)
99
+ found_mod and found_mod.forge_name == forge_name ?
100
+ found_mod :
101
+ nil
102
+ end
103
+
95
104
  # Cache the modulepath, so that we aren't searching through
96
105
  # all known directories all the time.
97
106
  cached_attr(:modulepath, Puppet[:filetimeout]) do
@@ -127,6 +136,27 @@ class Puppet::Node::Environment
127
136
  modules_by_path
128
137
  end
129
138
 
139
+ def module_requirements
140
+ deps = {}
141
+ modules.each do |mod|
142
+ next unless mod.forge_name
143
+ deps[mod.forge_name] ||= []
144
+ mod.dependencies and mod.dependencies.each do |mod_dep|
145
+ deps[mod_dep['name']] ||= []
146
+ dep_details = {
147
+ 'name' => mod.forge_name,
148
+ 'version' => mod.version,
149
+ 'version_requirement' => mod_dep['version_requirement']
150
+ }
151
+ deps[mod_dep['name']] << dep_details
152
+ end
153
+ end
154
+ deps.each do |mod, mod_deps|
155
+ deps[mod] = mod_deps.sort_by {|d| d['name']}
156
+ end
157
+ deps
158
+ end
159
+
130
160
  def to_s
131
161
  name.to_s
132
162
  end
@@ -143,18 +173,14 @@ class Puppet::Node::Environment
143
173
  end
144
174
 
145
175
  def validate_dirs(dirs)
146
- dir_regex = Puppet.features.microsoft_windows? ? /^[A-Za-z]:#{File::SEPARATOR}/ : /^#{File::SEPARATOR}/
147
- # REMIND: Dir.getwd on windows returns a path containing backslashes, which when joined with
148
- # dir containing forward slashes, breaks our regex matching. In general, path validation needs
149
- # to be refactored which will be handled in a future commit.
150
176
  dirs.collect do |dir|
151
- if dir !~ dir_regex
177
+ unless Puppet::Util.absolute_path?(dir)
152
178
  File.expand_path(File.join(Dir.getwd, dir))
153
179
  else
154
180
  dir
155
181
  end
156
182
  end.find_all do |p|
157
- p =~ dir_regex && FileTest.directory?(p)
183
+ Puppet::Util.absolute_path?(p) && FileTest.directory?(p)
158
184
  end
159
185
  end
160
186
 
@@ -13,10 +13,6 @@ class Puppet::Parameter::Path < Puppet::Parameter
13
13
  fail "#{name} only accepts a single path, not an array of paths"
14
14
  end
15
15
 
16
- # We *always* support Unix path separators, as Win32 does now too.
17
- absolute = "[/#{::Regexp.quote(::File::SEPARATOR)}]"
18
- win32 = Puppet.features.microsoft_windows?
19
-
20
16
  fail("#{name} must be a fully qualified path") unless Array(paths).all? {|path| absolute_path?(path)}
21
17
 
22
18
  paths
@@ -7,24 +7,15 @@ class Puppet::Parser::AST::Relationship < Puppet::Parser::AST::Branch
7
7
 
8
8
  attr_accessor :left, :right, :arrow, :type
9
9
 
10
- def actual_left
11
- chained? ? left.right : left
12
- end
13
-
14
10
  # Evaluate our object, but just return a simple array of the type
15
11
  # and name.
16
12
  def evaluate(scope)
17
- if chained?
18
- real_left = left.safeevaluate(scope)
19
- left_dep = left_dep.shift if left_dep.is_a?(Array)
20
- else
21
- real_left = left.safeevaluate(scope)
22
- end
13
+ real_left = left.safeevaluate(scope)
23
14
  real_right = right.safeevaluate(scope)
24
15
 
25
16
  source, target = sides2edge(real_left, real_right)
26
- result = Puppet::Parser::Relationship.new(source, target, type)
27
- scope.compiler.add_relationship(result)
17
+ scope.compiler.add_relationship Puppet::Parser::Relationship.new(source, target, type)
18
+
28
19
  real_right
29
20
  end
30
21
 
@@ -46,10 +37,6 @@ class Puppet::Parser::AST::Relationship < Puppet::Parser::AST::Branch
46
37
 
47
38
  private
48
39
 
49
- def chained?
50
- left.is_a?(self.class)
51
- end
52
-
53
40
  def out_edge?
54
41
  ["->", "~>"].include?(arrow)
55
42
  end
@@ -102,14 +102,16 @@ class Puppet::Parser::Collector
102
102
 
103
103
  # key is '#{type}/#{name}', and host and filter.
104
104
  found = Puppet::Resource.indirection.
105
- search(@type, :host => @scope.host, :filter => @equery)
105
+ search(@type, :host => @scope.host, :filter => @equery, :scope => @scope)
106
106
 
107
- found.map {|x| x.to_resource(@scope) }.each do |item|
107
+ found_resources = found.map {|x| x.is_a?(Puppet::Parser::Resource) ? x : x.to_resource(@scope)}
108
+
109
+ found_resources.each do |item|
108
110
  if existing = @scope.findresource(item.type, item.title)
109
111
  unless existing.collector_id == item.collector_id
110
112
  # unless this is the one we've already collected
111
113
  raise Puppet::ParseError,
112
- "Exported resource #{item.ref} cannot override local resource"
114
+ "Another local or imported resource exists with the type and title #{item.ref}"
113
115
  end
114
116
  else
115
117
  item.exported = false
@@ -462,10 +462,11 @@ class Puppet::Parser::Compiler
462
462
  end
463
463
 
464
464
  settings_resource = Puppet::Parser::Resource.new("class", "settings", :scope => @topscope)
465
- settings_type.evaluate_code(settings_resource)
466
465
 
467
466
  @catalog.add_resource(settings_resource)
468
467
 
468
+ settings_type.evaluate_code(settings_resource)
469
+
469
470
  scope = @topscope.class_scope(settings_type)
470
471
 
471
472
  Puppet.settings.each do |name, setting|
@@ -7,7 +7,7 @@
7
7
  can be passed, and the first file that exists will be read in.") do |vals|
8
8
  ret = nil
9
9
  vals.each do |file|
10
- unless file =~ /^#{File::SEPARATOR}/
10
+ unless Puppet::Util.absolute_path?(file)
11
11
  raise Puppet::ParseError, "Files must be fully qualified"
12
12
  end
13
13
  if FileTest.exists?(file)
@@ -11,9 +11,15 @@ Puppet::Parser::Functions::newfunction(:generate, :type => :rvalue,
11
11
  generators, so all shell metacharacters are passed directly to
12
12
  the generator.") do |args|
13
13
 
14
- raise Puppet::ParseError, "Generators must be fully qualified" unless args[0] =~ /^#{File::SEPARATOR}/
14
+ raise Puppet::ParseError, "Generators must be fully qualified" unless Puppet::Util.absolute_path?(args[0])
15
15
 
16
- unless args[0] =~ /^[-#{File::SEPARATOR}\w.]+$/
16
+ if Puppet.features.microsoft_windows?
17
+ valid = args[0] =~ /^[a-z]:(?:[\/\\][\w.-]+)+$/i
18
+ else
19
+ valid = args[0] =~ /^[-\/\w.]+$/
20
+ end
21
+
22
+ unless valid
17
23
  raise Puppet::ParseError,
18
24
  "Generators can only contain alphanumerics, file separators, and dashes"
19
25
  end
@@ -76,7 +76,14 @@ relationship: relationship_side edge relationship_side {
76
76
  result = AST::Relationship.new(val[0], val[2], val[1][:value], ast_context)
77
77
  }
78
78
 
79
- relationship_side: resource | resourceref | collection
79
+ relationship_side: resource
80
+ | resourceref
81
+ | collection
82
+ | variable
83
+ | quotedtext
84
+ | selector
85
+ | casestatement
86
+ | hasharrayaccesses
80
87
 
81
88
  edge: IN_EDGE | OUT_EDGE | IN_EDGE_SUB | OUT_EDGE_SUB
82
89
 
@@ -136,10 +143,10 @@ resource: classname LBRACE resourceinstances endsemi RBRACE {
136
143
  } | classname LBRACE params endcomma RBRACE {
137
144
  # This is a deprecated syntax.
138
145
  error "All resource specifications require names"
139
- } | classref LBRACE params endcomma RBRACE {
146
+ } | type LBRACE params endcomma RBRACE {
140
147
  # a defaults setting for a type
141
148
  @lexer.commentpop
142
- result = ast(AST::ResourceDefaults, :type => val[0], :parameters => val[2])
149
+ result = ast(AST::ResourceDefaults, :type => val[0].value, :parameters => val[2])
143
150
  }
144
151
 
145
152
  # Override a value set elsewhere in the configuration.
@@ -172,10 +179,9 @@ at: AT { result = :virtual }
172
179
 
173
180
  # A collection statement. Currently supports no arguments at all, but eventually
174
181
  # will, I assume.
175
- collection: classref collectrhand LBRACE anyparams endcomma RBRACE {
182
+ collection: type collectrhand LBRACE anyparams endcomma RBRACE {
176
183
  @lexer.commentpop
177
- Puppet.warning addcontext("Collection names must now be capitalized") if val[0] =~ /^[a-z]/
178
- type = val[0].downcase
184
+ type = val[0].value.downcase
179
185
  args = {:type => type}
180
186
 
181
187
  if val[1].is_a?(AST::CollExpr)
@@ -191,11 +197,8 @@ collection: classref collectrhand LBRACE anyparams endcomma RBRACE {
191
197
  args[:override] = val[3]
192
198
  result = ast AST::Collection, args
193
199
  }
194
- | classref collectrhand {
195
- if val[0] =~ /^[a-z]/
196
- Puppet.warning addcontext("Collection names must now be capitalized")
197
- end
198
- type = val[0].downcase
200
+ | type collectrhand {
201
+ type = val[0].value.downcase
199
202
  args = {:type => type }
200
203
 
201
204
  if val[1].is_a?(AST::CollExpr)
@@ -368,8 +371,8 @@ boolean: BOOLEAN {
368
371
  resourceref: NAME LBRACK expressions RBRACK {
369
372
  Puppet.warning addcontext("Deprecation notice: Resource references should now be capitalized")
370
373
  result = ast AST::ResourceReference, :type => val[0][:value], :line => val[0][:line], :title => val[2]
371
- } | classref LBRACK expressions RBRACK {
372
- result = ast AST::ResourceReference, :type => val[0], :title => val[2]
374
+ } | type LBRACK expressions RBRACK {
375
+ result = ast AST::ResourceReference, :type => val[0].value, :title => val[2]
373
376
  }
374
377
 
375
378
  ifstatement_begin: IF ifstatement {
@@ -612,8 +615,6 @@ nodedef: NODE hostnames nodeparent LBRACE statements RBRACE {
612
615
  result = Puppet::Parser::AST::Node.new(val[1], ast_context(true).merge(:parent => val[2], :line => val[0][:line]))
613
616
  }
614
617
 
615
- classref: CLASSREF { result = val[0][:value] }
616
-
617
618
  classname: NAME { result = val[0][:value] }
618
619
  | CLASS { result = "class" }
619
620
 
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # DO NOT MODIFY!!!!
3
- # This file is automatically generated by Racc 1.4.6
3
+ # This file is automatically generated by Racc 1.4.7
4
4
  # from Racc grammer file "".
5
5
  #
6
6
 
@@ -21,7 +21,7 @@ module Puppet
21
21
  module Parser
22
22
  class Parser < Racc::Parser
23
23
 
24
- module_eval(<<'...end grammar.ra/module_eval...', 'grammar.ra', 763)
24
+ module_eval(<<'...end grammar.ra/module_eval...', 'grammar.ra', 764)
25
25
 
26
26
  # It got too annoying having code in a file that needs to be compiled.
27
27
  require 'puppet/parser/parser_support'
@@ -34,89 +34,94 @@ require 'puppet/parser/parser_support'
34
34
  ##### State transition tables begin ###
35
35
 
36
36
  clist = [
37
- '255,256,225,47,228,48,221,222,175,73,78,342,207,189,193,145,338,211',
38
- '49,343,331,227,184,186,190,192,174,221,243,73,78,215,216,73,78,336,201',
39
- '98,334,101,147,244,45,232,-154,185,188,197,302,195,196,179,180,182,183',
40
- '95,187,191,73,78,221,356,98,181,101,120,72,197,73,78,86,88,215,216,93',
41
- '219,118,309,79,96,95,124,89,218,60,103,73,78,60,225,98,72,207,63,35',
42
- '86,88,211,36,93,120,72,174,79,96,86,250,89,35,93,103,118,36,154,187',
43
- '191,124,89,63,72,132,181,64,86,88,66,64,93,63,66,52,79,73,78,120,89',
44
- '98,311,101,50,51,142,73,78,63,118,63,171,63,231,124,120,73,78,95,262',
45
- '98,35,101,35,35,114,118,36,114,72,316,124,11,86,88,11,317,93,95,72,170',
46
- '79,96,86,250,89,132,93,103,72,-170,154,322,86,88,89,63,93,323,324,325',
47
- '79,96,73,78,89,63,98,103,101,174,35,167,73,78,36,63,98,288,101,-153',
48
- '287,11,73,78,95,52,98,330,101,47,187,191,73,78,95,72,98,181,-106,86',
49
- '88,-152,-150,93,95,72,-151,79,96,86,88,89,205,93,103,72,299,79,96,86',
50
- '88,89,63,93,103,72,298,79,96,86,88,89,63,93,103,73,78,79,296,85,-157',
51
- '89,63,214,73,78,215,216,98,-155,101,144,63,-106,-106,-106,-106,76,48',
52
- '60,336,73,78,334,109,98,95,101,72,142,223,295,86,88,221,222,93,72,105',
53
- '333,79,86,88,95,89,93,289,266,212,79,96,221,260,89,72,63,103,64,86,88',
54
- '66,175,93,63,63,132,79,96,73,78,89,261,98,103,101,221,260,128,142,63',
55
- '63,63,179,180,345,73,78,187,191,98,95,101,-156,225,181,348,195,196,179',
56
- '180,109,72,227,187,191,86,88,95,349,93,181,332,231,79,96,221,222,89',
57
- '72,105,103,233,86,88,67,352,93,227,63,237,79,96,73,78,89,239,98,103',
58
- '101,-153,229,195,196,179,180,63,57,360,187,191,189,193,179,180,95,181',
59
- '170,187,191,184,186,190,192,-152,181,72,362,53,240,86,88,44,364,93,-204',
60
- '-150,38,79,96,-151,370,89,185,188,103,371,195,196,179,180,182,183,63',
61
- '187,191,73,78,,,98,181,101,,,,73,78,,,98,,101,,,,73,78,95,,98,,101,-22',
62
- '-22,-22,-22,,95,72,,,,86,88,,,93,95,72,,79,96,86,88,89,,93,103,72,,79',
63
- '96,86,88,89,63,93,103,,,79,96,73,78,89,63,,103,,341,,,73,78,,63,98,',
64
- '101,,,,73,78,,,98,,101,,,,73,78,95,72,98,,101,86,250,,,93,95,72,,154',
65
- ',86,88,89,,93,95,72,,79,96,86,88,89,63,93,103,72,,79,96,86,88,89,63',
66
- '93,103,,,79,96,73,78,89,63,,103,252,,,,73,78,,63,98,,101,,,,73,78,,',
67
- '98,,101,,,,73,78,95,72,98,,101,86,250,,,93,95,72,,154,,86,88,89,,93',
68
- '95,72,,79,96,86,88,89,63,93,103,72,,79,96,86,88,89,63,93,103,,,79,96',
69
- '73,78,89,63,98,103,101,,,,73,78,,63,98,,101,,,,73,78,95,,98,173,101',
70
- '41,42,43,39,,95,72,,,,86,88,,,93,95,72,,79,96,86,88,89,,93,103,72,,79',
71
- '96,86,88,89,63,93,103,,,79,96,73,78,89,63,98,103,101,,,,73,78,,63,98',
72
- '-24,-24,-24,-24,,73,78,95,,98,,101,41,42,43,39,,,72,,,,86,88,,,93,95',
73
- '72,,79,96,86,158,89,,93,103,72,,154,,86,88,89,63,93,,,,79,96,73,78,89',
74
- '63,98,103,101,,,,73,78,,63,98,,101,,,,,,95,,,,,,,,,,95,72,,,,86,88,',
75
- ',93,,72,,79,96,86,88,89,,93,103,329,,79,96,,,89,63,,103,189,193,,,,',
76
- ',63,,184,186,190,192,,,,,,,,73,78,,,98,,101,,,,,,185,188,,,195,196,179',
77
- '180,182,183,95,187,191,73,78,,,98,181,101,,72,,73,78,86,88,,,93,,,,79',
78
- '96,95,165,89,,,103,73,78,,,98,72,101,63,,86,88,,,93,,72,,79,96,86,250',
79
- '89,95,93,103,73,78,154,,98,,89,63,72,,,,86,88,,,93,63,,,79,96,,,89,73',
80
- '78,103,,98,,101,,72,,63,,86,250,,,93,73,78,,154,98,95,101,89,,,,,,,',
81
- ',72,,63,,86,88,95,,93,,,,79,96,,,89,72,,103,,86,88,,,93,,63,,79,96,73',
82
- '78,89,,98,103,101,,,,73,78,,63,98,173,101,,,,73,78,95,,98,,101,,,,73',
83
- '78,95,72,,,,86,88,,,93,95,72,,79,96,86,88,89,,93,103,72,,79,96,86,88',
84
- '89,63,93,103,72,,79,96,86,250,89,63,93,103,,,154,,73,78,89,63,98,,101',
85
- ',,,73,78,,63,98,,101,,,,73,78,95,,98,,101,,,,,,95,72,,,,86,88,,,93,95',
86
- '72,,79,96,86,88,89,,93,103,72,,79,96,86,88,89,63,93,103,,,79,96,73,78',
87
- '89,63,98,103,101,,,,73,78,,63,98,,101,,,,73,78,95,,98,,101,,,,,,95,72',
88
- ',,,86,88,,,93,95,72,,79,96,86,88,89,,93,103,72,,79,96,86,88,89,63,93',
89
- '103,,194,79,96,,,89,63,,103,189,193,,,,,204,63,,184,186,190,192,,,189',
90
- '193,,,,,,,,184,186,190,192,,,,,185,188,,,195,196,179,180,182,183,,187',
91
- '191,,,185,188,,181,195,196,179,180,182,183,,187,191,189,193,,,,181,',
92
- ',,184,186,190,192,,,189,193,,,,,,,,184,186,190,192,,,,,185,188,,,195',
93
- '196,179,180,182,183,,187,191,,,185,188,,181,195,196,179,180,182,183',
94
- ',187,191,189,193,,,,181,,,,184,186,190,192,,,189,193,,,,,,,,184,186',
95
- '190,192,,,,,185,188,,,195,196,179,180,182,183,,187,191,,,185,188,,181',
96
- '195,196,179,180,182,183,,187,191,189,193,,,,181,,,,184,186,190,192,',
97
- ',189,193,,,,,,,265,184,186,190,192,,,,,185,188,,,195,196,179,180,182',
98
- '183,,187,191,,,185,188,,181,195,196,179,180,182,183,,187,191,189,193',
99
- ',,,181,,,,184,186,190,192,,,189,193,,,,,,,,184,186,190,192,,,,,185,188',
100
- ',,195,196,179,180,182,183,,187,191,,,,188,,181,195,196,179,180,182,183',
101
- ',187,191,189,193,,,,181,,,,184,186,190,192,,,189,193,,,,,,,,184,186',
102
- '190,192,,,,,185,188,,,195,196,179,180,182,183,,187,191,,,,,,181,195',
103
- '196,179,180,182,183,,187,191,189,193,,,,181,,,,184,186,190,192,,,189',
104
- '193,,,,,,,,184,186,190,192,,,,,,,,,195,196,179,180,182,183,,187,191',
105
- ',,,,,181,195,196,179,180,182,183,,187,191,189,193,,,,181,,,,184,186',
106
- '190,192,,,189,193,,,,,,,,184,186,190,192,,,,,185,188,,,195,196,179,180',
107
- '182,183,,187,191,,,185,188,,181,195,196,179,180,182,183,,187,191,189',
108
- '193,,,,181,,,,184,186,190,192,,,,193,,,,,,,,184,,,,,,,,185,188,193,',
109
- '195,196,179,180,182,183,184,187,191,,,,,193,181,195,196,179,180,182',
110
- '183,184,187,191,,,,,,181,,193,,195,196,179,180,182,183,184,187,191,',
111
- ',,,,181,195,196,179,180,182,183,,187,191,,284,,,,181,,,,195,196,179',
112
- '180,182,183,,187,191,,369,,,26,181,32,1,,8,12,,18,,24,,29,319,2,,,11',
113
- '26,,32,1,,8,12,,18,,24,367,29,,2,,26,11,32,1,,8,12,,18,,24,301,29,,2',
114
- ',26,11,32,1,,8,12,,18,,24,363,29,,2,,26,11,32,1,,8,12,,18,,24,351,29',
115
- ',2,,26,11,32,1,,8,12,,18,,24,,29,,2,,26,11,32,1,,8,12,,18,,24,,29,26',
116
- '2,32,1,11,8,12,,18,,24,,29,26,2,32,1,11,8,12,,18,,24,,29,26,2,32,1,11',
117
- '8,12,,18,,24,,29,,2,,,11,195,196,179,180,182,183,,187,191,,,,,,181,195',
118
- '196,179,180,182,183,,187,191,,,,,,181' ]
119
- racc_action_table = arr = Array.new(2074, nil)
37
+ '183,187,245,69,248,70,241,290,169,9,17,69,351,190,194,199,333,169,71',
38
+ '-175,291,305,182,185,191,193,168,100,-156,9,17,235,236,9,17,168,175',
39
+ '88,166,92,200,345,67,251,343,184,189,171,100,195,196,177,178,180,181',
40
+ '77,186,192,9,17,245,143,88,179,92,102,76,171,104,303,31,91,142,168,48',
41
+ '241,312,148,18,82,77,313,36,9,17,95,102,35,302,104,371,76,346,35,51',
42
+ '31,91,-111,52,48,347,9,17,18,82,235,236,36,35,345,95,40,343,47,1,143',
43
+ '10,15,35,25,31,38,100,44,48,3,142,115,18,9,17,148,36,88,76,92,51,54',
44
+ '31,136,52,239,48,35,51,-162,18,18,52,238,36,77,-111,-111,-111,-111,262',
45
+ '9,17,261,102,35,76,104,369,250,31,91,143,-104,48,247,241,243,18,82,51',
46
+ '320,36,142,52,95,35,327,148,40,330,47,1,35,10,15,143,25,31,38,155,44',
47
+ '48,3,9,17,18,142,223,322,36,296,148,227,9,17,234,64,88,235,236,35,195',
48
+ '196,177,178,62,63,223,186,192,162,40,227,47,1,179,10,15,288,25,31,38',
49
+ '286,44,48,3,76,328,18,329,31,91,36,106,48,9,17,-157,18,88,-158,92,36',
50
+ '35,195,196,177,178,180,181,-156,186,192,35,-155,186,192,77,179,282,9',
51
+ '17,179,195,196,177,178,367,76,35,186,192,31,91,35,263,48,179,186,192',
52
+ '18,82,252,250,36,179,247,95,40,245,47,1,162,10,15,35,25,31,38,244,44',
53
+ '48,3,241,243,18,9,17,168,36,88,257,92,177,178,241,256,331,186,192,35',
54
+ '241,243,9,17,179,229,88,77,92,177,178,228,292,221,186,192,241,256,76',
55
+ '218,197,179,31,91,77,338,48,155,340,341,18,82,-103,106,36,76,-161,95',
56
+ '342,31,91,-159,-157,48,-160,35,-158,18,82,9,17,36,306,88,95,92,64,-155',
57
+ '354,9,17,-162,35,88,356,92,-208,119,162,9,17,77,-28,-28,-28,-28,58,59',
58
+ '60,56,357,77,76,155,151,70,31,91,119,115,48,360,76,247,18,82,31,91,36',
59
+ '107,48,95,76,106,18,82,31,136,36,35,48,95,9,17,18,364,-157,366,36,35',
60
+ '97,-158,9,17,72,61,88,55,92,35,-24,-24,-24,-24,58,59,60,56,372,373,40',
61
+ ',47,1,77,10,15,,25,31,38,,44,48,3,76,,18,,31,91,36,,48,,285,,18,82,',
62
+ ',36,35,,95,190,194,-22,-22,-22,-22,,35,,182,185,191,193,,,,,,,,9,17',
63
+ ',,109,,-175,,,,,,184,189,,,195,196,177,178,180,181,108,186,192,9,17',
64
+ ',,88,179,92,,76,,,,31,91,,,48,9,17,,18,88,77,92,36,,,,,,,,,76,,35,,31',
65
+ '91,77,,48,,,,18,82,,,36,76,,95,,31,91,,,48,,35,,18,82,9,17,36,,88,95',
66
+ '92,,,,9,17,,35,88,,92,,,,,,77,,,,,,,,,,77,76,,9,17,31,91,,,48,359,76',
67
+ ',18,82,31,91,36,,48,95,,,18,82,,,36,35,,95,40,,47,1,,10,15,35,25,31',
68
+ '38,,44,48,3,,,18,9,17,,36,88,,92,,,,9,17,,,35,,,,,,9,17,77,,,,137,,',
69
+ ',,,,76,,,,31,91,,,48,,76,51,18,82,31,126,36,44,48,95,76,,18,,31,136',
70
+ '36,35,48,9,17,,18,88,,92,36,35,,9,17,,,88,,92,,35,,9,17,77,,88,,92,',
71
+ ',,,,77,76,,,,31,91,,,48,77,76,,18,82,31,91,36,,48,95,76,,18,82,31,91',
72
+ '36,35,48,95,,,18,82,9,17,36,35,88,95,92,,,,9,17,,35,,,,,,,9,17,77,,88',
73
+ ',92,,,,,,,76,,,,31,91,,,48,77,76,,18,82,31,136,36,,48,95,76,,18,,31',
74
+ '91,36,35,48,,,,18,82,9,17,36,35,88,95,92,,,,9,17,,35,88,,92,,,,9,17',
75
+ '77,,88,,92,,,,,,77,76,,,,31,91,,,48,77,76,,18,82,31,91,36,,48,95,76',
76
+ ',18,82,31,91,36,35,48,95,,,18,82,9,17,36,35,88,95,92,,,,9,17,,35,88',
77
+ ',92,,,,9,17,77,,,,,,,,,,77,76,,,,31,91,,,48,,76,,18,82,31,91,36,,48',
78
+ '95,76,,18,82,31,136,36,35,48,95,,,18,,9,17,36,35,88,,92,,,,9,17,,35',
79
+ '88,,92,,,,9,17,77,,88,,92,,,,,,77,76,,,,31,91,,,48,77,76,,18,82,31,91',
80
+ '36,,48,95,76,,18,82,31,91,36,35,48,95,,,18,82,9,17,36,35,88,95,92,,',
81
+ ',9,17,,35,88,,92,,,,9,17,77,,,,,349,,,,,77,76,,,,31,91,,,48,,76,,18',
82
+ '82,31,91,36,,48,95,76,,18,82,31,136,36,35,48,95,,,18,,9,17,36,35,88',
83
+ ',92,,,,9,17,,35,88,,92,,,,9,17,77,,88,,92,,,,,,77,76,,,,31,91,,,48,77',
84
+ '76,,18,82,31,91,36,,48,95,76,,18,82,31,91,36,35,48,95,,,18,82,9,17,36',
85
+ '35,,95,,308,,,,,,35,,195,196,177,178,180,181,,186,192,,9,17,,40,179',
86
+ '47,1,,10,15,,25,31,38,,44,48,3,,,18,9,17,,36,88,,92,40,,47,1,,10,15',
87
+ '35,25,31,38,,44,48,3,77,,18,9,17,,36,88,,92,,76,,,,31,91,35,,48,,,,18',
88
+ '82,77,,36,9,17,95,,88,,92,,76,,35,,31,91,,,48,,,,18,82,77,,36,9,17,95',
89
+ ',88,,92,,76,,35,,31,91,,,48,,,,18,82,77,,36,9,17,95,,,,,,76,,35,,31',
90
+ '91,9,17,48,,88,,18,82,,,36,,,95,40,,47,1,,10,15,35,25,31,38,,44,48,3',
91
+ ',,18,,76,,36,,31,136,,,48,,,,18,35,9,17,36,,88,,92,,,,9,17,,35,88,,92',
92
+ ',,,9,17,77,,88,,,,,,,,77,76,,,,31,91,,,48,,76,,18,82,31,91,36,,48,95',
93
+ '76,,18,82,31,210,36,35,48,95,,,18,,9,17,36,35,88,,92,,,,9,17,,35,88',
94
+ '166,92,,,,,,77,215,,,,,,,,,77,76,,9,17,31,91,,,48,336,76,,18,82,31,91',
95
+ '36,,48,95,,,18,82,,,36,35,,95,40,,47,1,,10,15,35,25,31,38,,44,48,3,',
96
+ ',18,9,17,,36,88,,92,,,,,,,,35,,,9,17,,,88,77,92,,,,,,,,,,76,,,,31,91',
97
+ '77,258,48,,,,18,82,,,36,76,,95,,31,91,9,17,48,,35,232,18,82,,,36,,,95',
98
+ ',190,194,,,,,35,,,182,185,191,193,,,,9,17,76,51,88,,31,126,,44,48,,',
99
+ ',18,,184,189,36,,195,196,177,178,180,181,,186,192,35,,,,76,179,,,31',
100
+ '91,,,48,,219,,18,,,,36,,,190,194,,,,,220,,35,182,185,191,193,,,190,194',
101
+ ',,,,,,,182,185,191,193,,,,,184,189,,,195,196,177,178,180,181,,186,192',
102
+ ',,184,189,,179,195,196,177,178,180,181,,186,192,190,194,,,,179,,,,182',
103
+ '185,191,193,,,190,194,,,,,,,,182,185,191,193,,,,,,,,,195,196,177,178',
104
+ '180,181,,186,192,,,184,189,,179,195,196,177,178,180,181,,186,192,190',
105
+ '194,,,,179,,,,182,185,191,193,,,190,194,,,,,,,,182,185,191,193,,,,,184',
106
+ '189,,,195,196,177,178,180,181,,186,192,,,184,189,,179,195,196,177,178',
107
+ '180,181,,186,192,190,194,,,,179,,,,182,185,191,193,,,190,194,,,,,,,',
108
+ '182,185,191,193,,,,,184,189,,,195,196,177,178,180,181,,186,192,,,184',
109
+ '189,,179,195,196,177,178,180,181,,186,192,190,194,,,,179,,,,182,185',
110
+ '191,193,,,190,194,,,,,,,,182,185,191,193,,,,,184,189,,,195,196,177,178',
111
+ '180,181,,186,192,,,184,189,,179,195,196,177,178,180,181,,186,192,190',
112
+ '194,,,,179,,,,182,185,191,193,,,190,194,,,,,,,255,182,185,191,193,,',
113
+ ',,184,189,,,195,196,177,178,180,181,,186,192,,,184,189,,179,195,196',
114
+ '177,178,180,181,,186,192,190,194,,,,179,,,,182,185,191,193,,,190,194',
115
+ ',,,,,,,182,185,191,193,,,,,184,189,,,195,196,177,178,180,181,,186,192',
116
+ ',,184,189,,179,195,196,177,178,180,181,,186,192,190,194,,,,179,,,,182',
117
+ '185,191,193,,,190,194,,,,,,,,182,185,191,193,,,,,,189,,,195,196,177',
118
+ '178,180,181,,186,192,,,,,,179,195,196,177,178,180,181,,186,192,190,194',
119
+ ',,,179,,,,182,185,191,193,,,,194,,,,,,,,182,,,,,,,,,,194,,195,196,177',
120
+ '178,180,181,182,186,192,,,,,194,179,195,196,177,178,180,181,182,186',
121
+ '192,,,,,,179,,194,,195,196,177,178,180,181,182,186,192,,,,,,179,195',
122
+ '196,177,178,180,181,,186,192,,,,,,179,,,,195,196,177,178,180,181,,186',
123
+ '192,,,,,,179' ]
124
+ racc_action_table = arr = Array.new(2325, nil)
120
125
  idx = 0
121
126
  clist.each do |str|
122
127
  str.split(',', -1).each do |i|
@@ -126,95 +131,102 @@ clist = [
126
131
  end
127
132
 
128
133
  clist = [
129
- '169,169,142,6,134,6,263,263,88,287,287,292,298,169,169,59,287,298,6',
130
- '292,263,164,169,169,169,169,88,166,166,101,101,134,134,50,50,333,101',
131
- '50,333,50,59,166,6,142,83,169,169,287,213,169,169,169,169,169,169,50',
132
- '169,169,170,170,327,327,170,169,170,217,50,101,357,357,50,50,213,213',
133
- '50,127,217,226,50,50,170,217,50,127,18,50,171,171,147,158,171,170,109',
134
- '50,12,170,170,109,12,170,49,357,158,170,170,357,357,170,1,357,170,49',
135
- '1,357,268,268,49,357,170,171,227,268,18,171,171,18,147,171,357,147,8',
136
- '171,174,174,120,171,174,230,174,8,8,231,342,342,18,120,171,82,147,220',
137
- '120,45,175,175,174,174,175,108,175,233,40,108,45,233,40,174,233,45,108',
138
- '174,174,40,235,174,175,342,81,174,174,342,342,174,239,342,174,175,79',
139
- '342,241,175,175,342,174,175,242,243,247,175,175,179,179,175,342,179',
140
- '175,179,250,13,77,180,180,13,175,180,199,180,75,199,13,334,334,179,72',
141
- '334,260,334,70,267,267,325,325,180,179,325,267,261,179,179,90,91,179',
142
- '334,180,94,179,179,180,180,179,107,180,179,334,211,180,180,334,334,180',
143
- '179,334,180,325,209,334,334,325,325,334,180,325,334,24,24,325,208,24',
144
- '69,325,334,122,26,26,122,122,26,68,26,57,325,261,261,261,261,24,55,145',
145
- '284,181,181,284,54,181,26,181,24,53,129,207,24,24,129,129,24,26,205',
146
- '283,24,26,26,181,24,26,202,178,111,26,26,178,178,26,181,24,26,145,181',
147
- '181,145,114,181,191,26,48,181,181,29,29,181,172,29,181,29,172,172,46',
148
- '128,145,187,181,285,285,297,182,182,285,285,182,29,182,87,132,285,300',
149
- '270,270,270,270,37,29,133,270,270,29,29,182,306,29,270,264,139,29,29',
150
- '264,264,29,182,32,29,143,182,182,23,318,182,320,29,146,182,182,183,183',
151
- '182,150,183,182,183,152,137,271,271,271,271,182,15,336,271,271,137,137',
152
- '286,286,183,271,155,286,286,137,137,137,137,159,286,183,343,9,160,183',
153
- '183,5,355,183,356,161,2,183,183,162,366,183,137,137,183,368,137,137',
154
- '137,137,137,137,183,137,137,299,299,,,299,137,299,,,,44,44,,,44,,44',
155
- ',,,295,295,299,,295,,295,28,28,28,28,,44,299,,,,299,299,,,299,295,44',
156
- ',299,299,44,44,299,,44,299,295,,44,44,295,295,44,299,295,44,,,295,295',
157
- '290,290,295,44,,295,,290,,,47,47,,295,47,,47,,,,289,289,,,289,,289,',
158
- ',,184,184,47,290,184,,184,290,290,,,290,289,47,,290,,47,47,290,,47,184',
159
- '289,,47,47,289,289,47,290,289,47,184,,289,289,184,184,289,47,184,289',
160
- ',,184,184,167,167,184,289,,184,167,,,,51,51,,184,51,,51,,,,52,52,,,52',
161
- ',52,,,,185,185,51,167,185,,185,167,167,,,167,52,51,,167,,51,51,167,',
162
- '51,185,52,,51,51,52,52,51,167,52,51,185,,52,52,185,185,52,51,185,52',
163
- ',,185,185,186,186,185,52,186,185,186,,,,188,188,,185,188,,188,,,,98',
164
- '98,186,,98,98,98,33,33,33,33,,188,186,,,,186,186,,,186,98,188,,186,186',
165
- '188,188,186,,188,186,98,,188,188,98,98,188,186,98,188,,,98,98,190,190',
166
- '98,188,190,98,190,,,,67,67,,98,67,34,34,34,34,,192,192,190,,192,,192',
167
- '3,3,3,3,,,190,,,,190,190,,,190,192,67,,190,190,67,67,190,,67,190,192',
168
- ',67,,192,192,67,190,192,,,,192,192,193,193,192,67,193,192,193,,,,195',
169
- '195,,192,195,,195,,,,,,193,,,,,,,,,,195,193,,,,193,193,,,193,,195,,193',
170
- '193,195,195,193,,195,193,258,,195,195,,,195,193,,195,258,258,,,,,,195',
171
- ',258,258,258,258,,,,,,,,255,255,,,255,,255,,,,,,258,258,,,258,258,258',
172
- '258,258,258,255,258,258,76,76,,,76,258,76,,255,,252,252,255,255,,,255',
173
- ',,,255,255,76,76,255,,,255,78,78,,,78,76,78,255,,76,76,,,76,,252,,76',
174
- '76,252,252,76,78,252,76,240,240,252,,240,,252,76,78,,,,78,78,,,78,252',
175
- ',,78,78,,,78,196,196,78,,196,,196,,240,,78,,240,240,,,240,232,232,,240',
176
- '232,196,232,240,,,,,,,,,196,,240,,196,196,232,,196,,,,196,196,,,196',
177
- '232,,196,,232,232,,,232,,196,,232,232,225,225,232,,225,232,225,,,,85',
178
- '85,,232,85,85,85,,,,224,224,225,,224,,224,,,,204,204,85,225,,,,225,225',
179
- ',,225,224,85,,225,225,85,85,225,,85,225,224,,85,85,224,224,85,225,224',
180
- '85,204,,224,224,204,204,224,85,204,224,,,204,,219,219,204,224,219,,219',
181
- ',,,218,218,,204,218,,218,,,,103,103,219,,103,,103,,,,,,218,219,,,,219',
182
- '219,,,219,103,218,,219,219,218,218,219,,218,219,103,,218,218,103,103',
183
- '218,219,103,218,,,103,103,95,95,103,218,95,103,95,,,,96,96,,103,96,',
184
- '96,,,,189,189,95,,189,,189,,,,,,96,95,,,,95,95,,,95,189,96,,95,95,96',
185
- '96,95,,96,95,189,,96,96,189,189,96,95,189,96,,99,189,189,,,189,96,,189',
186
- '99,99,,,,,104,189,,99,99,99,99,,,104,104,,,,,,,,104,104,104,104,,,,',
187
- '99,99,,,99,99,99,99,99,99,,99,99,,,104,104,,99,104,104,104,104,104,104',
188
- ',104,104,308,308,,,,104,,,,308,308,308,308,,,344,344,,,,,,,,344,344',
189
- '344,344,,,,,308,308,,,308,308,308,308,308,308,,308,308,,,344,344,,308',
190
- '344,344,344,344,344,344,,344,344,339,339,,,,344,,,,339,339,339,339,',
191
- ',313,313,,,,,,,,313,313,313,313,,,,,339,339,,,339,339,339,339,339,339',
192
- ',339,339,,,313,313,,339,313,313,313,313,313,313,,313,313,347,347,,,',
193
- '313,,,,347,347,347,347,,,176,176,,,,,,,176,176,176,176,176,,,,,347,347',
194
- ',,347,347,347,347,347,347,,347,347,,,176,176,,347,176,176,176,176,176',
195
- '176,,176,176,117,117,,,,176,,,,117,117,117,117,,,273,273,,,,,,,,273',
196
- '273,273,273,,,,,117,117,,,117,117,117,117,117,117,,117,117,,,,273,,117',
197
- '273,273,273,273,273,273,,273,273,307,307,,,,273,,,,307,307,307,307,',
198
- ',305,305,,,,,,,,305,305,305,305,,,,,307,307,,,307,307,307,307,307,307',
199
- ',307,307,,,,,,307,305,305,305,305,305,305,,305,305,276,276,,,,305,,',
200
- ',276,276,276,276,,,304,304,,,,,,,,304,304,304,304,,,,,,,,,276,276,276',
201
- '276,276,276,,276,276,,,,,,276,304,304,304,304,304,304,,304,304,130,130',
202
- ',,,304,,,,130,130,130,130,,,136,136,,,,,,,,136,136,136,136,,,,,130,130',
203
- ',,130,130,130,130,130,130,,130,130,,,136,136,,130,136,136,136,136,136',
204
- '136,,136,136,135,135,,,,136,,,,135,135,135,135,,,,280,,,,,,,,280,,,',
205
- ',,,,135,135,274,,135,135,135,135,135,135,274,135,135,,,,,278,135,280',
206
- '280,280,280,280,280,278,280,280,,,,,,280,,277,,274,274,274,274,274,274',
207
- '277,274,274,,,,,,274,278,278,278,278,278,278,,278,278,,194,,,,278,,',
208
- ',277,277,277,277,277,277,,277,277,,362,,,194,277,194,194,,194,194,,194',
209
- ',194,,194,237,194,,,194,362,,362,362,,362,362,,362,,362,360,362,,362',
210
- ',237,362,237,237,,237,237,,237,,237,212,237,,237,,360,237,360,360,,360',
211
- '360,,360,,360,350,360,,360,,212,360,212,212,,212,212,,212,,212,317,212',
212
- ',212,,350,212,350,350,,350,350,,350,,350,,350,,350,,317,350,317,317',
213
- ',317,317,,317,,317,,317,0,317,0,0,317,0,0,,0,,0,,0,17,0,17,17,0,17,17',
214
- ',17,,17,,17,282,17,282,282,17,282,282,,282,,282,,282,,282,,,282,281',
215
- '281,281,281,281,281,,281,281,,,,,,281,272,272,272,272,272,272,,272,272',
216
- ',,,,,272' ]
217
- racc_action_check = arr = Array.new(2074, nil)
134
+ '96,96,162,12,157,12,216,216,91,261,261,79,304,96,96,105,261,126,12,126',
135
+ '216,225,96,96,96,96,91,25,79,92,92,157,157,88,88,126,92,88,88,88,105',
136
+ '296,12,162,296,96,96,261,200,96,96,96,96,96,96,88,96,96,238,238,210',
137
+ '71,238,96,238,25,88,92,25,224,88,88,71,210,88,231,231,71,88,88,238,233',
138
+ '88,366,366,88,200,25,223,200,366,238,298,88,1,238,238,292,1,238,298',
139
+ '220,220,238,238,233,233,238,200,342,238,366,342,366,366,143,366,366',
140
+ '238,366,366,366,199,366,366,366,143,221,366,239,239,143,366,239,220',
141
+ '239,11,2,220,220,11,150,220,366,15,2,220,11,15,150,220,239,292,292,292',
142
+ '292,172,364,364,172,199,220,239,199,364,240,239,239,237,215,239,214',
143
+ '259,259,239,239,252,246,239,237,252,239,199,252,237,364,259,364,364',
144
+ '239,364,364,67,364,364,364,247,364,364,364,219,219,364,67,119,249,364',
145
+ '219,67,119,218,218,145,10,218,145,145,364,268,268,268,268,10,10,305',
146
+ '268,268,250,219,305,219,219,268,219,219,213,219,219,219,211,219,219',
147
+ '219,218,254,219,256,218,218,219,209,218,242,242,207,218,242,205,242',
148
+ '218,219,279,279,279,279,279,279,204,279,279,218,203,264,264,242,279',
149
+ '198,358,358,264,267,267,267,267,358,242,192,267,267,242,242,186,174',
150
+ '242,267,265,265,242,242,163,159,242,265,156,242,358,155,358,358,151',
151
+ '358,358,242,358,358,358,152,358,358,358,152,152,358,245,245,136,358',
152
+ '245,167,245,280,280,167,167,260,280,280,358,260,260,17,17,280,131,17',
153
+ '245,17,281,281,121,217,117,281,281,217,217,245,110,97,281,245,245,17',
154
+ '287,245,288,289,290,245,245,291,90,245,17,89,245,295,17,17,86,85,17',
155
+ '81,245,80,17,17,251,251,17,227,251,17,251,76,75,307,263,263,74,17,263',
156
+ '311,263,312,73,72,346,346,251,7,7,7,7,4,4,4,4,317,263,251,70,68,65,251',
157
+ '251,53,47,251,335,263,339,251,251,263,263,251,37,263,251,346,32,263',
158
+ '263,346,346,263,251,346,263,24,24,346,345,22,347,346,263,21,19,343,343',
159
+ '13,8,343,3,343,346,50,50,50,50,49,49,49,49,368,370,24,,24,24,343,24',
160
+ '24,,24,24,24,,24,24,24,343,,24,,343,343,24,,343,,202,,343,343,,,343',
161
+ '24,,343,202,202,42,42,42,42,,343,,202,202,202,202,,,,,,,,38,38,,,38',
162
+ ',38,,,,,,202,202,,,202,202,202,202,202,202,38,202,202,40,40,,,40,202',
163
+ '40,,38,,,,38,38,,,38,44,44,,38,44,40,44,38,,,,,,,,,40,,38,,40,40,44',
164
+ ',40,,,,40,40,,,40,44,,40,,44,44,,,44,,40,,44,44,196,196,44,,196,44,196',
165
+ ',,,195,195,,44,195,,195,,,,,,196,,,,,,,,,,195,196,,328,328,196,196,',
166
+ ',196,328,195,,196,196,195,195,196,,195,196,,,195,195,,,195,196,,195',
167
+ '328,,328,328,,328,328,195,328,328,328,,328,328,328,,,328,54,54,,328',
168
+ '54,,54,,,,57,57,,,328,,,,,,61,61,54,,,,61,,,,,,,54,,,,54,54,,,54,,57',
169
+ '57,54,54,57,57,54,57,57,54,61,,57,,61,61,57,54,61,62,62,,61,62,,62,61',
170
+ '57,,63,63,,,63,,63,,61,,64,64,62,,64,,64,,,,,,63,62,,,,62,62,,,62,64',
171
+ '63,,62,62,63,63,62,,63,62,64,,63,63,64,64,63,62,64,63,,,64,64,194,194',
172
+ '64,63,194,64,194,,,,137,137,,64,,,,,,,193,193,194,,193,,193,,,,,,,194',
173
+ ',,,194,194,,,194,193,137,,194,194,137,137,194,,137,194,193,,137,,193',
174
+ '193,137,194,193,,,,193,193,69,69,193,137,69,193,69,,,,191,191,,193,191',
175
+ ',191,,,,190,190,69,,190,,190,,,,,,191,69,,,,69,69,,,69,190,191,,69,69',
176
+ '191,191,69,,191,69,190,,191,191,190,190,191,69,190,191,,,190,190,189',
177
+ '189,190,191,189,190,189,,,,185,185,,190,185,,185,,,,310,310,189,,,,',
178
+ ',,,,,185,189,,,,189,189,,,189,,185,,189,189,185,185,189,,185,189,310',
179
+ ',185,185,310,310,185,189,310,185,,,310,,306,306,310,185,306,,306,,,',
180
+ '184,184,,310,184,,184,,,,77,77,306,,77,,77,,,,,,184,306,,,,306,306,',
181
+ ',306,77,184,,306,306,184,184,306,,184,306,77,,184,184,77,77,184,306',
182
+ '77,184,,,77,77,183,183,77,184,183,77,183,,,,302,302,,77,302,,302,,,',
183
+ '300,300,183,,,,,300,,,,,302,183,,,,183,183,,,183,,302,,183,183,302,302',
184
+ '183,,302,183,300,,302,302,300,300,302,183,300,302,,,300,,82,82,300,302',
185
+ '82,,82,,,,182,182,,300,182,,182,,,,181,181,82,,181,,181,,,,,,182,82',
186
+ ',,,82,82,,,82,181,182,,82,82,182,182,82,,182,82,181,,182,182,181,181',
187
+ '182,82,181,182,,,181,181,228,228,181,182,,181,,228,,,,,,181,,269,269',
188
+ '269,269,269,269,,269,269,,294,294,,228,269,228,228,,228,228,,228,228',
189
+ '228,,228,228,228,,,228,180,180,,228,180,,180,294,,294,294,,294,294,228',
190
+ '294,294,294,,294,294,294,180,,294,179,179,,294,179,,179,,180,,,,180',
191
+ '180,294,,180,,,,180,180,179,,180,178,178,180,,178,,178,,179,,180,,179',
192
+ '179,,,179,,,,179,179,178,,179,95,95,179,,95,,95,,178,,179,,178,178,',
193
+ ',178,,,,178,178,95,,178,0,0,178,,,,,,95,,178,,95,95,286,286,95,,286',
194
+ ',95,95,,,95,,,95,0,,0,0,,0,0,95,0,0,0,,0,0,0,,,0,,286,,0,,286,286,,',
195
+ '286,,,,286,0,177,177,286,,177,,177,,,,106,106,,286,106,,106,,,,107,107',
196
+ '177,,107,,,,,,,,106,177,,,,177,177,,,177,,106,,177,177,106,106,177,',
197
+ '106,177,107,,106,106,107,107,106,177,107,106,,,107,,108,108,107,106',
198
+ '108,,108,,,,109,109,,107,109,109,109,,,,,,108,108,,,,,,,,,109,108,,282',
199
+ '282,108,108,,,108,282,109,,108,108,109,109,108,,109,108,,,109,109,,',
200
+ '109,108,,109,282,,282,282,,282,282,109,282,282,282,,282,282,282,,,282',
201
+ '169,169,,282,169,,169,,,,,,,,282,,,168,168,,,168,169,168,,,,,,,,,,169',
202
+ ',,,169,169,168,168,169,,,,169,169,,,169,168,,169,,168,168,118,118,168',
203
+ ',169,140,168,168,,,168,,,168,,140,140,,,,,168,,,140,140,140,140,,,,229',
204
+ '229,118,118,229,,118,118,,118,118,,,,118,,140,140,118,,140,140,140,140',
205
+ '140,140,,140,140,118,,,,229,140,,,229,229,,,229,,113,,229,,,,229,,,113',
206
+ '113,,,,,114,,229,113,113,113,113,,,114,114,,,,,,,,114,114,114,114,,',
207
+ ',,113,113,,,113,113,113,113,113,113,,113,113,,,114,114,,113,114,114',
208
+ '114,114,114,114,,114,114,316,316,,,,114,,,,316,316,316,316,,,319,319',
209
+ ',,,,,,,319,319,319,319,,,,,,,,,316,316,316,316,316,316,,316,316,,,319',
210
+ '319,,316,319,319,319,319,319,319,,319,319,324,324,,,,319,,,,324,324',
211
+ '324,324,,,138,138,,,,,,,,138,138,138,138,,,,,324,324,,,324,324,324,324',
212
+ '324,324,,324,324,,,138,138,,324,138,138,138,138,138,138,,138,138,139',
213
+ '139,,,,138,,,,139,139,139,139,,,318,318,,,,,,,,318,318,318,318,,,,,139',
214
+ '139,,,139,139,139,139,139,139,,139,139,,,318,318,,139,318,318,318,318',
215
+ '318,318,,318,318,122,122,,,,318,,,,122,122,122,122,,,353,353,,,,,,,',
216
+ '353,353,353,353,,,,,122,122,,,122,122,122,122,122,122,,122,122,,,353',
217
+ '353,,122,353,353,353,353,353,353,,353,353,334,334,,,,353,,,,334,334',
218
+ '334,334,,,164,164,,,,,,,164,164,164,164,164,,,,,334,334,,,334,334,334',
219
+ '334,334,334,,334,334,,,164,164,,334,164,164,164,164,164,164,,164,164',
220
+ '350,350,,,,164,,,,350,350,350,350,,,153,153,,,,,,,,153,153,153,153,',
221
+ ',,,350,350,,,350,350,350,350,350,350,,350,350,,,153,153,,350,153,153',
222
+ '153,153,153,153,,153,153,271,271,,,,153,,,,271,271,271,271,,,274,274',
223
+ ',,,,,,,274,274,274,274,,,,,,271,,,271,271,271,271,271,271,,271,271,',
224
+ ',,,,271,274,274,274,274,274,274,,274,274,315,315,,,,274,,,,315,315,315',
225
+ '315,,,,272,,,,,,,,272,,,,,,,,,,276,,315,315,315,315,315,315,276,315',
226
+ '315,,,,,275,315,272,272,272,272,272,272,275,272,272,,,,,,272,,278,,276',
227
+ '276,276,276,276,276,278,276,276,,,,,,276,275,275,275,275,275,275,,275',
228
+ '275,,,,,,275,,,,278,278,278,278,278,278,,278,278,,,,,,278' ]
229
+ racc_action_check = arr = Array.new(2325, nil)
218
230
  idx = 0
219
231
  clist.each do |str|
220
232
  str.split(',', -1).each do |i|
@@ -224,218 +236,282 @@ clist = [
224
236
  end
225
237
 
226
238
  racc_action_pointer = [
227
- 1970, 72, 409, 724, nil, 433, -3, nil, 124, 436,
228
- nil, nil, 58, 171, nil, 423, nil, 1983, 82, nil,
229
- nil, nil, nil, 393, 270, nil, 279, nil, 436, 343,
230
- nil, nil, 394, 657, 712, nil, nil, 353, nil, nil,
231
- 124, nil, nil, nil, 480, 127, 346, 547, 302, 76,
232
- 31, 624, 634, 266, 277, 287, nil, 288, nil, 3,
233
- nil, nil, nil, nil, nil, nil, nil, 768, 263, 254,
234
- 220, nil, 216, nil, nil, 193, 933, 185, 961, 180,
235
- nil, 170, 135, 21, nil, 1085, nil, 346, 2, nil,
236
- 215, 216, nil, nil, 220, 1219, 1229, nil, 711, 1277,
237
- nil, 27, nil, 1172, 1292, nil, nil, 237, 121, 57,
238
- nil, 317, nil, nil, 332, nil, nil, 1517, nil, nil,
239
- 110, nil, 234, nil, nil, nil, nil, 57, 315, 300,
240
- 1697, nil, 359, 367, -18, 1757, 1712, 410, nil, 377,
241
- nil, nil, -9, 361, nil, 294, 398, 86, nil, nil,
242
- 392, nil, 393, nil, nil, 427, nil, nil, 78, 417,
243
- 404, 429, 433, nil, 9, nil, 16, 614, nil, -4,
244
- 56, 84, 341, nil, 130, 150, 1472, nil, 317, 197,
245
- 207, 296, 360, 407, 567, 644, 691, 295, 701, 1239,
246
- 758, 278, 778, 825, 1859, 835, 1011, nil, nil, 205,
247
- nil, nil, 312, nil, 1105, 313, nil, 293, 250, 251,
248
- nil, 238, 1925, 23, nil, nil, nil, 41, 1162, 1152,
249
- 137, nil, nil, nil, 1095, 1075, 68, 80, nil, nil,
250
- 128, 101, 1028, 123, nil, 164, nil, 1893, nil, 142,
251
- 986, 179, 185, 170, nil, nil, nil, 185, nil, nil,
252
- 182, nil, 943, nil, nil, 908, nil, nil, 873, nil,
253
- 217, 227, nil, -5, 381, nil, nil, 167, 54, nil,
254
- 320, 365, 2006, 1532, 1790, nil, 1637, 1823, 1805, nil,
255
- 1772, 1991, 1996, 307, 266, 304, 374, 7, nil, 557,
256
- 537, nil, -1, nil, nil, 490, nil, 336, -23, 470,
257
- 363, nil, nil, nil, 1652, 1592, 376, 1577, 1337, nil,
258
- nil, nil, nil, 1412, nil, nil, nil, 1957, 393, nil,
259
- 392, nil, nil, nil, nil, 227, nil, 49, nil, nil,
260
- nil, nil, nil, 4, 217, nil, 416, nil, nil, 1397,
261
- nil, nil, 140, 435, 1352, nil, nil, 1457, nil, nil,
262
- 1941, nil, nil, nil, nil, 440, 442, 66, nil, nil,
263
- 1909, nil, 1877, nil, nil, nil, 448, nil, 453, nil,
264
- nil, nil ]
239
+ 1378, 58, 122, 421, 351, nil, nil, 347, 440, nil,
240
+ 207, 100, -3, 454, nil, 108, nil, 338, nil, 436,
241
+ nil, 458, 431, nil, 448, 25, nil, nil, nil, nil,
242
+ nil, nil, 435, nil, nil, nil, nil, 429, 531, nil,
243
+ 556, nil, 452, nil, 573, nil, nil, 425, nil, 409,
244
+ 405, nil, nil, 402, 701, nil, nil, 711, nil, nil,
245
+ nil, 721, 763, 773, 783, 415, nil, 168, 414, 897,
246
+ 381, 37, 366, 381, 376, 372, 388, 1051, nil, 5,
247
+ 361, 359, 1165, nil, nil, 357, 356, nil, 31, 351,
248
+ 365, 2, 27, nil, nil, 1353, -4, 358, nil, nil,
249
+ nil, nil, nil, nil, nil, 3, 1449, 1459, 1506, 1516,
250
+ 345, nil, nil, 1711, 1726, nil, nil, 339, 1643, 169,
251
+ nil, 341, 1951, nil, nil, nil, 11, nil, nil, nil,
252
+ nil, 332, nil, nil, nil, nil, 301, 840, 1846, 1891,
253
+ 1643, nil, nil, 91, nil, 166, nil, nil, nil, nil,
254
+ 123, 269, 309, 2086, nil, 295, 291, -18, nil, 288,
255
+ nil, nil, -9, 262, 2026, nil, nil, 321, 1604, 1587,
256
+ nil, nil, 147, nil, 281, nil, nil, 1439, 1328, 1303,
257
+ 1278, 1185, 1175, 1098, 1041, 974, 229, nil, nil, 964,
258
+ 917, 907, 224, 850, 830, 630, 620, nil, 268, 120,
259
+ 46, nil, 496, 248, 244, 234, nil, 231, nil, 244,
260
+ 49, 198, nil, 215, 159, 146, -5, 343, 208, 198,
261
+ 99, 125, nil, 73, 44, 9, nil, 375, 1232, 1674,
262
+ nil, 64, nil, 56, nil, nil, nil, 144, 56, 127,
263
+ 153, nil, 250, nil, nil, 321, 168, 156, nil, 196,
264
+ 187, 385, 140, nil, 236, nil, 239, nil, nil, 161,
265
+ 327, 7, nil, 395, 212, 235, nil, 227, 165, 1196,
266
+ nil, 2131, 2206, nil, 2146, 2239, 2224, nil, 2257, 208,
267
+ 275, 292, 1541, nil, nil, nil, 1392, 354, 325, 357,
268
+ 342, 347, 89, nil, 1257, 367, 10, nil, 80, nil,
269
+ 1118, nil, 1108, nil, -13, 189, 1031, 387, nil, nil,
270
+ 984, 393, 395, nil, nil, 2191, 1771, 409, 1906, 1786,
271
+ nil, nil, nil, nil, 1831, nil, nil, nil, 655, nil,
272
+ nil, nil, nil, nil, 2011, 420, nil, nil, nil, 419,
273
+ nil, nil, 78, 458, nil, 445, 405, 447, nil, nil,
274
+ 2071, nil, nil, 1966, nil, nil, nil, nil, 275, nil,
275
+ nil, nil, nil, nil, 155, nil, 81, nil, 467, nil,
276
+ 468, nil, nil, nil ]
265
277
 
266
278
  racc_action_default = [
267
- -180, -217, -53, -217, -9, -217, -217, -10, -217, -23,
268
- -11, -170, -172, -217, -12, -217, -13, -1, -217, -14,
269
- -2, -15, -3, -217, -171, -16, -217, -17, -6, -217,
270
- -18, -7, -217, -19, -8, -172, -171, -180, -54, -28,
271
- -217, -25, -26, -27, -217, -180, -56, -217, -88, -180,
272
- -217, -217, -217, -95, -180, -217, -52, -217, -4, -180,
273
- -177, -173, -175, -205, -176, -179, -178, -88, -40, -215,
274
- -217, -41, -197, -100, -45, -42, -217, -217, -217, -77,
275
- -43, -44, -32, -46, -33, -217, -105, -47, -76, -75,
276
- -37, -38, -159, -158, -39, -217, -217, -115, -217, -217,
277
- -108, -217, -116, -217, -217, -160, -161, -163, -217, -181,
278
- -182, -217, -20, -23, -171, -22, -24, -86, -197, -68,
279
- -180, -59, -217, -60, -76, -62, -69, -217, -95, -217,
280
- -35, -89, -217, -203, -217, -85, -87, -217, -93, -203,
281
- -94, -96, -217, -180, 372, -217, -217, -217, -191, -155,
282
- -217, -81, -82, -83, -77, -84, -154, -156, -76, -78,
283
- -73, -79, -80, -71, -203, -31, -217, -217, -101, -217,
284
- -217, -217, -217, -200, -217, -217, -217, -133, -217, -217,
285
- -217, -217, -217, -217, -217, -217, -217, -217, -217, -217,
286
- -217, -217, -217, -217, -217, -217, -217, -212, -213, -217,
287
- -209, -208, -217, -126, -217, -217, -21, -190, -217, -203,
288
- -185, -188, -217, -217, -57, -65, -64, -217, -217, -217,
289
- -203, -201, -202, -107, -217, -217, -217, -204, -58, -214,
290
- -217, -204, -217, -217, -193, -217, -174, -217, -192, -88,
291
- -74, -217, -217, -202, -29, -157, -153, -217, -144, -145,
292
- -76, -152, -217, -150, -151, -217, -103, -102, -217, -34,
293
- -202, -198, -99, -217, -217, -136, -198, -123, -122, -117,
294
- -124, -125, -128, -135, -130, -118, -134, -132, -129, -119,
295
- -131, -127, -5, -217, -111, -120, -121, -217, -206, -217,
296
- -217, -138, -217, -142, -162, -217, -183, -217, -204, -217,
297
- -217, -165, -63, -61, -66, -67, -217, -36, -91, -50,
298
- -90, -51, -97, -92, -195, -194, -196, -217, -217, -169,
299
- -203, -72, -48, -49, -30, -217, -147, -203, -104, -216,
300
- -199, -98, -106, -111, -217, -110, -217, -210, -207, -211,
301
- -139, -137, -217, -217, -189, -184, -186, -187, -164, -55,
302
- -217, -167, -168, -70, -149, -217, -202, -217, -109, -112,
303
- -217, -143, -217, -166, -146, -148, -217, -114, -217, -141,
304
- -113, -140 ]
279
+ -184, -221, -219, -58, -221, -9, -155, -10, -221, -105,
280
+ -201, -221, -156, -23, -11, -176, -160, -221, -82, -25,
281
+ -12, -221, -26, -13, -1, -221, -159, -27, -14, -2,
282
+ -161, -110, -29, -15, -3, -209, -80, -221, -81, -16,
283
+ -221, -17, -6, -164, -221, -18, -7, -221, -163, -19,
284
+ -8, -176, -175, -184, -221, -59, -33, -221, -30, -31,
285
+ -32, -221, -221, -221, -221, -221, -57, -184, -61, -221,
286
+ -93, -184, -100, -184, -219, -43, -201, -221, -50, -44,
287
+ -47, -45, -221, -106, -48, -42, -51, -46, -221, -52,
288
+ -49, -81, -221, -121, -120, -221, -221, -221, -4, -177,
289
+ -181, -179, -180, -183, -182, -184, -221, -93, -221, -221,
290
+ -37, -38, -113, -221, -221, -165, -166, -168, -221, -185,
291
+ -186, -221, -91, -20, -28, -23, -81, -22, -24, -162,
292
+ -156, -221, -158, -149, -157, -150, -81, -221, -90, -92,
293
+ -221, -74, -201, -184, -73, -221, -65, -64, -81, -67,
294
+ -221, -100, -221, -40, -94, -221, -207, -221, -98, -207,
295
+ -99, -101, -221, -184, -221, -138, -204, -221, -221, -221,
296
+ -217, -216, -221, -213, -221, -212, -131, -221, -221, -221,
297
+ -221, -221, -221, -221, -221, -221, -221, -108, -107, -221,
298
+ -221, -221, -221, -221, -221, -221, -221, 374, -221, -221,
299
+ -221, -195, -221, -84, -85, -87, -88, -83, -86, -89,
300
+ -81, -78, -76, -221, -207, -36, -221, -221, -221, -221,
301
+ -221, -221, -21, -194, -221, -207, -189, -192, -221, -221,
302
+ -152, -207, -218, -221, -62, -70, -69, -221, -221, -221,
303
+ -207, -205, -221, -206, -112, -221, -221, -208, -63, -221,
304
+ -208, -221, -221, -197, -221, -141, -206, -202, -104, -221,
305
+ -221, -221, -210, -221, -128, -127, -122, -129, -130, -133,
306
+ -109, -140, -135, -123, -139, -137, -134, -124, -136, -132,
307
+ -125, -126, -221, -178, -196, -220, -79, -221, -93, -221,
308
+ -206, -34, -202, -39, -5, -221, -116, -143, -221, -147,
309
+ -221, -167, -221, -187, -221, -208, -221, -221, -170, -154,
310
+ -221, -221, -206, -68, -66, -71, -72, -221, -41, -96,
311
+ -55, -95, -56, -102, -97, -198, -199, -200, -221, -203,
312
+ -103, -111, -214, -211, -215, -221, -174, -77, -53, -207,
313
+ -54, -35, -116, -221, -115, -221, -221, -221, -144, -142,
314
+ -193, -188, -190, -191, -169, -153, -151, -60, -221, -172,
315
+ -173, -75, -114, -117, -221, -148, -221, -171, -221, -119,
316
+ -221, -146, -118, -145 ]
305
317
 
306
318
  racc_goto_table = [
307
- 6, 5, 58, 17, 9, 100, 84, 119, 133, 138,
308
- 249, 119, 126, 55, 37, 210, 126, 6, 5, 168,
309
- 106, 9, 129, 283, 162, 54, 20, 164, 151, 152,
310
- 163, 61, 291, 157, 161, 149, 139, 156, 153, 226,
311
- 6, 300, 247, 200, 113, 230, 122, 56, 155, 116,
312
- 134, 166, 112, 335, 111, 159, 40, 248, 290, 257,
313
- 172, 65, 241, 110, 160, 312, 318, 327, 357, 107,
314
- 242, 143, 82, 178, 115, 235, 59, 146, 303, 293,
315
- 110, 238, 119, 208, 138, 148, 108, 126, 209, 198,
316
- 46, 315, 199, 15, nil, 326, nil, nil, nil, nil,
317
- nil, nil, 358, nil, nil, nil, nil, nil, 6, nil,
318
- nil, 220, 113, nil, nil, 297, nil, 116, 340, nil,
319
- 206, 213, nil, nil, 254, nil, 306, 247, nil, 246,
320
- nil, nil, nil, 157, 253, 149, nil, 156, nil, nil,
321
- nil, nil, 115, nil, nil, nil, nil, nil, nil, 263,
322
- 264, nil, nil, 259, nil, 251, nil, nil, 236, nil,
323
- nil, 254, nil, nil, nil, 293, 246, nil, 245, 234,
324
- 157, 253, 149, nil, 156, nil, nil, nil, nil, 119,
325
- nil, nil, nil, 310, 126, nil, nil, 138, 65, 366,
326
- 65, 368, 251, 294, 6, 5, 328, 162, 9, 320,
327
- 365, 151, 152, 321, 346, 245, 157, 161, 149, 254,
328
- 156, 153, 6, 5, 246, nil, 9, 361, 157, 253,
329
- 149, 155, 156, nil, 99, nil, 353, 104, 159, 337,
330
- 275, nil, 247, 355, 279, nil, nil, 6, 5, nil,
331
- 251, 9, 117, nil, nil, nil, 314, 254, 135, 136,
332
- 137, nil, 246, 245, nil, nil, 157, 253, 149, nil,
333
- 156, nil, nil, nil, nil, nil, nil, 58, nil, nil,
334
- nil, nil, nil, nil, nil, 198, 169, nil, 251, nil,
335
- nil, nil, 6, 5, nil, nil, 9, nil, nil, nil,
336
- nil, 245, nil, 176, 177, nil, nil, nil, nil, 254,
337
- nil, 203, nil, nil, 246, nil, nil, 354, 157, 253,
338
- 149, nil, 156, 359, 254, nil, nil, 6, 5, 246,
339
- 350, 9, nil, 157, 253, 149, nil, 156, nil, nil,
340
- 251, nil, nil, nil, nil, 58, nil, nil, nil, nil,
341
- nil, nil, nil, 245, nil, 251, nil, nil, nil, nil,
342
- 6, 5, nil, nil, 9, nil, nil, nil, 245, nil,
343
- 6, 5, 6, 5, 9, nil, 9, nil, 258, nil,
344
- nil, nil, nil, nil, nil, nil, nil, 267, 268, 269,
345
- 270, 271, 272, 273, 274, nil, 276, 277, 278, nil,
346
- 280, 281, nil, 285, 286, nil, nil, nil, nil, nil,
319
+ 12, 112, 24, 30, 98, 135, 156, 131, 53, 111,
320
+ 246, 65, 226, 249, 99, 212, 206, 173, 116, 83,
321
+ 66, 297, 73, 159, 12, 26, 158, 30, 295, 123,
322
+ 344, 124, 16, 57, 152, 145, 103, 307, 128, 157,
323
+ 68, 300, 29, 214, 323, 121, 314, 13, 133, 26,
324
+ 188, 231, 287, 167, 117, 211, 16, 12, 254, 105,
325
+ 30, 130, 198, 310, 30, 163, 127, 284, 289, 224,
326
+ 225, 13, 110, 216, 217, 325, 362, 172, 118, 304,
327
+ 21, 230, 26, 131, nil, 311, 26, nil, nil, 16,
328
+ 222, 335, 124, 16, 317, 120, nil, nil, nil, 128,
329
+ nil, 348, 240, nil, 125, 158, nil, 204, nil, nil,
330
+ 30, 233, nil, nil, nil, 120, nil, nil, 12, nil,
331
+ 6, 30, nil, nil, nil, nil, nil, 127, nil, nil,
332
+ nil, nil, 26, 259, 260, 2, nil, 130, nil, 16,
333
+ 30, nil, nil, 26, 6, nil, nil, 201, nil, nil,
334
+ 16, nil, nil, nil, nil, nil, nil, nil, nil, 2,
335
+ 27, nil, 26, nil, nil, 125, 299, nil, nil, 16,
336
+ nil, nil, nil, 368, nil, 370, nil, 6, nil, nil,
337
+ nil, 6, nil, nil, 27, 270, 332, 141, 283, 293,
338
+ nil, 141, 301, 361, 337, 206, 129, 273, 352, nil,
339
+ 309, 321, nil, 277, 158, 253, nil, nil, nil, nil,
340
+ 103, 103, nil, nil, nil, nil, nil, 27, nil, 12,
341
+ 130, nil, 30, 30, 339, nil, nil, 203, 12, nil,
342
+ nil, 30, nil, nil, nil, nil, nil, nil, 6, nil,
343
+ nil, nil, nil, nil, 26, 26, 299, nil, nil, nil,
344
+ nil, 16, 16, 26, 355, 22, 131, 6, nil, 326,
345
+ 16, nil, nil, 141, nil, nil, 13, 208, nil, nil,
346
+ nil, nil, 129, nil, 98, 13, nil, 32, 27, 22,
347
+ nil, nil, 12, nil, nil, 30, 204, nil, nil, 30,
348
+ nil, nil, 365, nil, 12, nil, nil, 30, nil, nil,
349
+ 130, 32, nil, 30, 363, nil, nil, 26, nil, nil,
350
+ 130, 26, 22, 30, 16, nil, 134, nil, 16, 26,
351
+ nil, nil, nil, nil, nil, 26, 16, nil, 12, 13,
352
+ 358, 30, 16, nil, 32, 26, nil, nil, 98, 6,
353
+ 6, 13, 16, nil, nil, nil, 130, 170, 6, 30,
354
+ nil, nil, nil, 26, 2, 129, nil, 141, 12, nil,
355
+ 16, 30, 207, 2, 12, nil, 12, 30, nil, 30,
356
+ nil, 26, nil, 22, nil, 13, nil, nil, 16, 27,
357
+ 19, nil, nil, 26, 209, nil, nil, nil, 27, 26,
358
+ 16, 26, 134, nil, nil, 32, 16, nil, 16, nil,
359
+ nil, nil, 6, nil, 19, 13, 203, nil, nil, nil,
360
+ nil, 13, nil, 13, 6, nil, nil, 2, nil, nil,
361
+ 6, nil, nil, nil, nil, nil, nil, nil, nil, 2,
362
+ 6, nil, nil, nil, nil, 129, nil, 19, nil, nil,
363
+ nil, 132, 27, nil, nil, 129, 208, 144, 6, nil,
364
+ nil, 144, nil, nil, 27, nil, nil, nil, nil, nil,
365
+ nil, nil, nil, 2, nil, nil, 6, nil, nil, nil,
366
+ nil, nil, nil, nil, 22, 134, nil, nil, 6, nil,
367
+ nil, 129, nil, 22, 6, nil, 6, 205, 27, nil,
368
+ nil, nil, nil, 2, nil, nil, 32, nil, 19, 2,
369
+ nil, 2, nil, nil, nil, 32, nil, nil, nil, nil,
370
+ nil, nil, nil, nil, nil, nil, 170, 132, 27, nil,
371
+ nil, nil, nil, 144, 27, nil, 27, nil, nil, nil,
372
+ nil, nil, nil, 96, nil, nil, nil, 22, nil, nil,
373
+ nil, 207, nil, nil, nil, nil, nil, nil, nil, 22,
374
+ nil, nil, nil, nil, nil, 134, 113, nil, nil, 32,
375
+ 114, nil, nil, 209, nil, 134, nil, nil, nil, nil,
376
+ 122, 32, nil, nil, nil, nil, nil, nil, 138, 139,
377
+ 140, nil, nil, 22, nil, nil, nil, nil, nil, nil,
378
+ nil, nil, nil, 164, nil, nil, nil, nil, 165, 19,
379
+ 132, 134, nil, nil, nil, 32, nil, nil, 19, nil,
380
+ nil, 176, nil, 22, nil, nil, nil, 144, nil, 22,
381
+ nil, 22, 202, nil, nil, nil, nil, nil, nil, nil,
382
+ nil, nil, nil, nil, nil, 32, nil, nil, nil, nil,
383
+ nil, 32, nil, 32, nil, nil, nil, nil, nil, nil,
347
384
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
348
- nil, nil, nil, nil, nil, nil, 304, 305, nil, nil,
349
- nil, nil, 307, 308, nil, nil, nil, nil, nil, nil,
350
- 313, nil, nil, nil, nil, nil, nil, nil, nil, nil,
385
+ nil, nil, 19, nil, nil, nil, 205, nil, nil, nil,
386
+ nil, nil, nil, nil, 19, nil, nil, nil, nil, nil,
387
+ 132, nil, nil, nil, nil, nil, nil, nil, nil, nil,
388
+ 132, nil, nil, 264, 265, 266, 267, 268, 269, 96,
389
+ 271, 272, nil, nil, nil, 274, 275, 276, 19, 278,
390
+ 279, 280, 281, nil, nil, nil, nil, nil, nil, nil,
391
+ nil, nil, nil, nil, nil, nil, 132, nil, nil, nil,
392
+ nil, nil, nil, nil, nil, nil, nil, nil, 19, nil,
393
+ nil, nil, nil, nil, 19, nil, 19, nil, nil, nil,
394
+ nil, nil, nil, nil, 315, 316, nil, nil, 318, nil,
395
+ nil, 319, nil, nil, nil, nil, nil, 324, nil, nil,
396
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 334,
351
397
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
352
- nil, nil, nil, 169, nil, nil, nil, nil, nil, nil,
353
398
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
354
399
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
355
- nil, nil, nil, nil, nil, nil, nil, 339, nil, nil,
356
- nil, nil, nil, 344, nil, nil, nil, 347, nil, nil,
400
+ nil, nil, nil, nil, nil, nil, nil, nil, 350, nil,
401
+ nil, nil, 353, nil, nil, nil, nil, nil, nil, nil,
357
402
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
358
403
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
359
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
360
- nil, nil, 99 ]
404
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 113 ]
361
405
 
362
406
  racc_goto_check = [
363
- 43, 54, 4, 2, 22, 60, 25, 33, 41, 55,
364
- 69, 33, 29, 43, 38, 81, 29, 43, 54, 58,
365
- 71, 22, 23, 5, 30, 38, 3, 41, 32, 33,
366
- 52, 77, 65, 37, 29, 31, 44, 36, 34, 42,
367
- 43, 5, 67, 84, 22, 42, 47, 6, 35, 8,
368
- 47, 23, 20, 61, 73, 28, 21, 68, 64, 59,
369
- 23, 63, 40, 3, 39, 57, 5, 70, 27, 72,
370
- 42, 73, 24, 23, 6, 74, 75, 76, 48, 67,
371
- 3, 78, 33, 79, 55, 3, 21, 29, 80, 28,
372
- 46, 82, 83, 1, nil, 69, nil, nil, nil, nil,
373
- nil, nil, 61, nil, nil, nil, nil, nil, 43, nil,
374
- nil, 44, 22, nil, nil, 42, nil, 8, 65, nil,
375
- 20, 47, nil, nil, 30, nil, 42, 67, nil, 33,
376
- nil, nil, nil, 37, 29, 31, nil, 36, nil, nil,
377
- nil, nil, 6, nil, nil, nil, nil, nil, nil, 23,
378
- 23, nil, nil, 25, nil, 28, nil, nil, 77, nil,
379
- nil, 30, nil, nil, nil, 67, 33, nil, 54, 3,
380
- 37, 29, 31, nil, 36, nil, nil, nil, nil, 33,
381
- nil, nil, nil, 55, 29, nil, nil, 55, 63, 5,
382
- 63, 5, 28, 71, 43, 54, 58, 30, 22, 41,
383
- 69, 32, 33, 52, 81, 54, 37, 29, 31, 30,
384
- 36, 34, 43, 54, 33, nil, 22, 67, 37, 29,
385
- 31, 35, 36, nil, 26, nil, 42, 26, 28, 84,
386
- 63, nil, 67, 42, 63, nil, nil, 43, 54, nil,
387
- 28, 22, 26, nil, nil, nil, 38, 30, 26, 26,
388
- 26, nil, 33, 54, nil, nil, 37, 29, 31, nil,
389
- 36, nil, nil, nil, nil, nil, nil, 4, nil, nil,
390
- nil, nil, nil, nil, nil, 28, 26, nil, 28, nil,
391
- nil, nil, 43, 54, nil, nil, 22, nil, nil, nil,
392
- nil, 54, nil, 26, 26, nil, nil, nil, nil, 30,
393
- nil, 26, nil, nil, 33, nil, nil, 25, 37, 29,
394
- 31, nil, 36, 60, 30, nil, nil, 43, 54, 33,
395
- 2, 22, nil, 37, 29, 31, nil, 36, nil, nil,
396
- 28, nil, nil, nil, nil, 4, nil, nil, nil, nil,
397
- nil, nil, nil, 54, nil, 28, nil, nil, nil, nil,
398
- 43, 54, nil, nil, 22, nil, nil, nil, 54, nil,
399
- 43, 54, 43, 54, 22, nil, 22, nil, 26, nil,
400
- nil, nil, nil, nil, nil, nil, nil, 26, 26, 26,
401
- 26, 26, 26, 26, 26, nil, 26, 26, 26, nil,
402
- 26, 26, nil, 26, 26, nil, nil, nil, nil, nil,
403
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
404
- nil, nil, nil, nil, nil, nil, 26, 26, nil, nil,
405
- nil, nil, 26, 26, nil, nil, nil, nil, nil, nil,
406
- 26, nil, nil, nil, nil, nil, nil, nil, nil, nil,
407
+ 33, 59, 2, 37, 4, 68, 41, 66, 38, 29,
408
+ 42, 33, 80, 42, 76, 51, 35, 83, 70, 57,
409
+ 6, 64, 38, 43, 33, 36, 54, 37, 5, 20,
410
+ 60, 10, 34, 21, 27, 46, 62, 5, 8, 46,
411
+ 45, 63, 3, 41, 56, 72, 47, 22, 67, 36,
412
+ 58, 69, 40, 27, 71, 39, 34, 33, 73, 74,
413
+ 37, 33, 75, 31, 37, 72, 6, 77, 42, 78,
414
+ 79, 22, 28, 27, 27, 81, 60, 82, 21, 42,
415
+ 1, 68, 36, 66, nil, 42, 36, nil, nil, 34,
416
+ 20, 5, 10, 34, 42, 3, nil, nil, nil, 8,
417
+ nil, 64, 43, nil, 22, 54, nil, 33, nil, nil,
418
+ 37, 46, nil, nil, nil, 3, nil, nil, 33, nil,
419
+ 32, 37, nil, nil, nil, nil, nil, 6, nil, nil,
420
+ nil, nil, 36, 27, 27, 53, nil, 33, nil, 34,
421
+ 37, nil, nil, 36, 32, nil, nil, 3, nil, nil,
422
+ 34, nil, nil, nil, nil, nil, nil, nil, nil, 53,
423
+ 25, nil, 36, nil, nil, 22, 66, nil, nil, 34,
424
+ nil, nil, nil, 5, nil, 5, nil, 32, nil, nil,
425
+ nil, 32, nil, nil, 25, 57, 83, 32, 76, 29,
426
+ nil, 32, 70, 42, 51, 35, 53, 62, 80, nil,
427
+ 29, 54, nil, 62, 54, 3, nil, nil, nil, nil,
428
+ 62, 62, nil, nil, nil, nil, nil, 25, nil, 33,
429
+ 33, nil, 37, 37, 41, nil, nil, 32, 33, nil,
430
+ nil, 37, nil, nil, nil, nil, nil, nil, 32, nil,
431
+ nil, nil, nil, nil, 36, 36, 66, nil, nil, nil,
432
+ nil, 34, 34, 36, 68, 24, 66, 32, nil, 38,
433
+ 34, nil, nil, 32, nil, nil, 22, 25, nil, nil,
434
+ nil, nil, 53, nil, 4, 22, nil, 26, 25, 24,
435
+ nil, nil, 33, nil, nil, 37, 33, nil, nil, 37,
436
+ nil, nil, 66, nil, 33, nil, nil, 37, nil, nil,
437
+ 33, 26, nil, 37, 59, nil, nil, 36, nil, nil,
438
+ 33, 36, 24, 37, 34, nil, 24, nil, 34, 36,
439
+ nil, nil, nil, nil, nil, 36, 34, nil, 33, 22,
440
+ 2, 37, 34, nil, 26, 36, nil, nil, 4, 32,
441
+ 32, 22, 34, nil, nil, nil, 33, 24, 32, 37,
442
+ nil, nil, nil, 36, 53, 53, nil, 32, 33, nil,
443
+ 34, 37, 24, 53, 33, nil, 33, 37, nil, 37,
444
+ nil, 36, nil, 24, nil, 22, nil, nil, 34, 25,
445
+ 23, nil, nil, 36, 26, nil, nil, nil, 25, 36,
446
+ 34, 36, 24, nil, nil, 26, 34, nil, 34, nil,
447
+ nil, nil, 32, nil, 23, 22, 32, nil, nil, nil,
448
+ nil, 22, nil, 22, 32, nil, nil, 53, nil, nil,
449
+ 32, nil, nil, nil, nil, nil, nil, nil, nil, 53,
450
+ 32, nil, nil, nil, nil, 53, nil, 23, nil, nil,
451
+ nil, 23, 25, nil, nil, 53, 25, 23, 32, nil,
452
+ nil, 23, nil, nil, 25, nil, nil, nil, nil, nil,
453
+ nil, nil, nil, 53, nil, nil, 32, nil, nil, nil,
454
+ nil, nil, nil, nil, 24, 24, nil, nil, 32, nil,
455
+ nil, 53, nil, 24, 32, nil, 32, 23, 25, nil,
456
+ nil, nil, nil, 53, nil, nil, 26, nil, 23, 53,
457
+ nil, 53, nil, nil, nil, 26, nil, nil, nil, nil,
458
+ nil, nil, nil, nil, nil, nil, 24, 23, 25, nil,
459
+ nil, nil, nil, 23, 25, nil, 25, nil, nil, nil,
460
+ nil, nil, nil, 30, nil, nil, nil, 24, nil, nil,
461
+ nil, 24, nil, nil, nil, nil, nil, nil, nil, 24,
462
+ nil, nil, nil, nil, nil, 24, 30, nil, nil, 26,
463
+ 30, nil, nil, 26, nil, 24, nil, nil, nil, nil,
464
+ 30, 26, nil, nil, nil, nil, nil, nil, 30, 30,
465
+ 30, nil, nil, 24, nil, nil, nil, nil, nil, nil,
466
+ nil, nil, nil, 30, nil, nil, nil, nil, 30, 23,
467
+ 23, 24, nil, nil, nil, 26, nil, nil, 23, nil,
468
+ nil, 30, nil, 24, nil, nil, nil, 23, nil, 24,
469
+ nil, 24, 30, nil, nil, nil, nil, nil, nil, nil,
470
+ nil, nil, nil, nil, nil, 26, nil, nil, nil, nil,
471
+ nil, 26, nil, 26, nil, nil, nil, nil, nil, nil,
407
472
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
408
- nil, nil, nil, 26, nil, nil, nil, nil, nil, nil,
473
+ nil, nil, 23, nil, nil, nil, 23, nil, nil, nil,
474
+ nil, nil, nil, nil, 23, nil, nil, nil, nil, nil,
475
+ 23, nil, nil, nil, nil, nil, nil, nil, nil, nil,
476
+ 23, nil, nil, 30, 30, 30, 30, 30, 30, 30,
477
+ 30, 30, nil, nil, nil, 30, 30, 30, 23, 30,
478
+ 30, 30, 30, nil, nil, nil, nil, nil, nil, nil,
479
+ nil, nil, nil, nil, nil, nil, 23, nil, nil, nil,
480
+ nil, nil, nil, nil, nil, nil, nil, nil, 23, nil,
481
+ nil, nil, nil, nil, 23, nil, 23, nil, nil, nil,
482
+ nil, nil, nil, nil, 30, 30, nil, nil, 30, nil,
483
+ nil, 30, nil, nil, nil, nil, nil, 30, nil, nil,
484
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 30,
409
485
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
410
486
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
411
- nil, nil, nil, nil, nil, nil, nil, 26, nil, nil,
412
- nil, nil, nil, 26, nil, nil, nil, 26, nil, nil,
413
487
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
488
+ nil, nil, nil, nil, nil, nil, nil, nil, 30, nil,
489
+ nil, nil, 30, nil, nil, nil, nil, nil, nil, nil,
414
490
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
415
491
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
416
- nil, nil, 26 ]
492
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 30 ]
417
493
 
418
494
  racc_goto_pointer = [
419
- nil, 93, 3, 26, -15, -171, 34, nil, 9, nil,
420
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
421
- 12, 53, 4, -25, 48, -18, 198, -259, -12, -33,
422
- -43, -32, -39, -38, -29, -19, -30, -34, 13, -3,
423
- -98, -40, -94, 0, -17, nil, 84, 1, -139, nil,
424
- nil, nil, -37, nil, 1, -44, nil, -166, -59, -110,
425
- -21, -231, nil, 43, -146, -172, nil, -125, -110, -157,
426
- -185, -12, 37, 17, -68, 58, 18, 13, -66, -26,
427
- -21, -94, -142, -9, -58, nil ]
495
+ nil, 80, 2, 42, -20, -191, 9, nil, -19, nil,
496
+ -26, nil, nil, nil, nil, nil, nil, nil, nil, nil,
497
+ -28, 29, 47, 380, 255, 160, 277, -35, 34, -29,
498
+ 516, -168, 120, 0, 32, -91, 25, 3, 7, -52,
499
+ -159, -64, -146, -49, nil, 28, -32, -191, nil, nil,
500
+ nil, -92, nil, 135, -46, nil, -206, 2, -46, -39,
501
+ -266, nil, 11, -179, -199, nil, -54, -13, -56, -86,
502
+ -29, 7, -8, -105, 34, -43, -11, -133, -50, -49,
503
+ -107, -177, -15, -75, nil ]
428
504
 
429
505
  racc_goto_default = [
430
- nil, nil, 282, 121, 22, nil, 28, 31, 34, 4,
431
- 7, 10, 14, 16, 19, 21, 25, 27, 30, 33,
432
- 3, nil, 74, nil, nil, 97, 130, 224, 90, 91,
433
- 94, 68, 71, 75, 80, 81, 83, 87, 23, nil,
434
- nil, nil, nil, 70, nil, 13, nil, nil, 123, 217,
435
- 125, 127, nil, 150, 69, 131, 140, 141, nil, nil,
436
- nil, nil, 102, 92, nil, nil, 292, 77, nil, nil,
437
- nil, nil, nil, nil, nil, nil, nil, nil, 62, nil,
438
- nil, nil, nil, nil, nil, 202 ]
506
+ nil, nil, 294, 147, 34, nil, 42, 46, 50, 5,
507
+ 7, 14, 20, 23, 28, 33, 39, 41, 45, 49,
508
+ 4, nil, 78, 80, 85, 87, 90, nil, nil, 94,
509
+ 153, 242, 75, 79, 81, 84, 86, 89, 37, nil,
510
+ nil, nil, nil, nil, 11, nil, nil, 146, 237, 149,
511
+ 150, nil, 213, 74, 154, 160, 161, nil, nil, nil,
512
+ nil, 93, 43, nil, nil, 298, 8, nil, nil, nil,
513
+ nil, nil, nil, nil, nil, nil, nil, 101, nil, nil,
514
+ nil, nil, nil, nil, 174 ]
439
515
 
440
516
  racc_reduce_table = [
441
517
  0, 0, :racc_error,
@@ -463,202 +539,206 @@ racc_reduce_table = [
463
539
  1, 88, :_reduce_none,
464
540
  1, 88, :_reduce_none,
465
541
  1, 88, :_reduce_none,
542
+ 1, 88, :_reduce_none,
543
+ 1, 88, :_reduce_none,
544
+ 1, 88, :_reduce_none,
545
+ 1, 88, :_reduce_none,
546
+ 1, 88, :_reduce_none,
466
547
  1, 89, :_reduce_none,
467
548
  1, 89, :_reduce_none,
468
549
  1, 89, :_reduce_none,
469
550
  1, 89, :_reduce_none,
470
- 4, 81, :_reduce_29,
471
- 5, 81, :_reduce_30,
472
- 3, 81, :_reduce_31,
473
- 2, 81, :_reduce_32,
474
- 1, 92, :_reduce_33,
475
- 3, 92, :_reduce_34,
476
- 1, 91, :_reduce_35,
477
- 3, 91, :_reduce_36,
478
- 1, 93, :_reduce_none,
479
- 1, 93, :_reduce_none,
480
- 1, 93, :_reduce_none,
481
- 1, 93, :_reduce_none,
482
- 1, 93, :_reduce_none,
483
- 1, 93, :_reduce_none,
484
- 1, 93, :_reduce_none,
485
- 1, 93, :_reduce_none,
486
- 1, 93, :_reduce_none,
487
- 1, 93, :_reduce_none,
488
- 1, 93, :_reduce_none,
489
- 5, 74, :_reduce_48,
490
- 5, 74, :_reduce_49,
491
- 5, 74, :_reduce_50,
492
- 5, 85, :_reduce_51,
493
- 2, 75, :_reduce_52,
494
- 1, 113, :_reduce_53,
495
- 2, 113, :_reduce_54,
496
- 6, 76, :_reduce_55,
497
- 2, 76, :_reduce_56,
498
- 3, 114, :_reduce_57,
499
- 3, 114, :_reduce_58,
500
- 1, 115, :_reduce_none,
551
+ 4, 81, :_reduce_34,
552
+ 5, 81, :_reduce_35,
553
+ 3, 81, :_reduce_36,
554
+ 2, 81, :_reduce_37,
555
+ 1, 96, :_reduce_38,
556
+ 3, 96, :_reduce_39,
557
+ 1, 95, :_reduce_40,
558
+ 3, 95, :_reduce_41,
559
+ 1, 97, :_reduce_none,
560
+ 1, 97, :_reduce_none,
561
+ 1, 97, :_reduce_none,
562
+ 1, 97, :_reduce_none,
563
+ 1, 97, :_reduce_none,
564
+ 1, 97, :_reduce_none,
565
+ 1, 97, :_reduce_none,
566
+ 1, 97, :_reduce_none,
567
+ 1, 97, :_reduce_none,
568
+ 1, 97, :_reduce_none,
569
+ 1, 97, :_reduce_none,
570
+ 5, 74, :_reduce_53,
571
+ 5, 74, :_reduce_54,
572
+ 5, 74, :_reduce_55,
573
+ 5, 85, :_reduce_56,
574
+ 2, 75, :_reduce_57,
575
+ 1, 112, :_reduce_58,
576
+ 2, 112, :_reduce_59,
577
+ 6, 76, :_reduce_60,
578
+ 2, 76, :_reduce_61,
579
+ 3, 113, :_reduce_62,
580
+ 3, 113, :_reduce_63,
581
+ 1, 114, :_reduce_none,
582
+ 1, 114, :_reduce_none,
583
+ 3, 114, :_reduce_66,
501
584
  1, 115, :_reduce_none,
502
- 3, 115, :_reduce_61,
503
- 1, 116, :_reduce_none,
504
- 3, 116, :_reduce_63,
505
- 1, 117, :_reduce_64,
506
- 1, 117, :_reduce_65,
507
- 3, 118, :_reduce_66,
508
- 3, 118, :_reduce_67,
509
- 1, 119, :_reduce_none,
510
- 1, 119, :_reduce_none,
511
- 4, 120, :_reduce_70,
512
- 1, 107, :_reduce_71,
513
- 3, 107, :_reduce_72,
585
+ 3, 115, :_reduce_68,
586
+ 1, 116, :_reduce_69,
587
+ 1, 116, :_reduce_70,
588
+ 3, 117, :_reduce_71,
589
+ 3, 117, :_reduce_72,
590
+ 1, 118, :_reduce_none,
591
+ 1, 118, :_reduce_none,
592
+ 4, 119, :_reduce_75,
593
+ 1, 107, :_reduce_76,
594
+ 3, 107, :_reduce_77,
514
595
  0, 108, :_reduce_none,
515
596
  1, 108, :_reduce_none,
516
- 1, 105, :_reduce_75,
517
- 1, 97, :_reduce_76,
518
- 1, 98, :_reduce_77,
519
- 1, 121, :_reduce_none,
520
- 1, 121, :_reduce_none,
521
- 1, 121, :_reduce_none,
522
- 1, 121, :_reduce_none,
523
- 1, 121, :_reduce_none,
524
- 1, 121, :_reduce_none,
525
- 1, 121, :_reduce_none,
526
- 3, 77, :_reduce_85,
527
- 3, 77, :_reduce_86,
528
- 3, 86, :_reduce_87,
529
- 0, 109, :_reduce_88,
530
- 1, 109, :_reduce_89,
531
- 3, 109, :_reduce_90,
532
- 3, 123, :_reduce_91,
533
- 3, 124, :_reduce_92,
534
- 1, 125, :_reduce_none,
535
- 1, 125, :_reduce_none,
536
- 0, 112, :_reduce_95,
537
- 1, 112, :_reduce_96,
538
- 3, 112, :_reduce_97,
539
- 4, 104, :_reduce_98,
540
- 3, 104, :_reduce_99,
541
- 1, 96, :_reduce_100,
542
- 2, 96, :_reduce_101,
543
- 2, 126, :_reduce_102,
544
- 1, 127, :_reduce_103,
545
- 2, 127, :_reduce_104,
546
- 1, 99, :_reduce_105,
547
- 4, 90, :_reduce_106,
548
- 4, 90, :_reduce_107,
549
- 2, 79, :_reduce_108,
550
- 5, 128, :_reduce_109,
551
- 4, 128, :_reduce_110,
552
- 0, 129, :_reduce_none,
553
- 2, 129, :_reduce_112,
554
- 4, 129, :_reduce_113,
555
- 3, 129, :_reduce_114,
556
- 1, 94, :_reduce_none,
557
- 1, 94, :_reduce_none,
558
- 3, 94, :_reduce_117,
559
- 3, 94, :_reduce_118,
560
- 3, 94, :_reduce_119,
561
- 3, 94, :_reduce_120,
562
- 3, 94, :_reduce_121,
563
- 3, 94, :_reduce_122,
564
- 3, 94, :_reduce_123,
565
- 3, 94, :_reduce_124,
566
- 3, 94, :_reduce_125,
567
- 2, 94, :_reduce_126,
568
- 3, 94, :_reduce_127,
569
- 3, 94, :_reduce_128,
570
- 3, 94, :_reduce_129,
571
- 3, 94, :_reduce_130,
572
- 3, 94, :_reduce_131,
573
- 3, 94, :_reduce_132,
574
- 2, 94, :_reduce_133,
575
- 3, 94, :_reduce_134,
576
- 3, 94, :_reduce_135,
577
- 3, 94, :_reduce_136,
578
- 5, 78, :_reduce_137,
579
- 1, 132, :_reduce_138,
580
- 2, 132, :_reduce_139,
581
- 5, 133, :_reduce_140,
582
- 4, 133, :_reduce_141,
583
- 1, 134, :_reduce_142,
584
- 3, 134, :_reduce_143,
585
- 3, 100, :_reduce_144,
586
- 1, 136, :_reduce_none,
587
- 4, 136, :_reduce_146,
588
- 1, 138, :_reduce_none,
589
- 3, 138, :_reduce_148,
590
- 3, 137, :_reduce_149,
597
+ 1, 105, :_reduce_80,
598
+ 1, 100, :_reduce_81,
599
+ 1, 101, :_reduce_82,
600
+ 1, 120, :_reduce_none,
601
+ 1, 120, :_reduce_none,
602
+ 1, 120, :_reduce_none,
603
+ 1, 120, :_reduce_none,
604
+ 1, 120, :_reduce_none,
605
+ 1, 120, :_reduce_none,
606
+ 1, 120, :_reduce_none,
607
+ 3, 77, :_reduce_90,
608
+ 3, 77, :_reduce_91,
609
+ 3, 86, :_reduce_92,
610
+ 0, 109, :_reduce_93,
611
+ 1, 109, :_reduce_94,
612
+ 3, 109, :_reduce_95,
613
+ 3, 122, :_reduce_96,
614
+ 3, 123, :_reduce_97,
615
+ 1, 124, :_reduce_none,
616
+ 1, 124, :_reduce_none,
617
+ 0, 111, :_reduce_100,
618
+ 1, 111, :_reduce_101,
619
+ 3, 111, :_reduce_102,
620
+ 4, 104, :_reduce_103,
621
+ 3, 104, :_reduce_104,
622
+ 1, 92, :_reduce_105,
623
+ 2, 92, :_reduce_106,
624
+ 2, 125, :_reduce_107,
625
+ 1, 126, :_reduce_108,
626
+ 2, 126, :_reduce_109,
627
+ 1, 102, :_reduce_110,
628
+ 4, 90, :_reduce_111,
629
+ 4, 90, :_reduce_112,
630
+ 2, 79, :_reduce_113,
631
+ 5, 127, :_reduce_114,
632
+ 4, 127, :_reduce_115,
633
+ 0, 128, :_reduce_none,
634
+ 2, 128, :_reduce_117,
635
+ 4, 128, :_reduce_118,
636
+ 3, 128, :_reduce_119,
637
+ 1, 98, :_reduce_none,
638
+ 1, 98, :_reduce_none,
639
+ 3, 98, :_reduce_122,
640
+ 3, 98, :_reduce_123,
641
+ 3, 98, :_reduce_124,
642
+ 3, 98, :_reduce_125,
643
+ 3, 98, :_reduce_126,
644
+ 3, 98, :_reduce_127,
645
+ 3, 98, :_reduce_128,
646
+ 3, 98, :_reduce_129,
647
+ 3, 98, :_reduce_130,
648
+ 2, 98, :_reduce_131,
649
+ 3, 98, :_reduce_132,
650
+ 3, 98, :_reduce_133,
651
+ 3, 98, :_reduce_134,
652
+ 3, 98, :_reduce_135,
653
+ 3, 98, :_reduce_136,
654
+ 3, 98, :_reduce_137,
655
+ 2, 98, :_reduce_138,
656
+ 3, 98, :_reduce_139,
657
+ 3, 98, :_reduce_140,
658
+ 3, 98, :_reduce_141,
659
+ 5, 78, :_reduce_142,
660
+ 1, 131, :_reduce_143,
661
+ 2, 131, :_reduce_144,
662
+ 5, 132, :_reduce_145,
663
+ 4, 132, :_reduce_146,
664
+ 1, 133, :_reduce_147,
665
+ 3, 133, :_reduce_148,
666
+ 3, 93, :_reduce_149,
591
667
  1, 135, :_reduce_none,
592
- 1, 135, :_reduce_none,
593
- 1, 135, :_reduce_none,
594
- 1, 135, :_reduce_none,
595
- 1, 135, :_reduce_none,
596
- 1, 135, :_reduce_none,
597
- 1, 135, :_reduce_none,
598
- 1, 135, :_reduce_none,
599
- 1, 135, :_reduce_158,
600
- 1, 135, :_reduce_none,
601
- 1, 139, :_reduce_160,
668
+ 4, 135, :_reduce_151,
669
+ 1, 137, :_reduce_none,
670
+ 3, 137, :_reduce_153,
671
+ 3, 136, :_reduce_154,
672
+ 1, 134, :_reduce_none,
673
+ 1, 134, :_reduce_none,
674
+ 1, 134, :_reduce_none,
675
+ 1, 134, :_reduce_none,
676
+ 1, 134, :_reduce_none,
677
+ 1, 134, :_reduce_none,
678
+ 1, 134, :_reduce_none,
679
+ 1, 134, :_reduce_none,
680
+ 1, 134, :_reduce_163,
681
+ 1, 134, :_reduce_none,
682
+ 1, 138, :_reduce_165,
683
+ 1, 139, :_reduce_none,
684
+ 3, 139, :_reduce_167,
685
+ 2, 80, :_reduce_168,
686
+ 6, 82, :_reduce_169,
687
+ 5, 82, :_reduce_170,
688
+ 7, 83, :_reduce_171,
689
+ 6, 83, :_reduce_172,
690
+ 6, 84, :_reduce_173,
691
+ 5, 84, :_reduce_174,
692
+ 1, 106, :_reduce_175,
693
+ 1, 106, :_reduce_176,
694
+ 1, 142, :_reduce_177,
695
+ 3, 142, :_reduce_178,
696
+ 1, 144, :_reduce_179,
697
+ 1, 145, :_reduce_180,
698
+ 1, 145, :_reduce_181,
699
+ 1, 145, :_reduce_182,
700
+ 1, 145, :_reduce_none,
701
+ 0, 71, :_reduce_184,
702
+ 0, 146, :_reduce_185,
602
703
  1, 140, :_reduce_none,
603
- 3, 140, :_reduce_162,
604
- 2, 80, :_reduce_163,
605
- 6, 82, :_reduce_164,
606
- 5, 82, :_reduce_165,
607
- 7, 83, :_reduce_166,
608
- 6, 83, :_reduce_167,
609
- 6, 84, :_reduce_168,
610
- 5, 84, :_reduce_169,
611
- 1, 111, :_reduce_170,
612
- 1, 106, :_reduce_171,
613
- 1, 106, :_reduce_172,
614
- 1, 143, :_reduce_173,
615
- 3, 143, :_reduce_174,
616
- 1, 145, :_reduce_175,
617
- 1, 146, :_reduce_176,
618
- 1, 146, :_reduce_177,
619
- 1, 146, :_reduce_178,
620
- 1, 146, :_reduce_none,
621
- 0, 71, :_reduce_180,
622
- 0, 147, :_reduce_181,
704
+ 3, 140, :_reduce_187,
705
+ 4, 140, :_reduce_188,
706
+ 1, 147, :_reduce_none,
707
+ 3, 147, :_reduce_190,
708
+ 3, 148, :_reduce_191,
709
+ 1, 148, :_reduce_192,
710
+ 3, 148, :_reduce_193,
711
+ 1, 148, :_reduce_194,
712
+ 1, 143, :_reduce_none,
713
+ 2, 143, :_reduce_196,
623
714
  1, 141, :_reduce_none,
624
- 3, 141, :_reduce_183,
625
- 4, 141, :_reduce_184,
626
- 1, 148, :_reduce_none,
627
- 3, 148, :_reduce_186,
628
- 3, 149, :_reduce_187,
629
- 1, 149, :_reduce_188,
630
- 3, 149, :_reduce_189,
631
- 1, 149, :_reduce_190,
632
- 1, 144, :_reduce_none,
633
- 2, 144, :_reduce_192,
634
- 1, 142, :_reduce_none,
635
- 2, 142, :_reduce_194,
636
- 1, 150, :_reduce_none,
637
- 1, 150, :_reduce_none,
638
- 1, 101, :_reduce_197,
639
- 3, 102, :_reduce_198,
640
- 4, 102, :_reduce_199,
641
- 2, 102, :_reduce_200,
642
- 1, 95, :_reduce_none,
643
- 1, 95, :_reduce_none,
715
+ 2, 141, :_reduce_198,
716
+ 1, 149, :_reduce_none,
717
+ 1, 149, :_reduce_none,
718
+ 1, 91, :_reduce_201,
719
+ 3, 103, :_reduce_202,
720
+ 4, 103, :_reduce_203,
721
+ 2, 103, :_reduce_204,
722
+ 1, 99, :_reduce_none,
723
+ 1, 99, :_reduce_none,
644
724
  0, 110, :_reduce_none,
645
- 1, 110, :_reduce_204,
646
- 1, 131, :_reduce_205,
647
- 3, 130, :_reduce_206,
648
- 4, 130, :_reduce_207,
649
- 2, 130, :_reduce_208,
650
- 1, 151, :_reduce_none,
651
- 3, 151, :_reduce_210,
652
- 3, 152, :_reduce_211,
653
- 1, 153, :_reduce_212,
654
- 1, 153, :_reduce_213,
655
- 4, 122, :_reduce_214,
656
- 1, 103, :_reduce_none,
657
- 4, 103, :_reduce_216 ]
658
-
659
- racc_reduce_n = 217
660
-
661
- racc_shift_n = 372
725
+ 1, 110, :_reduce_208,
726
+ 1, 130, :_reduce_209,
727
+ 3, 129, :_reduce_210,
728
+ 4, 129, :_reduce_211,
729
+ 2, 129, :_reduce_212,
730
+ 1, 150, :_reduce_none,
731
+ 3, 150, :_reduce_214,
732
+ 3, 151, :_reduce_215,
733
+ 1, 152, :_reduce_216,
734
+ 1, 152, :_reduce_217,
735
+ 4, 121, :_reduce_218,
736
+ 1, 94, :_reduce_none,
737
+ 4, 94, :_reduce_220 ]
738
+
739
+ racc_reduce_n = 221
740
+
741
+ racc_shift_n = 374
662
742
 
663
743
  racc_token_table = {
664
744
  false => 0,
@@ -842,19 +922,19 @@ Racc_token_to_s_table = [
842
922
  "relationship_side",
843
923
  "edge",
844
924
  "resourceref",
925
+ "variable",
926
+ "quotedtext",
927
+ "selector",
928
+ "hasharrayaccesses",
845
929
  "expressions",
846
930
  "funcvalues",
847
931
  "rvalue",
848
932
  "expression",
849
933
  "comma",
850
- "quotedtext",
851
934
  "name",
852
935
  "type",
853
936
  "boolean",
854
- "selector",
855
- "variable",
856
937
  "array",
857
- "hasharrayaccesses",
858
938
  "funcrvalue",
859
939
  "undef",
860
940
  "classname",
@@ -862,7 +942,6 @@ Racc_token_to_s_table = [
862
942
  "endsemi",
863
943
  "params",
864
944
  "endcomma",
865
- "classref",
866
945
  "anyparams",
867
946
  "at",
868
947
  "collectrhand",
@@ -1007,8 +1086,18 @@ module_eval(<<'.,.,', 'grammar.ra', 75)
1007
1086
 
1008
1087
  # reduce 28 omitted
1009
1088
 
1010
- module_eval(<<'.,.,', 'grammar.ra', 83)
1011
- def _reduce_29(val, _values, result)
1089
+ # reduce 29 omitted
1090
+
1091
+ # reduce 30 omitted
1092
+
1093
+ # reduce 31 omitted
1094
+
1095
+ # reduce 32 omitted
1096
+
1097
+ # reduce 33 omitted
1098
+
1099
+ module_eval(<<'.,.,', 'grammar.ra', 90)
1100
+ def _reduce_34(val, _values, result)
1012
1101
  result = ast AST::Function,
1013
1102
  :name => val[0][:value],
1014
1103
  :line => val[0][:line],
@@ -1019,8 +1108,8 @@ module_eval(<<'.,.,', 'grammar.ra', 83)
1019
1108
  end
1020
1109
  .,.,
1021
1110
 
1022
- module_eval(<<'.,.,', 'grammar.ra', 90)
1023
- def _reduce_30(val, _values, result)
1111
+ module_eval(<<'.,.,', 'grammar.ra', 97)
1112
+ def _reduce_35(val, _values, result)
1024
1113
  result = ast AST::Function,
1025
1114
  :name => val[0][:value],
1026
1115
  :line => val[0][:line],
@@ -1031,8 +1120,8 @@ module_eval(<<'.,.,', 'grammar.ra', 90)
1031
1120
  end
1032
1121
  .,.,
1033
1122
 
1034
- module_eval(<<'.,.,', 'grammar.ra', 96)
1035
- def _reduce_31(val, _values, result)
1123
+ module_eval(<<'.,.,', 'grammar.ra', 103)
1124
+ def _reduce_36(val, _values, result)
1036
1125
  result = ast AST::Function,
1037
1126
  :name => val[0][:value],
1038
1127
  :line => val[0][:line],
@@ -1043,8 +1132,8 @@ module_eval(<<'.,.,', 'grammar.ra', 96)
1043
1132
  end
1044
1133
  .,.,
1045
1134
 
1046
- module_eval(<<'.,.,', 'grammar.ra', 103)
1047
- def _reduce_32(val, _values, result)
1135
+ module_eval(<<'.,.,', 'grammar.ra', 110)
1136
+ def _reduce_37(val, _values, result)
1048
1137
  result = ast AST::Function,
1049
1138
  :name => val[0][:value],
1050
1139
  :line => val[0][:line],
@@ -1055,15 +1144,15 @@ module_eval(<<'.,.,', 'grammar.ra', 103)
1055
1144
  end
1056
1145
  .,.,
1057
1146
 
1058
- module_eval(<<'.,.,', 'grammar.ra', 110)
1059
- def _reduce_33(val, _values, result)
1147
+ module_eval(<<'.,.,', 'grammar.ra', 117)
1148
+ def _reduce_38(val, _values, result)
1060
1149
  result = aryfy(val[0])
1061
1150
  result
1062
1151
  end
1063
1152
  .,.,
1064
1153
 
1065
- module_eval(<<'.,.,', 'grammar.ra', 113)
1066
- def _reduce_34(val, _values, result)
1154
+ module_eval(<<'.,.,', 'grammar.ra', 120)
1155
+ def _reduce_39(val, _values, result)
1067
1156
  val[0].push(val[2])
1068
1157
  result = val[0]
1069
1158
 
@@ -1071,30 +1160,20 @@ module_eval(<<'.,.,', 'grammar.ra', 113)
1071
1160
  end
1072
1161
  .,.,
1073
1162
 
1074
- module_eval(<<'.,.,', 'grammar.ra', 117)
1075
- def _reduce_35(val, _values, result)
1163
+ module_eval(<<'.,.,', 'grammar.ra', 124)
1164
+ def _reduce_40(val, _values, result)
1076
1165
  result = aryfy(val[0])
1077
1166
  result
1078
1167
  end
1079
1168
  .,.,
1080
1169
 
1081
- module_eval(<<'.,.,', 'grammar.ra', 118)
1082
- def _reduce_36(val, _values, result)
1170
+ module_eval(<<'.,.,', 'grammar.ra', 125)
1171
+ def _reduce_41(val, _values, result)
1083
1172
  result = val[0].push(val[2])
1084
1173
  result
1085
1174
  end
1086
1175
  .,.,
1087
1176
 
1088
- # reduce 37 omitted
1089
-
1090
- # reduce 38 omitted
1091
-
1092
- # reduce 39 omitted
1093
-
1094
- # reduce 40 omitted
1095
-
1096
- # reduce 41 omitted
1097
-
1098
1177
  # reduce 42 omitted
1099
1178
 
1100
1179
  # reduce 43 omitted
@@ -1107,8 +1186,18 @@ module_eval(<<'.,.,', 'grammar.ra', 118)
1107
1186
 
1108
1187
  # reduce 47 omitted
1109
1188
 
1110
- module_eval(<<'.,.,', 'grammar.ra', 133)
1111
- def _reduce_48(val, _values, result)
1189
+ # reduce 48 omitted
1190
+
1191
+ # reduce 49 omitted
1192
+
1193
+ # reduce 50 omitted
1194
+
1195
+ # reduce 51 omitted
1196
+
1197
+ # reduce 52 omitted
1198
+
1199
+ module_eval(<<'.,.,', 'grammar.ra', 140)
1200
+ def _reduce_53(val, _values, result)
1112
1201
  @lexer.commentpop
1113
1202
  result = ast(AST::Resource, :type => val[0], :instances => val[2])
1114
1203
 
@@ -1116,8 +1205,8 @@ module_eval(<<'.,.,', 'grammar.ra', 133)
1116
1205
  end
1117
1206
  .,.,
1118
1207
 
1119
- module_eval(<<'.,.,', 'grammar.ra', 136)
1120
- def _reduce_49(val, _values, result)
1208
+ module_eval(<<'.,.,', 'grammar.ra', 143)
1209
+ def _reduce_54(val, _values, result)
1121
1210
  # This is a deprecated syntax.
1122
1211
  error "All resource specifications require names"
1123
1212
 
@@ -1125,18 +1214,18 @@ module_eval(<<'.,.,', 'grammar.ra', 136)
1125
1214
  end
1126
1215
  .,.,
1127
1216
 
1128
- module_eval(<<'.,.,', 'grammar.ra', 139)
1129
- def _reduce_50(val, _values, result)
1217
+ module_eval(<<'.,.,', 'grammar.ra', 146)
1218
+ def _reduce_55(val, _values, result)
1130
1219
  # a defaults setting for a type
1131
1220
  @lexer.commentpop
1132
- result = ast(AST::ResourceDefaults, :type => val[0], :parameters => val[2])
1221
+ result = ast(AST::ResourceDefaults, :type => val[0].value, :parameters => val[2])
1133
1222
 
1134
1223
  result
1135
1224
  end
1136
1225
  .,.,
1137
1226
 
1138
- module_eval(<<'.,.,', 'grammar.ra', 146)
1139
- def _reduce_51(val, _values, result)
1227
+ module_eval(<<'.,.,', 'grammar.ra', 153)
1228
+ def _reduce_56(val, _values, result)
1140
1229
  @lexer.commentpop
1141
1230
  result = ast AST::ResourceOverride, :object => val[0], :parameters => val[2]
1142
1231
 
@@ -1144,8 +1233,8 @@ module_eval(<<'.,.,', 'grammar.ra', 146)
1144
1233
  end
1145
1234
  .,.,
1146
1235
 
1147
- module_eval(<<'.,.,', 'grammar.ra', 153)
1148
- def _reduce_52(val, _values, result)
1236
+ module_eval(<<'.,.,', 'grammar.ra', 160)
1237
+ def _reduce_57(val, _values, result)
1149
1238
  type = val[0]
1150
1239
 
1151
1240
  if (type == :exported and ! Puppet[:storeconfigs])
@@ -1165,25 +1254,24 @@ module_eval(<<'.,.,', 'grammar.ra', 153)
1165
1254
  end
1166
1255
  .,.,
1167
1256
 
1168
- module_eval(<<'.,.,', 'grammar.ra', 169)
1169
- def _reduce_53(val, _values, result)
1257
+ module_eval(<<'.,.,', 'grammar.ra', 176)
1258
+ def _reduce_58(val, _values, result)
1170
1259
  result = :virtual
1171
1260
  result
1172
1261
  end
1173
1262
  .,.,
1174
1263
 
1175
- module_eval(<<'.,.,', 'grammar.ra', 170)
1176
- def _reduce_54(val, _values, result)
1264
+ module_eval(<<'.,.,', 'grammar.ra', 177)
1265
+ def _reduce_59(val, _values, result)
1177
1266
  result = :exported
1178
1267
  result
1179
1268
  end
1180
1269
  .,.,
1181
1270
 
1182
- module_eval(<<'.,.,', 'grammar.ra', 175)
1183
- def _reduce_55(val, _values, result)
1271
+ module_eval(<<'.,.,', 'grammar.ra', 182)
1272
+ def _reduce_60(val, _values, result)
1184
1273
  @lexer.commentpop
1185
- Puppet.warning addcontext("Collection names must now be capitalized") if val[0] =~ /^[a-z]/
1186
- type = val[0].downcase
1274
+ type = val[0].value.downcase
1187
1275
  args = {:type => type}
1188
1276
 
1189
1277
  if val[1].is_a?(AST::CollExpr)
@@ -1203,12 +1291,9 @@ module_eval(<<'.,.,', 'grammar.ra', 175)
1203
1291
  end
1204
1292
  .,.,
1205
1293
 
1206
- module_eval(<<'.,.,', 'grammar.ra', 194)
1207
- def _reduce_56(val, _values, result)
1208
- if val[0] =~ /^[a-z]/
1209
- Puppet.warning addcontext("Collection names must now be capitalized")
1210
- end
1211
- type = val[0].downcase
1294
+ module_eval(<<'.,.,', 'grammar.ra', 200)
1295
+ def _reduce_61(val, _values, result)
1296
+ type = val[0].value.downcase
1212
1297
  args = {:type => type }
1213
1298
 
1214
1299
  if val[1].is_a?(AST::CollExpr)
@@ -1227,8 +1312,8 @@ module_eval(<<'.,.,', 'grammar.ra', 194)
1227
1312
  end
1228
1313
  .,.,
1229
1314
 
1230
- module_eval(<<'.,.,', 'grammar.ra', 215)
1231
- def _reduce_57(val, _values, result)
1315
+ module_eval(<<'.,.,', 'grammar.ra', 218)
1316
+ def _reduce_62(val, _values, result)
1232
1317
  if val[1]
1233
1318
  result = val[1]
1234
1319
  result.form = :virtual
@@ -1240,8 +1325,8 @@ module_eval(<<'.,.,', 'grammar.ra', 215)
1240
1325
  end
1241
1326
  .,.,
1242
1327
 
1243
- module_eval(<<'.,.,', 'grammar.ra', 223)
1244
- def _reduce_58(val, _values, result)
1328
+ module_eval(<<'.,.,', 'grammar.ra', 226)
1329
+ def _reduce_63(val, _values, result)
1245
1330
  if val[1]
1246
1331
  result = val[1]
1247
1332
  result.form = :exported
@@ -1253,22 +1338,22 @@ module_eval(<<'.,.,', 'grammar.ra', 223)
1253
1338
  end
1254
1339
  .,.,
1255
1340
 
1256
- # reduce 59 omitted
1341
+ # reduce 64 omitted
1257
1342
 
1258
- # reduce 60 omitted
1343
+ # reduce 65 omitted
1259
1344
 
1260
- module_eval(<<'.,.,', 'grammar.ra', 236)
1261
- def _reduce_61(val, _values, result)
1345
+ module_eval(<<'.,.,', 'grammar.ra', 239)
1346
+ def _reduce_66(val, _values, result)
1262
1347
  result = ast AST::CollExpr, :test1 => val[0], :oper => val[1], :test2 => val[2]
1263
1348
 
1264
1349
  result
1265
1350
  end
1266
1351
  .,.,
1267
1352
 
1268
- # reduce 62 omitted
1353
+ # reduce 67 omitted
1269
1354
 
1270
- module_eval(<<'.,.,', 'grammar.ra', 241)
1271
- def _reduce_63(val, _values, result)
1355
+ module_eval(<<'.,.,', 'grammar.ra', 244)
1356
+ def _reduce_68(val, _values, result)
1272
1357
  result = val[1]
1273
1358
  result.parens = true
1274
1359
 
@@ -1276,22 +1361,22 @@ module_eval(<<'.,.,', 'grammar.ra', 241)
1276
1361
  end
1277
1362
  .,.,
1278
1363
 
1279
- module_eval(<<'.,.,', 'grammar.ra', 245)
1280
- def _reduce_64(val, _values, result)
1364
+ module_eval(<<'.,.,', 'grammar.ra', 248)
1365
+ def _reduce_69(val, _values, result)
1281
1366
  result=val[0][:value]
1282
1367
  result
1283
1368
  end
1284
1369
  .,.,
1285
1370
 
1286
- module_eval(<<'.,.,', 'grammar.ra', 246)
1287
- def _reduce_65(val, _values, result)
1371
+ module_eval(<<'.,.,', 'grammar.ra', 249)
1372
+ def _reduce_70(val, _values, result)
1288
1373
  result=val[0][:value]
1289
1374
  result
1290
1375
  end
1291
1376
  .,.,
1292
1377
 
1293
- module_eval(<<'.,.,', 'grammar.ra', 249)
1294
- def _reduce_66(val, _values, result)
1378
+ module_eval(<<'.,.,', 'grammar.ra', 252)
1379
+ def _reduce_71(val, _values, result)
1295
1380
  result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
1296
1381
  #result = ast AST::CollExpr
1297
1382
  #result.push *val
@@ -1300,8 +1385,8 @@ module_eval(<<'.,.,', 'grammar.ra', 249)
1300
1385
  end
1301
1386
  .,.,
1302
1387
 
1303
- module_eval(<<'.,.,', 'grammar.ra', 254)
1304
- def _reduce_67(val, _values, result)
1388
+ module_eval(<<'.,.,', 'grammar.ra', 257)
1389
+ def _reduce_72(val, _values, result)
1305
1390
  result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
1306
1391
  #result = ast AST::CollExpr
1307
1392
  #result.push *val
@@ -1310,27 +1395,27 @@ module_eval(<<'.,.,', 'grammar.ra', 254)
1310
1395
  end
1311
1396
  .,.,
1312
1397
 
1313
- # reduce 68 omitted
1398
+ # reduce 73 omitted
1314
1399
 
1315
- # reduce 69 omitted
1400
+ # reduce 74 omitted
1316
1401
 
1317
- module_eval(<<'.,.,', 'grammar.ra', 263)
1318
- def _reduce_70(val, _values, result)
1402
+ module_eval(<<'.,.,', 'grammar.ra', 266)
1403
+ def _reduce_75(val, _values, result)
1319
1404
  result = ast AST::ResourceInstance, :title => val[0], :parameters => val[2]
1320
1405
 
1321
1406
  result
1322
1407
  end
1323
1408
  .,.,
1324
1409
 
1325
- module_eval(<<'.,.,', 'grammar.ra', 266)
1326
- def _reduce_71(val, _values, result)
1410
+ module_eval(<<'.,.,', 'grammar.ra', 269)
1411
+ def _reduce_76(val, _values, result)
1327
1412
  result = aryfy(val[0])
1328
1413
  result
1329
1414
  end
1330
1415
  .,.,
1331
1416
 
1332
- module_eval(<<'.,.,', 'grammar.ra', 268)
1333
- def _reduce_72(val, _values, result)
1417
+ module_eval(<<'.,.,', 'grammar.ra', 271)
1418
+ def _reduce_77(val, _values, result)
1334
1419
  val[0].push val[2]
1335
1420
  result = val[0]
1336
1421
 
@@ -1338,50 +1423,50 @@ module_eval(<<'.,.,', 'grammar.ra', 268)
1338
1423
  end
1339
1424
  .,.,
1340
1425
 
1341
- # reduce 73 omitted
1426
+ # reduce 78 omitted
1342
1427
 
1343
- # reduce 74 omitted
1428
+ # reduce 79 omitted
1344
1429
 
1345
- module_eval(<<'.,.,', 'grammar.ra', 276)
1346
- def _reduce_75(val, _values, result)
1430
+ module_eval(<<'.,.,', 'grammar.ra', 279)
1431
+ def _reduce_80(val, _values, result)
1347
1432
  result = ast AST::Undef, :value => :undef
1348
1433
 
1349
1434
  result
1350
1435
  end
1351
1436
  .,.,
1352
1437
 
1353
- module_eval(<<'.,.,', 'grammar.ra', 280)
1354
- def _reduce_76(val, _values, result)
1438
+ module_eval(<<'.,.,', 'grammar.ra', 283)
1439
+ def _reduce_81(val, _values, result)
1355
1440
  result = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
1356
1441
 
1357
1442
  result
1358
1443
  end
1359
1444
  .,.,
1360
1445
 
1361
- module_eval(<<'.,.,', 'grammar.ra', 284)
1362
- def _reduce_77(val, _values, result)
1446
+ module_eval(<<'.,.,', 'grammar.ra', 287)
1447
+ def _reduce_82(val, _values, result)
1363
1448
  result = ast AST::Type, :value => val[0][:value], :line => val[0][:line]
1364
1449
 
1365
1450
  result
1366
1451
  end
1367
1452
  .,.,
1368
1453
 
1369
- # reduce 78 omitted
1454
+ # reduce 83 omitted
1370
1455
 
1371
- # reduce 79 omitted
1456
+ # reduce 84 omitted
1372
1457
 
1373
- # reduce 80 omitted
1458
+ # reduce 85 omitted
1374
1459
 
1375
- # reduce 81 omitted
1460
+ # reduce 86 omitted
1376
1461
 
1377
- # reduce 82 omitted
1462
+ # reduce 87 omitted
1378
1463
 
1379
- # reduce 83 omitted
1464
+ # reduce 88 omitted
1380
1465
 
1381
- # reduce 84 omitted
1466
+ # reduce 89 omitted
1382
1467
 
1383
- module_eval(<<'.,.,', 'grammar.ra', 296)
1384
- def _reduce_85(val, _values, result)
1468
+ module_eval(<<'.,.,', 'grammar.ra', 299)
1469
+ def _reduce_90(val, _values, result)
1385
1470
  raise Puppet::ParseError, "Cannot assign to variables in other namespaces" if val[0][:value] =~ /::/
1386
1471
  # this is distinct from referencing a variable
1387
1472
  variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
@@ -1391,16 +1476,16 @@ module_eval(<<'.,.,', 'grammar.ra', 296)
1391
1476
  end
1392
1477
  .,.,
1393
1478
 
1394
- module_eval(<<'.,.,', 'grammar.ra', 302)
1395
- def _reduce_86(val, _values, result)
1479
+ module_eval(<<'.,.,', 'grammar.ra', 305)
1480
+ def _reduce_91(val, _values, result)
1396
1481
  result = ast AST::VarDef, :name => val[0], :value => val[2]
1397
1482
 
1398
1483
  result
1399
1484
  end
1400
1485
  .,.,
1401
1486
 
1402
- module_eval(<<'.,.,', 'grammar.ra', 306)
1403
- def _reduce_87(val, _values, result)
1487
+ module_eval(<<'.,.,', 'grammar.ra', 309)
1488
+ def _reduce_92(val, _values, result)
1404
1489
  variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
1405
1490
  result = ast AST::VarDef, :name => variable, :value => val[2], :append => true, :line => val[0][:line]
1406
1491
 
@@ -1408,23 +1493,23 @@ module_eval(<<'.,.,', 'grammar.ra', 306)
1408
1493
  end
1409
1494
  .,.,
1410
1495
 
1411
- module_eval(<<'.,.,', 'grammar.ra', 312)
1412
- def _reduce_88(val, _values, result)
1496
+ module_eval(<<'.,.,', 'grammar.ra', 315)
1497
+ def _reduce_93(val, _values, result)
1413
1498
  result = ast AST::ASTArray
1414
1499
 
1415
1500
  result
1416
1501
  end
1417
1502
  .,.,
1418
1503
 
1419
- module_eval(<<'.,.,', 'grammar.ra', 314)
1420
- def _reduce_89(val, _values, result)
1504
+ module_eval(<<'.,.,', 'grammar.ra', 317)
1505
+ def _reduce_94(val, _values, result)
1421
1506
  result = aryfy(val[0])
1422
1507
  result
1423
1508
  end
1424
1509
  .,.,
1425
1510
 
1426
- module_eval(<<'.,.,', 'grammar.ra', 316)
1427
- def _reduce_90(val, _values, result)
1511
+ module_eval(<<'.,.,', 'grammar.ra', 319)
1512
+ def _reduce_95(val, _values, result)
1428
1513
  val[0].push(val[2])
1429
1514
  result = val[0]
1430
1515
 
@@ -1432,16 +1517,16 @@ module_eval(<<'.,.,', 'grammar.ra', 316)
1432
1517
  end
1433
1518
  .,.,
1434
1519
 
1435
- module_eval(<<'.,.,', 'grammar.ra', 321)
1436
- def _reduce_91(val, _values, result)
1520
+ module_eval(<<'.,.,', 'grammar.ra', 324)
1521
+ def _reduce_96(val, _values, result)
1437
1522
  result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2]
1438
1523
 
1439
1524
  result
1440
1525
  end
1441
1526
  .,.,
1442
1527
 
1443
- module_eval(<<'.,.,', 'grammar.ra', 325)
1444
- def _reduce_92(val, _values, result)
1528
+ module_eval(<<'.,.,', 'grammar.ra', 328)
1529
+ def _reduce_97(val, _values, result)
1445
1530
  result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2],
1446
1531
  :add => true
1447
1532
 
@@ -1449,27 +1534,27 @@ module_eval(<<'.,.,', 'grammar.ra', 325)
1449
1534
  end
1450
1535
  .,.,
1451
1536
 
1452
- # reduce 93 omitted
1537
+ # reduce 98 omitted
1453
1538
 
1454
- # reduce 94 omitted
1539
+ # reduce 99 omitted
1455
1540
 
1456
- module_eval(<<'.,.,', 'grammar.ra', 334)
1457
- def _reduce_95(val, _values, result)
1541
+ module_eval(<<'.,.,', 'grammar.ra', 337)
1542
+ def _reduce_100(val, _values, result)
1458
1543
  result = ast AST::ASTArray
1459
1544
 
1460
1545
  result
1461
1546
  end
1462
1547
  .,.,
1463
1548
 
1464
- module_eval(<<'.,.,', 'grammar.ra', 336)
1465
- def _reduce_96(val, _values, result)
1549
+ module_eval(<<'.,.,', 'grammar.ra', 339)
1550
+ def _reduce_101(val, _values, result)
1466
1551
  result = aryfy(val[0])
1467
1552
  result
1468
1553
  end
1469
1554
  .,.,
1470
1555
 
1471
- module_eval(<<'.,.,', 'grammar.ra', 338)
1472
- def _reduce_97(val, _values, result)
1556
+ module_eval(<<'.,.,', 'grammar.ra', 341)
1557
+ def _reduce_102(val, _values, result)
1473
1558
  val[0].push(val[2])
1474
1559
  result = val[0]
1475
1560
 
@@ -1477,8 +1562,8 @@ module_eval(<<'.,.,', 'grammar.ra', 338)
1477
1562
  end
1478
1563
  .,.,
1479
1564
 
1480
- module_eval(<<'.,.,', 'grammar.ra', 344)
1481
- def _reduce_98(val, _values, result)
1565
+ module_eval(<<'.,.,', 'grammar.ra', 347)
1566
+ def _reduce_103(val, _values, result)
1482
1567
  result = ast AST::Function,
1483
1568
  :name => val[0][:value], :line => val[0][:line],
1484
1569
  :arguments => val[2],
@@ -1488,8 +1573,8 @@ module_eval(<<'.,.,', 'grammar.ra', 344)
1488
1573
  end
1489
1574
  .,.,
1490
1575
 
1491
- module_eval(<<'.,.,', 'grammar.ra', 349)
1492
- def _reduce_99(val, _values, result)
1576
+ module_eval(<<'.,.,', 'grammar.ra', 352)
1577
+ def _reduce_104(val, _values, result)
1493
1578
  result = ast AST::Function,
1494
1579
  :name => val[0][:value], :line => val[0][:line],
1495
1580
  :arguments => AST::ASTArray.new({}),
@@ -1499,51 +1584,51 @@ module_eval(<<'.,.,', 'grammar.ra', 349)
1499
1584
  end
1500
1585
  .,.,
1501
1586
 
1502
- module_eval(<<'.,.,', 'grammar.ra', 355)
1503
- def _reduce_100(val, _values, result)
1587
+ module_eval(<<'.,.,', 'grammar.ra', 358)
1588
+ def _reduce_105(val, _values, result)
1504
1589
  result = ast AST::String, :value => val[0][:value], :line => val[0][:line]
1505
1590
  result
1506
1591
  end
1507
1592
  .,.,
1508
1593
 
1509
- module_eval(<<'.,.,', 'grammar.ra', 356)
1510
- def _reduce_101(val, _values, result)
1594
+ module_eval(<<'.,.,', 'grammar.ra', 359)
1595
+ def _reduce_106(val, _values, result)
1511
1596
  result = ast AST::Concat, :value => [ast(AST::String,val[0])]+val[1], :line => val[0][:line]
1512
1597
  result
1513
1598
  end
1514
1599
  .,.,
1515
1600
 
1516
- module_eval(<<'.,.,', 'grammar.ra', 358)
1517
- def _reduce_102(val, _values, result)
1601
+ module_eval(<<'.,.,', 'grammar.ra', 361)
1602
+ def _reduce_107(val, _values, result)
1518
1603
  result = [val[0]] + val[1]
1519
1604
  result
1520
1605
  end
1521
1606
  .,.,
1522
1607
 
1523
- module_eval(<<'.,.,', 'grammar.ra', 360)
1524
- def _reduce_103(val, _values, result)
1608
+ module_eval(<<'.,.,', 'grammar.ra', 363)
1609
+ def _reduce_108(val, _values, result)
1525
1610
  result = [ast(AST::String,val[0])]
1526
1611
  result
1527
1612
  end
1528
1613
  .,.,
1529
1614
 
1530
- module_eval(<<'.,.,', 'grammar.ra', 361)
1531
- def _reduce_104(val, _values, result)
1615
+ module_eval(<<'.,.,', 'grammar.ra', 364)
1616
+ def _reduce_109(val, _values, result)
1532
1617
  result = [ast(AST::String,val[0])] + val[1]
1533
1618
  result
1534
1619
  end
1535
1620
  .,.,
1536
1621
 
1537
- module_eval(<<'.,.,', 'grammar.ra', 364)
1538
- def _reduce_105(val, _values, result)
1622
+ module_eval(<<'.,.,', 'grammar.ra', 367)
1623
+ def _reduce_110(val, _values, result)
1539
1624
  result = ast AST::Boolean, :value => val[0][:value], :line => val[0][:line]
1540
1625
 
1541
1626
  result
1542
1627
  end
1543
1628
  .,.,
1544
1629
 
1545
- module_eval(<<'.,.,', 'grammar.ra', 368)
1546
- def _reduce_106(val, _values, result)
1630
+ module_eval(<<'.,.,', 'grammar.ra', 371)
1631
+ def _reduce_111(val, _values, result)
1547
1632
  Puppet.warning addcontext("Deprecation notice: Resource references should now be capitalized")
1548
1633
  result = ast AST::ResourceReference, :type => val[0][:value], :line => val[0][:line], :title => val[2]
1549
1634
 
@@ -1551,24 +1636,24 @@ module_eval(<<'.,.,', 'grammar.ra', 368)
1551
1636
  end
1552
1637
  .,.,
1553
1638
 
1554
- module_eval(<<'.,.,', 'grammar.ra', 371)
1555
- def _reduce_107(val, _values, result)
1556
- result = ast AST::ResourceReference, :type => val[0], :title => val[2]
1639
+ module_eval(<<'.,.,', 'grammar.ra', 374)
1640
+ def _reduce_112(val, _values, result)
1641
+ result = ast AST::ResourceReference, :type => val[0].value, :title => val[2]
1557
1642
 
1558
1643
  result
1559
1644
  end
1560
1645
  .,.,
1561
1646
 
1562
- module_eval(<<'.,.,', 'grammar.ra', 375)
1563
- def _reduce_108(val, _values, result)
1647
+ module_eval(<<'.,.,', 'grammar.ra', 378)
1648
+ def _reduce_113(val, _values, result)
1564
1649
  result = val[1]
1565
1650
 
1566
1651
  result
1567
1652
  end
1568
1653
  .,.,
1569
1654
 
1570
- module_eval(<<'.,.,', 'grammar.ra', 379)
1571
- def _reduce_109(val, _values, result)
1655
+ module_eval(<<'.,.,', 'grammar.ra', 382)
1656
+ def _reduce_114(val, _values, result)
1572
1657
  @lexer.commentpop
1573
1658
  args = {
1574
1659
  :test => val[0],
@@ -1583,8 +1668,8 @@ module_eval(<<'.,.,', 'grammar.ra', 379)
1583
1668
  end
1584
1669
  .,.,
1585
1670
 
1586
- module_eval(<<'.,.,', 'grammar.ra', 390)
1587
- def _reduce_110(val, _values, result)
1671
+ module_eval(<<'.,.,', 'grammar.ra', 393)
1672
+ def _reduce_115(val, _values, result)
1588
1673
  @lexer.commentpop
1589
1674
  args = {
1590
1675
  :test => val[0],
@@ -1599,18 +1684,18 @@ module_eval(<<'.,.,', 'grammar.ra', 390)
1599
1684
  end
1600
1685
  .,.,
1601
1686
 
1602
- # reduce 111 omitted
1687
+ # reduce 116 omitted
1603
1688
 
1604
- module_eval(<<'.,.,', 'grammar.ra', 403)
1605
- def _reduce_112(val, _values, result)
1689
+ module_eval(<<'.,.,', 'grammar.ra', 406)
1690
+ def _reduce_117(val, _values, result)
1606
1691
  result = ast AST::Else, :statements => val[1]
1607
1692
 
1608
1693
  result
1609
1694
  end
1610
1695
  .,.,
1611
1696
 
1612
- module_eval(<<'.,.,', 'grammar.ra', 406)
1613
- def _reduce_113(val, _values, result)
1697
+ module_eval(<<'.,.,', 'grammar.ra', 409)
1698
+ def _reduce_118(val, _values, result)
1614
1699
  @lexer.commentpop
1615
1700
  result = ast AST::Else, :statements => val[2]
1616
1701
 
@@ -1618,8 +1703,8 @@ module_eval(<<'.,.,', 'grammar.ra', 406)
1618
1703
  end
1619
1704
  .,.,
1620
1705
 
1621
- module_eval(<<'.,.,', 'grammar.ra', 410)
1622
- def _reduce_114(val, _values, result)
1706
+ module_eval(<<'.,.,', 'grammar.ra', 413)
1707
+ def _reduce_119(val, _values, result)
1623
1708
  @lexer.commentpop
1624
1709
  result = ast AST::Else, :statements => ast(AST::Nop)
1625
1710
 
@@ -1627,28 +1712,20 @@ module_eval(<<'.,.,', 'grammar.ra', 410)
1627
1712
  end
1628
1713
  .,.,
1629
1714
 
1630
- # reduce 115 omitted
1631
-
1632
- # reduce 116 omitted
1633
-
1634
- module_eval(<<'.,.,', 'grammar.ra', 429)
1635
- def _reduce_117(val, _values, result)
1636
- result = ast AST::InOperator, :lval => val[0], :rval => val[2]
1715
+ # reduce 120 omitted
1637
1716
 
1638
- result
1639
- end
1640
- .,.,
1717
+ # reduce 121 omitted
1641
1718
 
1642
1719
  module_eval(<<'.,.,', 'grammar.ra', 432)
1643
- def _reduce_118(val, _values, result)
1644
- result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1720
+ def _reduce_122(val, _values, result)
1721
+ result = ast AST::InOperator, :lval => val[0], :rval => val[2]
1645
1722
 
1646
1723
  result
1647
1724
  end
1648
1725
  .,.,
1649
1726
 
1650
1727
  module_eval(<<'.,.,', 'grammar.ra', 435)
1651
- def _reduce_119(val, _values, result)
1728
+ def _reduce_123(val, _values, result)
1652
1729
  result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1653
1730
 
1654
1731
  result
@@ -1656,15 +1733,15 @@ module_eval(<<'.,.,', 'grammar.ra', 435)
1656
1733
  .,.,
1657
1734
 
1658
1735
  module_eval(<<'.,.,', 'grammar.ra', 438)
1659
- def _reduce_120(val, _values, result)
1660
- result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1736
+ def _reduce_124(val, _values, result)
1737
+ result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1661
1738
 
1662
1739
  result
1663
1740
  end
1664
1741
  .,.,
1665
1742
 
1666
1743
  module_eval(<<'.,.,', 'grammar.ra', 441)
1667
- def _reduce_121(val, _values, result)
1744
+ def _reduce_125(val, _values, result)
1668
1745
  result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1669
1746
 
1670
1747
  result
@@ -1672,7 +1749,7 @@ module_eval(<<'.,.,', 'grammar.ra', 441)
1672
1749
  .,.,
1673
1750
 
1674
1751
  module_eval(<<'.,.,', 'grammar.ra', 444)
1675
- def _reduce_122(val, _values, result)
1752
+ def _reduce_126(val, _values, result)
1676
1753
  result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1677
1754
 
1678
1755
  result
@@ -1680,7 +1757,7 @@ module_eval(<<'.,.,', 'grammar.ra', 444)
1680
1757
  .,.,
1681
1758
 
1682
1759
  module_eval(<<'.,.,', 'grammar.ra', 447)
1683
- def _reduce_123(val, _values, result)
1760
+ def _reduce_127(val, _values, result)
1684
1761
  result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1685
1762
 
1686
1763
  result
@@ -1688,7 +1765,7 @@ module_eval(<<'.,.,', 'grammar.ra', 447)
1688
1765
  .,.,
1689
1766
 
1690
1767
  module_eval(<<'.,.,', 'grammar.ra', 450)
1691
- def _reduce_124(val, _values, result)
1768
+ def _reduce_128(val, _values, result)
1692
1769
  result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1693
1770
 
1694
1771
  result
@@ -1696,7 +1773,7 @@ module_eval(<<'.,.,', 'grammar.ra', 450)
1696
1773
  .,.,
1697
1774
 
1698
1775
  module_eval(<<'.,.,', 'grammar.ra', 453)
1699
- def _reduce_125(val, _values, result)
1776
+ def _reduce_129(val, _values, result)
1700
1777
  result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1701
1778
 
1702
1779
  result
@@ -1704,23 +1781,23 @@ module_eval(<<'.,.,', 'grammar.ra', 453)
1704
1781
  .,.,
1705
1782
 
1706
1783
  module_eval(<<'.,.,', 'grammar.ra', 456)
1707
- def _reduce_126(val, _values, result)
1708
- result = ast AST::Minus, :value => val[1]
1784
+ def _reduce_130(val, _values, result)
1785
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1709
1786
 
1710
1787
  result
1711
1788
  end
1712
1789
  .,.,
1713
1790
 
1714
1791
  module_eval(<<'.,.,', 'grammar.ra', 459)
1715
- def _reduce_127(val, _values, result)
1716
- result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1792
+ def _reduce_131(val, _values, result)
1793
+ result = ast AST::Minus, :value => val[1]
1717
1794
 
1718
1795
  result
1719
1796
  end
1720
1797
  .,.,
1721
1798
 
1722
1799
  module_eval(<<'.,.,', 'grammar.ra', 462)
1723
- def _reduce_128(val, _values, result)
1800
+ def _reduce_132(val, _values, result)
1724
1801
  result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1725
1802
 
1726
1803
  result
@@ -1728,7 +1805,7 @@ module_eval(<<'.,.,', 'grammar.ra', 462)
1728
1805
  .,.,
1729
1806
 
1730
1807
  module_eval(<<'.,.,', 'grammar.ra', 465)
1731
- def _reduce_129(val, _values, result)
1808
+ def _reduce_133(val, _values, result)
1732
1809
  result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1733
1810
 
1734
1811
  result
@@ -1736,7 +1813,7 @@ module_eval(<<'.,.,', 'grammar.ra', 465)
1736
1813
  .,.,
1737
1814
 
1738
1815
  module_eval(<<'.,.,', 'grammar.ra', 468)
1739
- def _reduce_130(val, _values, result)
1816
+ def _reduce_134(val, _values, result)
1740
1817
  result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1741
1818
 
1742
1819
  result
@@ -1744,7 +1821,7 @@ module_eval(<<'.,.,', 'grammar.ra', 468)
1744
1821
  .,.,
1745
1822
 
1746
1823
  module_eval(<<'.,.,', 'grammar.ra', 471)
1747
- def _reduce_131(val, _values, result)
1824
+ def _reduce_135(val, _values, result)
1748
1825
  result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1749
1826
 
1750
1827
  result
@@ -1752,7 +1829,7 @@ module_eval(<<'.,.,', 'grammar.ra', 471)
1752
1829
  .,.,
1753
1830
 
1754
1831
  module_eval(<<'.,.,', 'grammar.ra', 474)
1755
- def _reduce_132(val, _values, result)
1832
+ def _reduce_136(val, _values, result)
1756
1833
  result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1757
1834
 
1758
1835
  result
@@ -1760,23 +1837,23 @@ module_eval(<<'.,.,', 'grammar.ra', 474)
1760
1837
  .,.,
1761
1838
 
1762
1839
  module_eval(<<'.,.,', 'grammar.ra', 477)
1763
- def _reduce_133(val, _values, result)
1764
- result = ast AST::Not, :value => val[1]
1840
+ def _reduce_137(val, _values, result)
1841
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1765
1842
 
1766
1843
  result
1767
1844
  end
1768
1845
  .,.,
1769
1846
 
1770
1847
  module_eval(<<'.,.,', 'grammar.ra', 480)
1771
- def _reduce_134(val, _values, result)
1772
- result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1848
+ def _reduce_138(val, _values, result)
1849
+ result = ast AST::Not, :value => val[1]
1773
1850
 
1774
1851
  result
1775
1852
  end
1776
1853
  .,.,
1777
1854
 
1778
1855
  module_eval(<<'.,.,', 'grammar.ra', 483)
1779
- def _reduce_135(val, _values, result)
1856
+ def _reduce_139(val, _values, result)
1780
1857
  result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1781
1858
 
1782
1859
  result
@@ -1784,15 +1861,23 @@ module_eval(<<'.,.,', 'grammar.ra', 483)
1784
1861
  .,.,
1785
1862
 
1786
1863
  module_eval(<<'.,.,', 'grammar.ra', 486)
1787
- def _reduce_136(val, _values, result)
1864
+ def _reduce_140(val, _values, result)
1865
+ result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1866
+
1867
+ result
1868
+ end
1869
+ .,.,
1870
+
1871
+ module_eval(<<'.,.,', 'grammar.ra', 489)
1872
+ def _reduce_141(val, _values, result)
1788
1873
  result = val[1]
1789
1874
 
1790
1875
  result
1791
1876
  end
1792
1877
  .,.,
1793
1878
 
1794
- module_eval(<<'.,.,', 'grammar.ra', 490)
1795
- def _reduce_137(val, _values, result)
1879
+ module_eval(<<'.,.,', 'grammar.ra', 493)
1880
+ def _reduce_142(val, _values, result)
1796
1881
  @lexer.commentpop
1797
1882
  result = ast AST::CaseStatement, :test => val[1], :options => val[3]
1798
1883
 
@@ -1800,15 +1885,15 @@ module_eval(<<'.,.,', 'grammar.ra', 490)
1800
1885
  end
1801
1886
  .,.,
1802
1887
 
1803
- module_eval(<<'.,.,', 'grammar.ra', 494)
1804
- def _reduce_138(val, _values, result)
1888
+ module_eval(<<'.,.,', 'grammar.ra', 497)
1889
+ def _reduce_143(val, _values, result)
1805
1890
  result = aryfy(val[0])
1806
1891
  result
1807
1892
  end
1808
1893
  .,.,
1809
1894
 
1810
- module_eval(<<'.,.,', 'grammar.ra', 496)
1811
- def _reduce_139(val, _values, result)
1895
+ module_eval(<<'.,.,', 'grammar.ra', 499)
1896
+ def _reduce_144(val, _values, result)
1812
1897
  val[0].push val[1]
1813
1898
  result = val[0]
1814
1899
 
@@ -1816,8 +1901,8 @@ module_eval(<<'.,.,', 'grammar.ra', 496)
1816
1901
  end
1817
1902
  .,.,
1818
1903
 
1819
- module_eval(<<'.,.,', 'grammar.ra', 501)
1820
- def _reduce_140(val, _values, result)
1904
+ module_eval(<<'.,.,', 'grammar.ra', 504)
1905
+ def _reduce_145(val, _values, result)
1821
1906
  @lexer.commentpop
1822
1907
  result = ast AST::CaseOpt, :value => val[0], :statements => val[3]
1823
1908
 
@@ -1825,8 +1910,8 @@ module_eval(<<'.,.,', 'grammar.ra', 501)
1825
1910
  end
1826
1911
  .,.,
1827
1912
 
1828
- module_eval(<<'.,.,', 'grammar.ra', 504)
1829
- def _reduce_141(val, _values, result)
1913
+ module_eval(<<'.,.,', 'grammar.ra', 507)
1914
+ def _reduce_146(val, _values, result)
1830
1915
  @lexer.commentpop
1831
1916
 
1832
1917
  result = ast(
@@ -1840,15 +1925,15 @@ module_eval(<<'.,.,', 'grammar.ra', 504)
1840
1925
  end
1841
1926
  .,.,
1842
1927
 
1843
- module_eval(<<'.,.,', 'grammar.ra', 514)
1844
- def _reduce_142(val, _values, result)
1928
+ module_eval(<<'.,.,', 'grammar.ra', 517)
1929
+ def _reduce_147(val, _values, result)
1845
1930
  result = aryfy(val[0])
1846
1931
  result
1847
1932
  end
1848
1933
  .,.,
1849
1934
 
1850
- module_eval(<<'.,.,', 'grammar.ra', 516)
1851
- def _reduce_143(val, _values, result)
1935
+ module_eval(<<'.,.,', 'grammar.ra', 519)
1936
+ def _reduce_148(val, _values, result)
1852
1937
  val[0].push(val[2])
1853
1938
  result = val[0]
1854
1939
 
@@ -1856,18 +1941,18 @@ module_eval(<<'.,.,', 'grammar.ra', 516)
1856
1941
  end
1857
1942
  .,.,
1858
1943
 
1859
- module_eval(<<'.,.,', 'grammar.ra', 521)
1860
- def _reduce_144(val, _values, result)
1944
+ module_eval(<<'.,.,', 'grammar.ra', 524)
1945
+ def _reduce_149(val, _values, result)
1861
1946
  result = ast AST::Selector, :param => val[0], :values => val[2]
1862
1947
 
1863
1948
  result
1864
1949
  end
1865
1950
  .,.,
1866
1951
 
1867
- # reduce 145 omitted
1952
+ # reduce 150 omitted
1868
1953
 
1869
- module_eval(<<'.,.,', 'grammar.ra', 526)
1870
- def _reduce_146(val, _values, result)
1954
+ module_eval(<<'.,.,', 'grammar.ra', 529)
1955
+ def _reduce_151(val, _values, result)
1871
1956
  @lexer.commentpop
1872
1957
  result = val[1]
1873
1958
 
@@ -1875,10 +1960,10 @@ module_eval(<<'.,.,', 'grammar.ra', 526)
1875
1960
  end
1876
1961
  .,.,
1877
1962
 
1878
- # reduce 147 omitted
1963
+ # reduce 152 omitted
1879
1964
 
1880
- module_eval(<<'.,.,', 'grammar.ra', 532)
1881
- def _reduce_148(val, _values, result)
1965
+ module_eval(<<'.,.,', 'grammar.ra', 535)
1966
+ def _reduce_153(val, _values, result)
1882
1967
  if val[0].instance_of?(AST::ASTArray)
1883
1968
  val[0].push(val[2])
1884
1969
  result = val[0]
@@ -1890,58 +1975,58 @@ module_eval(<<'.,.,', 'grammar.ra', 532)
1890
1975
  end
1891
1976
  .,.,
1892
1977
 
1893
- module_eval(<<'.,.,', 'grammar.ra', 541)
1894
- def _reduce_149(val, _values, result)
1978
+ module_eval(<<'.,.,', 'grammar.ra', 544)
1979
+ def _reduce_154(val, _values, result)
1895
1980
  result = ast AST::ResourceParam, :param => val[0], :value => val[2]
1896
1981
 
1897
1982
  result
1898
1983
  end
1899
1984
  .,.,
1900
1985
 
1901
- # reduce 150 omitted
1986
+ # reduce 155 omitted
1902
1987
 
1903
- # reduce 151 omitted
1988
+ # reduce 156 omitted
1904
1989
 
1905
- # reduce 152 omitted
1990
+ # reduce 157 omitted
1906
1991
 
1907
- # reduce 153 omitted
1992
+ # reduce 158 omitted
1908
1993
 
1909
- # reduce 154 omitted
1994
+ # reduce 159 omitted
1910
1995
 
1911
- # reduce 155 omitted
1996
+ # reduce 160 omitted
1912
1997
 
1913
- # reduce 156 omitted
1998
+ # reduce 161 omitted
1914
1999
 
1915
- # reduce 157 omitted
2000
+ # reduce 162 omitted
1916
2001
 
1917
- module_eval(<<'.,.,', 'grammar.ra', 553)
1918
- def _reduce_158(val, _values, result)
2002
+ module_eval(<<'.,.,', 'grammar.ra', 556)
2003
+ def _reduce_163(val, _values, result)
1919
2004
  result = ast AST::Default, :value => val[0][:value], :line => val[0][:line]
1920
2005
 
1921
2006
  result
1922
2007
  end
1923
2008
  .,.,
1924
2009
 
1925
- # reduce 159 omitted
2010
+ # reduce 164 omitted
1926
2011
 
1927
- module_eval(<<'.,.,', 'grammar.ra', 558)
1928
- def _reduce_160(val, _values, result)
2012
+ module_eval(<<'.,.,', 'grammar.ra', 561)
2013
+ def _reduce_165(val, _values, result)
1929
2014
  result = [val[0][:value]]
1930
2015
  result
1931
2016
  end
1932
2017
  .,.,
1933
2018
 
1934
- # reduce 161 omitted
2019
+ # reduce 166 omitted
1935
2020
 
1936
- module_eval(<<'.,.,', 'grammar.ra', 560)
1937
- def _reduce_162(val, _values, result)
2021
+ module_eval(<<'.,.,', 'grammar.ra', 563)
2022
+ def _reduce_167(val, _values, result)
1938
2023
  result = val[0] += val[2]
1939
2024
  result
1940
2025
  end
1941
2026
  .,.,
1942
2027
 
1943
- module_eval(<<'.,.,', 'grammar.ra', 563)
1944
- def _reduce_163(val, _values, result)
2028
+ module_eval(<<'.,.,', 'grammar.ra', 566)
2029
+ def _reduce_168(val, _values, result)
1945
2030
  val[1].each do |file|
1946
2031
  import(file)
1947
2032
  end
@@ -1952,8 +2037,8 @@ module_eval(<<'.,.,', 'grammar.ra', 563)
1952
2037
  end
1953
2038
  .,.,
1954
2039
 
1955
- module_eval(<<'.,.,', 'grammar.ra', 573)
1956
- def _reduce_164(val, _values, result)
2040
+ module_eval(<<'.,.,', 'grammar.ra', 576)
2041
+ def _reduce_169(val, _values, result)
1957
2042
  @lexer.commentpop
1958
2043
  result = Puppet::Parser::AST::Definition.new(classname(val[1]),
1959
2044
  ast_context(true).merge(:arguments => val[2], :code => val[4],
@@ -1966,8 +2051,8 @@ module_eval(<<'.,.,', 'grammar.ra', 573)
1966
2051
  end
1967
2052
  .,.,
1968
2053
 
1969
- module_eval(<<'.,.,', 'grammar.ra', 581)
1970
- def _reduce_165(val, _values, result)
2054
+ module_eval(<<'.,.,', 'grammar.ra', 584)
2055
+ def _reduce_170(val, _values, result)
1971
2056
  @lexer.commentpop
1972
2057
  result = Puppet::Parser::AST::Definition.new(classname(val[1]),
1973
2058
  ast_context(true).merge(:arguments => val[2], :line => val[0][:line]))
@@ -1977,8 +2062,8 @@ module_eval(<<'.,.,', 'grammar.ra', 581)
1977
2062
  end
1978
2063
  .,.,
1979
2064
 
1980
- module_eval(<<'.,.,', 'grammar.ra', 589)
1981
- def _reduce_166(val, _values, result)
2065
+ module_eval(<<'.,.,', 'grammar.ra', 592)
2066
+ def _reduce_171(val, _values, result)
1982
2067
  @lexer.commentpop
1983
2068
  # Our class gets defined in the parent namespace, not our own.
1984
2069
  @lexer.namepop
@@ -1990,8 +2075,8 @@ module_eval(<<'.,.,', 'grammar.ra', 589)
1990
2075
  end
1991
2076
  .,.,
1992
2077
 
1993
- module_eval(<<'.,.,', 'grammar.ra', 596)
1994
- def _reduce_167(val, _values, result)
2078
+ module_eval(<<'.,.,', 'grammar.ra', 599)
2079
+ def _reduce_172(val, _values, result)
1995
2080
  @lexer.commentpop
1996
2081
  # Our class gets defined in the parent namespace, not our own.
1997
2082
  @lexer.namepop
@@ -2003,8 +2088,8 @@ module_eval(<<'.,.,', 'grammar.ra', 596)
2003
2088
  end
2004
2089
  .,.,
2005
2090
 
2006
- module_eval(<<'.,.,', 'grammar.ra', 605)
2007
- def _reduce_168(val, _values, result)
2091
+ module_eval(<<'.,.,', 'grammar.ra', 608)
2092
+ def _reduce_173(val, _values, result)
2008
2093
  @lexer.commentpop
2009
2094
  result = Puppet::Parser::AST::Node.new(val[1],
2010
2095
  ast_context(true).merge(:parent => val[2], :code => val[4],
@@ -2014,8 +2099,8 @@ module_eval(<<'.,.,', 'grammar.ra', 605)
2014
2099
  end
2015
2100
  .,.,
2016
2101
 
2017
- module_eval(<<'.,.,', 'grammar.ra', 610)
2018
- def _reduce_169(val, _values, result)
2102
+ module_eval(<<'.,.,', 'grammar.ra', 613)
2103
+ def _reduce_174(val, _values, result)
2019
2104
  @lexer.commentpop
2020
2105
  result = Puppet::Parser::AST::Node.new(val[1], ast_context(true).merge(:parent => val[2], :line => val[0][:line]))
2021
2106
 
@@ -2023,37 +2108,30 @@ module_eval(<<'.,.,', 'grammar.ra', 610)
2023
2108
  end
2024
2109
  .,.,
2025
2110
 
2026
- module_eval(<<'.,.,', 'grammar.ra', 614)
2027
- def _reduce_170(val, _values, result)
2028
- result = val[0][:value]
2029
- result
2030
- end
2031
- .,.,
2032
-
2033
- module_eval(<<'.,.,', 'grammar.ra', 616)
2034
- def _reduce_171(val, _values, result)
2111
+ module_eval(<<'.,.,', 'grammar.ra', 617)
2112
+ def _reduce_175(val, _values, result)
2035
2113
  result = val[0][:value]
2036
2114
  result
2037
2115
  end
2038
2116
  .,.,
2039
2117
 
2040
- module_eval(<<'.,.,', 'grammar.ra', 617)
2041
- def _reduce_172(val, _values, result)
2118
+ module_eval(<<'.,.,', 'grammar.ra', 618)
2119
+ def _reduce_176(val, _values, result)
2042
2120
  result = "class"
2043
2121
  result
2044
2122
  end
2045
2123
  .,.,
2046
2124
 
2047
- module_eval(<<'.,.,', 'grammar.ra', 622)
2048
- def _reduce_173(val, _values, result)
2125
+ module_eval(<<'.,.,', 'grammar.ra', 623)
2126
+ def _reduce_177(val, _values, result)
2049
2127
  result = [result]
2050
2128
 
2051
2129
  result
2052
2130
  end
2053
2131
  .,.,
2054
2132
 
2055
- module_eval(<<'.,.,', 'grammar.ra', 625)
2056
- def _reduce_174(val, _values, result)
2133
+ module_eval(<<'.,.,', 'grammar.ra', 626)
2134
+ def _reduce_178(val, _values, result)
2057
2135
  result = val[0]
2058
2136
  result << val[2]
2059
2137
 
@@ -2061,65 +2139,65 @@ module_eval(<<'.,.,', 'grammar.ra', 625)
2061
2139
  end
2062
2140
  .,.,
2063
2141
 
2064
- module_eval(<<'.,.,', 'grammar.ra', 630)
2065
- def _reduce_175(val, _values, result)
2142
+ module_eval(<<'.,.,', 'grammar.ra', 631)
2143
+ def _reduce_179(val, _values, result)
2066
2144
  result = ast AST::HostName, :value => val[0]
2067
2145
 
2068
2146
  result
2069
2147
  end
2070
2148
  .,.,
2071
2149
 
2072
- module_eval(<<'.,.,', 'grammar.ra', 633)
2073
- def _reduce_176(val, _values, result)
2150
+ module_eval(<<'.,.,', 'grammar.ra', 634)
2151
+ def _reduce_180(val, _values, result)
2074
2152
  result = val[0][:value]
2075
2153
  result
2076
2154
  end
2077
2155
  .,.,
2078
2156
 
2079
- module_eval(<<'.,.,', 'grammar.ra', 634)
2080
- def _reduce_177(val, _values, result)
2157
+ module_eval(<<'.,.,', 'grammar.ra', 635)
2158
+ def _reduce_181(val, _values, result)
2081
2159
  result = val[0][:value]
2082
2160
  result
2083
2161
  end
2084
2162
  .,.,
2085
2163
 
2086
- module_eval(<<'.,.,', 'grammar.ra', 635)
2087
- def _reduce_178(val, _values, result)
2164
+ module_eval(<<'.,.,', 'grammar.ra', 636)
2165
+ def _reduce_182(val, _values, result)
2088
2166
  result = val[0][:value]
2089
2167
  result
2090
2168
  end
2091
2169
  .,.,
2092
2170
 
2093
- # reduce 179 omitted
2171
+ # reduce 183 omitted
2094
2172
 
2095
- module_eval(<<'.,.,', 'grammar.ra', 639)
2096
- def _reduce_180(val, _values, result)
2173
+ module_eval(<<'.,.,', 'grammar.ra', 640)
2174
+ def _reduce_184(val, _values, result)
2097
2175
  result = nil
2098
2176
 
2099
2177
  result
2100
2178
  end
2101
2179
  .,.,
2102
2180
 
2103
- module_eval(<<'.,.,', 'grammar.ra', 643)
2104
- def _reduce_181(val, _values, result)
2181
+ module_eval(<<'.,.,', 'grammar.ra', 644)
2182
+ def _reduce_185(val, _values, result)
2105
2183
  result = ast AST::ASTArray, :children => []
2106
2184
 
2107
2185
  result
2108
2186
  end
2109
2187
  .,.,
2110
2188
 
2111
- # reduce 182 omitted
2189
+ # reduce 186 omitted
2112
2190
 
2113
- module_eval(<<'.,.,', 'grammar.ra', 648)
2114
- def _reduce_183(val, _values, result)
2191
+ module_eval(<<'.,.,', 'grammar.ra', 649)
2192
+ def _reduce_187(val, _values, result)
2115
2193
  result = nil
2116
2194
 
2117
2195
  result
2118
2196
  end
2119
2197
  .,.,
2120
2198
 
2121
- module_eval(<<'.,.,', 'grammar.ra', 651)
2122
- def _reduce_184(val, _values, result)
2199
+ module_eval(<<'.,.,', 'grammar.ra', 652)
2200
+ def _reduce_188(val, _values, result)
2123
2201
  result = val[1]
2124
2202
  result = [result] unless result[0].is_a?(Array)
2125
2203
 
@@ -2127,10 +2205,10 @@ module_eval(<<'.,.,', 'grammar.ra', 651)
2127
2205
  end
2128
2206
  .,.,
2129
2207
 
2130
- # reduce 185 omitted
2208
+ # reduce 189 omitted
2131
2209
 
2132
- module_eval(<<'.,.,', 'grammar.ra', 657)
2133
- def _reduce_186(val, _values, result)
2210
+ module_eval(<<'.,.,', 'grammar.ra', 658)
2211
+ def _reduce_190(val, _values, result)
2134
2212
  result = val[0]
2135
2213
  result = [result] unless result[0].is_a?(Array)
2136
2214
  result << val[2]
@@ -2139,8 +2217,8 @@ module_eval(<<'.,.,', 'grammar.ra', 657)
2139
2217
  end
2140
2218
  .,.,
2141
2219
 
2142
- module_eval(<<'.,.,', 'grammar.ra', 663)
2143
- def _reduce_187(val, _values, result)
2220
+ module_eval(<<'.,.,', 'grammar.ra', 664)
2221
+ def _reduce_191(val, _values, result)
2144
2222
  Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
2145
2223
  result = [val[0][:value], val[2]]
2146
2224
 
@@ -2148,8 +2226,8 @@ module_eval(<<'.,.,', 'grammar.ra', 663)
2148
2226
  end
2149
2227
  .,.,
2150
2228
 
2151
- module_eval(<<'.,.,', 'grammar.ra', 667)
2152
- def _reduce_188(val, _values, result)
2229
+ module_eval(<<'.,.,', 'grammar.ra', 668)
2230
+ def _reduce_192(val, _values, result)
2153
2231
  Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
2154
2232
  result = [val[0][:value]]
2155
2233
 
@@ -2157,98 +2235,98 @@ module_eval(<<'.,.,', 'grammar.ra', 667)
2157
2235
  end
2158
2236
  .,.,
2159
2237
 
2160
- module_eval(<<'.,.,', 'grammar.ra', 670)
2161
- def _reduce_189(val, _values, result)
2238
+ module_eval(<<'.,.,', 'grammar.ra', 671)
2239
+ def _reduce_193(val, _values, result)
2162
2240
  result = [val[0][:value], val[2]]
2163
2241
 
2164
2242
  result
2165
2243
  end
2166
2244
  .,.,
2167
2245
 
2168
- module_eval(<<'.,.,', 'grammar.ra', 672)
2169
- def _reduce_190(val, _values, result)
2246
+ module_eval(<<'.,.,', 'grammar.ra', 673)
2247
+ def _reduce_194(val, _values, result)
2170
2248
  result = [val[0][:value]]
2171
2249
 
2172
2250
  result
2173
2251
  end
2174
2252
  .,.,
2175
2253
 
2176
- # reduce 191 omitted
2254
+ # reduce 195 omitted
2177
2255
 
2178
- module_eval(<<'.,.,', 'grammar.ra', 677)
2179
- def _reduce_192(val, _values, result)
2256
+ module_eval(<<'.,.,', 'grammar.ra', 678)
2257
+ def _reduce_196(val, _values, result)
2180
2258
  result = val[1]
2181
2259
 
2182
2260
  result
2183
2261
  end
2184
2262
  .,.,
2185
2263
 
2186
- # reduce 193 omitted
2264
+ # reduce 197 omitted
2187
2265
 
2188
- module_eval(<<'.,.,', 'grammar.ra', 682)
2189
- def _reduce_194(val, _values, result)
2266
+ module_eval(<<'.,.,', 'grammar.ra', 683)
2267
+ def _reduce_198(val, _values, result)
2190
2268
  result = val[1]
2191
2269
 
2192
2270
  result
2193
2271
  end
2194
2272
  .,.,
2195
2273
 
2196
- # reduce 195 omitted
2274
+ # reduce 199 omitted
2197
2275
 
2198
- # reduce 196 omitted
2276
+ # reduce 200 omitted
2199
2277
 
2200
- module_eval(<<'.,.,', 'grammar.ra', 688)
2201
- def _reduce_197(val, _values, result)
2278
+ module_eval(<<'.,.,', 'grammar.ra', 689)
2279
+ def _reduce_201(val, _values, result)
2202
2280
  result = ast AST::Variable, :value => val[0][:value], :line => val[0][:line]
2203
2281
 
2204
2282
  result
2205
2283
  end
2206
2284
  .,.,
2207
2285
 
2208
- module_eval(<<'.,.,', 'grammar.ra', 691)
2209
- def _reduce_198(val, _values, result)
2286
+ module_eval(<<'.,.,', 'grammar.ra', 692)
2287
+ def _reduce_202(val, _values, result)
2210
2288
  result = val[1]
2211
2289
  result
2212
2290
  end
2213
2291
  .,.,
2214
2292
 
2215
- module_eval(<<'.,.,', 'grammar.ra', 692)
2216
- def _reduce_199(val, _values, result)
2293
+ module_eval(<<'.,.,', 'grammar.ra', 693)
2294
+ def _reduce_203(val, _values, result)
2217
2295
  result = val[1]
2218
2296
  result
2219
2297
  end
2220
2298
  .,.,
2221
2299
 
2222
- module_eval(<<'.,.,', 'grammar.ra', 693)
2223
- def _reduce_200(val, _values, result)
2300
+ module_eval(<<'.,.,', 'grammar.ra', 694)
2301
+ def _reduce_204(val, _values, result)
2224
2302
  result = ast AST::ASTArray
2225
2303
  result
2226
2304
  end
2227
2305
  .,.,
2228
2306
 
2229
- # reduce 201 omitted
2307
+ # reduce 205 omitted
2230
2308
 
2231
- # reduce 202 omitted
2309
+ # reduce 206 omitted
2232
2310
 
2233
- # reduce 203 omitted
2311
+ # reduce 207 omitted
2234
2312
 
2235
- module_eval(<<'.,.,', 'grammar.ra', 699)
2236
- def _reduce_204(val, _values, result)
2313
+ module_eval(<<'.,.,', 'grammar.ra', 700)
2314
+ def _reduce_208(val, _values, result)
2237
2315
  result = nil
2238
2316
  result
2239
2317
  end
2240
2318
  .,.,
2241
2319
 
2242
- module_eval(<<'.,.,', 'grammar.ra', 702)
2243
- def _reduce_205(val, _values, result)
2320
+ module_eval(<<'.,.,', 'grammar.ra', 703)
2321
+ def _reduce_209(val, _values, result)
2244
2322
  result = ast AST::Regex, :value => val[0][:value]
2245
2323
 
2246
2324
  result
2247
2325
  end
2248
2326
  .,.,
2249
2327
 
2250
- module_eval(<<'.,.,', 'grammar.ra', 706)
2251
- def _reduce_206(val, _values, result)
2328
+ module_eval(<<'.,.,', 'grammar.ra', 707)
2329
+ def _reduce_210(val, _values, result)
2252
2330
  if val[1].instance_of?(AST::ASTHash)
2253
2331
  result = val[1]
2254
2332
  else
@@ -2259,8 +2337,8 @@ module_eval(<<'.,.,', 'grammar.ra', 706)
2259
2337
  end
2260
2338
  .,.,
2261
2339
 
2262
- module_eval(<<'.,.,', 'grammar.ra', 713)
2263
- def _reduce_207(val, _values, result)
2340
+ module_eval(<<'.,.,', 'grammar.ra', 714)
2341
+ def _reduce_211(val, _values, result)
2264
2342
  if val[1].instance_of?(AST::ASTHash)
2265
2343
  result = val[1]
2266
2344
  else
@@ -2271,18 +2349,18 @@ module_eval(<<'.,.,', 'grammar.ra', 713)
2271
2349
  end
2272
2350
  .,.,
2273
2351
 
2274
- module_eval(<<'.,.,', 'grammar.ra', 719)
2275
- def _reduce_208(val, _values, result)
2352
+ module_eval(<<'.,.,', 'grammar.ra', 720)
2353
+ def _reduce_212(val, _values, result)
2276
2354
  result = ast AST::ASTHash
2277
2355
 
2278
2356
  result
2279
2357
  end
2280
2358
  .,.,
2281
2359
 
2282
- # reduce 209 omitted
2360
+ # reduce 213 omitted
2283
2361
 
2284
- module_eval(<<'.,.,', 'grammar.ra', 724)
2285
- def _reduce_210(val, _values, result)
2362
+ module_eval(<<'.,.,', 'grammar.ra', 725)
2363
+ def _reduce_214(val, _values, result)
2286
2364
  if val[0].instance_of?(AST::ASTHash)
2287
2365
  result = val[0].merge(val[2])
2288
2366
  else
@@ -2294,40 +2372,40 @@ module_eval(<<'.,.,', 'grammar.ra', 724)
2294
2372
  end
2295
2373
  .,.,
2296
2374
 
2297
- module_eval(<<'.,.,', 'grammar.ra', 733)
2298
- def _reduce_211(val, _values, result)
2375
+ module_eval(<<'.,.,', 'grammar.ra', 734)
2376
+ def _reduce_215(val, _values, result)
2299
2377
  result = ast AST::ASTHash, { :value => { val[0] => val[2] } }
2300
2378
 
2301
2379
  result
2302
2380
  end
2303
2381
  .,.,
2304
2382
 
2305
- module_eval(<<'.,.,', 'grammar.ra', 736)
2306
- def _reduce_212(val, _values, result)
2383
+ module_eval(<<'.,.,', 'grammar.ra', 737)
2384
+ def _reduce_216(val, _values, result)
2307
2385
  result = val[0][:value]
2308
2386
  result
2309
2387
  end
2310
2388
  .,.,
2311
2389
 
2312
- module_eval(<<'.,.,', 'grammar.ra', 737)
2313
- def _reduce_213(val, _values, result)
2390
+ module_eval(<<'.,.,', 'grammar.ra', 738)
2391
+ def _reduce_217(val, _values, result)
2314
2392
  result = val[0]
2315
2393
  result
2316
2394
  end
2317
2395
  .,.,
2318
2396
 
2319
- module_eval(<<'.,.,', 'grammar.ra', 740)
2320
- def _reduce_214(val, _values, result)
2397
+ module_eval(<<'.,.,', 'grammar.ra', 741)
2398
+ def _reduce_218(val, _values, result)
2321
2399
  result = ast AST::HashOrArrayAccess, :variable => val[0][:value], :key => val[2]
2322
2400
 
2323
2401
  result
2324
2402
  end
2325
2403
  .,.,
2326
2404
 
2327
- # reduce 215 omitted
2405
+ # reduce 219 omitted
2328
2406
 
2329
- module_eval(<<'.,.,', 'grammar.ra', 745)
2330
- def _reduce_216(val, _values, result)
2407
+ module_eval(<<'.,.,', 'grammar.ra', 746)
2408
+ def _reduce_220(val, _values, result)
2331
2409
  result = ast AST::HashOrArrayAccess, :variable => val[0], :key => val[2]
2332
2410
 
2333
2411
  result