puppet 0.24.9 → 0.25.0

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 (910) hide show
  1. data/CHANGELOG +18680 -1241
  2. data/CHANGELOG.old +1705 -0
  3. data/LICENSE +2 -2
  4. data/README +1 -1
  5. data/README.queueing +126 -0
  6. data/README.rst +4 -4
  7. data/Rakefile +62 -216
  8. data/bin/filebucket +6 -117
  9. data/bin/pi +50 -0
  10. data/bin/puppet +7 -188
  11. data/bin/puppetdoc +7 -198
  12. data/bin/ralsh +4 -191
  13. data/conf/auth.conf +94 -0
  14. data/conf/gentoo/init.d/puppetmaster +30 -30
  15. data/conf/osx/PackageInfo.plist +30 -30
  16. data/conf/osx/createpackage.sh +23 -18
  17. data/conf/osx/preflight +8 -0
  18. data/conf/puppet-queue.conf +10 -0
  19. data/conf/redhat/client.init +52 -41
  20. data/conf/redhat/logrotate +1 -0
  21. data/conf/redhat/puppet.spec +74 -36
  22. data/conf/redhat/rundir-perms.patch +28 -0
  23. data/conf/redhat/server.init +48 -43
  24. data/conf/redhat/server.sysconfig +4 -4
  25. data/conf/solaris/smf/puppetd.xml +53 -53
  26. data/conf/solaris/smf/puppetmasterd.xml +53 -53
  27. data/conf/solaris/smf/svc-puppetd +4 -4
  28. data/conf/solaris/smf/svc-puppetmasterd +3 -3
  29. data/conf/suse/client.init +4 -4
  30. data/conf/suse/puppet.spec +14 -14
  31. data/conf/suse/server.init +17 -17
  32. data/examples/etc/init.d/sleeper +8 -8
  33. data/examples/mac_dscl.pp +2 -2
  34. data/examples/mac_dscl_revert.pp +1 -1
  35. data/examples/mcx_dock_default.pp +108 -108
  36. data/examples/mcx_dock_full.pp +108 -108
  37. data/examples/mcx_nogroup.pp +108 -108
  38. data/examples/modules/sample-module/lib/puppet/parser/functions/hostname_to_dn.rb +5 -5
  39. data/examples/modules/sample-module/manifests/init.pp +2 -2
  40. data/examples/relationships +1 -1
  41. data/ext/autotest/config +6 -6
  42. data/ext/bin/sleeper +12 -12
  43. data/ext/dbfix.sql +21 -21
  44. data/ext/emacs/puppet-mode.el +42 -41
  45. data/ext/extlookup.rb +183 -0
  46. data/ext/ldap/puppet.schema +2 -1
  47. data/ext/logcheck/puppet +1 -1
  48. data/ext/module_puppet +7 -7
  49. data/ext/nagios/check_puppet.rb +83 -83
  50. data/ext/nagios/naggen +302 -0
  51. data/ext/puppet-test +61 -18
  52. data/ext/puppetlisten/puppetlisten.rb +76 -0
  53. data/ext/puppetlisten/puppetrun.rb +39 -0
  54. data/ext/puppetstoredconfigclean.rb +29 -29
  55. data/ext/rack/README +73 -0
  56. data/ext/rack/files/apache2.conf +38 -0
  57. data/ext/rack/files/config.ru +18 -0
  58. data/ext/rack/manifest.pp +59 -0
  59. data/ext/vim/syntax/puppet.vim +54 -35
  60. data/install.rb +37 -26
  61. data/lib/puppet.rb +15 -227
  62. data/lib/puppet/agent.rb +134 -0
  63. data/lib/puppet/agent/locker.rb +42 -0
  64. data/lib/puppet/agent/runner.rb +65 -0
  65. data/lib/puppet/application.rb +313 -0
  66. data/lib/puppet/application/filebucket.rb +87 -0
  67. data/lib/puppet/application/pi.rb +214 -0
  68. data/lib/puppet/application/puppet.rb +177 -0
  69. data/lib/puppet/application/puppetca.rb +71 -0
  70. data/lib/puppet/application/puppetd.rb +256 -0
  71. data/lib/puppet/application/puppetdoc.rb +222 -0
  72. data/lib/puppet/application/puppetmasterd.rb +168 -0
  73. data/lib/puppet/application/puppetqd.rb +96 -0
  74. data/lib/puppet/application/puppetrun.rb +219 -0
  75. data/lib/puppet/application/ralsh.rb +168 -0
  76. data/lib/puppet/configurer.rb +177 -0
  77. data/lib/puppet/configurer/downloader.rb +79 -0
  78. data/lib/puppet/configurer/fact_handler.rb +68 -0
  79. data/lib/puppet/configurer/plugin_handler.rb +26 -0
  80. data/lib/puppet/daemon.rb +78 -28
  81. data/lib/puppet/defaults.rb +239 -166
  82. data/lib/puppet/dsl.rb +7 -7
  83. data/lib/puppet/external/dot.rb +271 -271
  84. data/lib/puppet/external/event-loop/better-definers.rb +298 -298
  85. data/lib/puppet/external/event-loop/event-loop.rb +274 -274
  86. data/lib/puppet/external/event-loop/signal-system.rb +163 -163
  87. data/lib/puppet/external/lock.rb +1 -1
  88. data/lib/puppet/external/nagios.rb +20 -20
  89. data/lib/puppet/external/nagios/base.rb +3 -3
  90. data/lib/puppet/external/nagios/grammar.ry +185 -0
  91. data/lib/puppet/external/nagios/makefile +9 -0
  92. data/lib/puppet/external/nagios/parser.rb +1 -1
  93. data/lib/puppet/feature/json.rb +2 -0
  94. data/lib/puppet/feature/rack.rb +24 -0
  95. data/lib/puppet/feature/rails.rb +23 -33
  96. data/lib/puppet/feature/rubygems.rb +6 -0
  97. data/lib/puppet/feature/stomp.rb +6 -0
  98. data/lib/puppet/file_serving/{file_base.rb → base.rb} +10 -9
  99. data/lib/puppet/file_serving/configuration.rb +61 -61
  100. data/lib/puppet/file_serving/configuration/parser.rb +24 -29
  101. data/lib/puppet/file_serving/content.rb +26 -11
  102. data/lib/puppet/file_serving/fileset.rb +54 -19
  103. data/lib/puppet/file_serving/indirection_hooks.rb +12 -24
  104. data/lib/puppet/file_serving/metadata.rb +8 -8
  105. data/lib/puppet/file_serving/mount.rb +9 -151
  106. data/lib/puppet/file_serving/mount/file.rb +126 -0
  107. data/lib/puppet/file_serving/mount/modules.rb +25 -0
  108. data/lib/puppet/file_serving/mount/plugins.rb +27 -0
  109. data/lib/puppet/file_serving/terminus_helper.rb +9 -4
  110. data/lib/puppet/indirector.rb +6 -4
  111. data/lib/puppet/indirector/active_record.rb +28 -0
  112. data/lib/puppet/indirector/catalog/active_record.rb +36 -0
  113. data/lib/puppet/indirector/catalog/compiler.rb +50 -24
  114. data/lib/puppet/indirector/catalog/queue.rb +5 -0
  115. data/lib/puppet/indirector/catalog/rest.rb +6 -0
  116. data/lib/puppet/indirector/catalog/yaml.rb +2 -4
  117. data/lib/puppet/indirector/certificate/ca.rb +9 -0
  118. data/lib/puppet/indirector/certificate/file.rb +9 -0
  119. data/lib/puppet/indirector/certificate/rest.rb +9 -0
  120. data/lib/puppet/indirector/certificate_request/ca.rb +14 -0
  121. data/lib/puppet/indirector/certificate_request/file.rb +8 -0
  122. data/lib/puppet/indirector/certificate_request/rest.rb +9 -0
  123. data/lib/puppet/indirector/certificate_revocation_list/ca.rb +8 -0
  124. data/lib/puppet/indirector/certificate_revocation_list/file.rb +8 -0
  125. data/lib/puppet/indirector/certificate_revocation_list/rest.rb +9 -0
  126. data/lib/puppet/indirector/direct_file_server.rb +4 -8
  127. data/lib/puppet/indirector/exec.rb +2 -6
  128. data/lib/puppet/indirector/facts/active_record.rb +36 -0
  129. data/lib/puppet/indirector/facts/facter.rb +30 -22
  130. data/lib/puppet/indirector/facts/rest.rb +6 -0
  131. data/lib/puppet/indirector/file.rb +1 -0
  132. data/lib/puppet/indirector/file_content/rest.rb +0 -1
  133. data/lib/puppet/indirector/file_metadata/file.rb +2 -2
  134. data/lib/puppet/indirector/file_metadata/rest.rb +0 -1
  135. data/lib/puppet/indirector/file_server.rb +31 -18
  136. data/lib/puppet/indirector/indirection.rb +46 -33
  137. data/lib/puppet/indirector/key/ca.rb +12 -0
  138. data/lib/puppet/indirector/key/file.rb +42 -0
  139. data/lib/puppet/indirector/node/active_record.rb +13 -0
  140. data/lib/puppet/indirector/node/ldap.rb +1 -1
  141. data/lib/puppet/indirector/queue.rb +83 -0
  142. data/lib/puppet/indirector/report/processor.rb +1 -1
  143. data/lib/puppet/indirector/report/rest.rb +7 -0
  144. data/lib/puppet/indirector/request.rb +158 -15
  145. data/lib/puppet/indirector/rest.rb +74 -36
  146. data/lib/puppet/indirector/runner/rest.rb +7 -0
  147. data/lib/puppet/indirector/ssl_file.rb +174 -0
  148. data/lib/puppet/indirector/terminus.rb +4 -4
  149. data/lib/puppet/indirector/yaml.rb +1 -1
  150. data/lib/puppet/metatype/manager.rb +3 -3
  151. data/lib/puppet/module.rb +99 -124
  152. data/lib/puppet/network/authconfig.rb +57 -42
  153. data/lib/puppet/network/authstore.rb +58 -10
  154. data/lib/puppet/network/client.rb +0 -2
  155. data/lib/puppet/network/client/ca.rb +1 -1
  156. data/lib/puppet/network/client/dipper.rb +7 -2
  157. data/lib/puppet/network/format.rb +123 -0
  158. data/lib/puppet/network/format_handler.rb +156 -0
  159. data/lib/puppet/network/formats.rb +123 -0
  160. data/lib/puppet/network/handler/filebucket.rb +1 -1
  161. data/lib/puppet/network/handler/fileserver.rb +43 -35
  162. data/lib/puppet/network/handler/master.rb +4 -4
  163. data/lib/puppet/network/handler/report.rb +1 -1
  164. data/lib/puppet/network/handler/resource.rb +16 -20
  165. data/lib/puppet/network/handler/runner.rb +9 -42
  166. data/lib/puppet/network/http.rb +4 -4
  167. data/lib/puppet/network/http/api.rb +4 -0
  168. data/lib/puppet/network/http/api/v1.rb +65 -0
  169. data/lib/puppet/network/http/handler.rb +163 -56
  170. data/lib/puppet/network/http/mongrel.rb +19 -15
  171. data/lib/puppet/network/http/mongrel/rest.rb +35 -17
  172. data/lib/puppet/network/http/rack.rb +62 -0
  173. data/lib/puppet/network/http/rack/httphandler.rb +34 -0
  174. data/lib/puppet/network/http/rack/rest.rb +79 -0
  175. data/lib/puppet/network/http/rack/xmlrpc.rb +65 -0
  176. data/lib/puppet/network/http/webrick.rb +89 -16
  177. data/lib/puppet/network/http/webrick/rest.rb +24 -11
  178. data/lib/puppet/network/http_pool.rb +28 -29
  179. data/lib/puppet/network/http_server/mongrel.rb +8 -10
  180. data/lib/puppet/network/http_server/webrick.rb +1 -3
  181. data/lib/puppet/network/rest_authconfig.rb +89 -0
  182. data/lib/puppet/network/rest_authorization.rb +25 -0
  183. data/lib/puppet/network/rights.rb +230 -27
  184. data/lib/puppet/network/server.rb +133 -31
  185. data/lib/puppet/network/xmlrpc/client.rb +5 -5
  186. data/lib/puppet/network/xmlrpc/webrick_servlet.rb +6 -6
  187. data/lib/puppet/node.rb +28 -21
  188. data/lib/puppet/node/environment.rb +48 -0
  189. data/lib/puppet/node/facts.rb +21 -0
  190. data/lib/puppet/parameter.rb +291 -219
  191. data/lib/puppet/parser/ast.rb +1 -0
  192. data/lib/puppet/parser/ast/astarray.rb +5 -1
  193. data/lib/puppet/parser/ast/boolean_operator.rb +3 -3
  194. data/lib/puppet/parser/ast/caseopt.rb +10 -0
  195. data/lib/puppet/parser/ast/casestatement.rb +12 -27
  196. data/lib/puppet/parser/ast/collection.rb +31 -0
  197. data/lib/puppet/parser/ast/collexpr.rb +18 -11
  198. data/lib/puppet/parser/ast/comparison_operator.rb +1 -1
  199. data/lib/puppet/parser/ast/definition.rb +6 -2
  200. data/lib/puppet/parser/ast/function.rb +7 -2
  201. data/lib/puppet/parser/ast/ifstatement.rb +11 -6
  202. data/lib/puppet/parser/ast/leaf.rb +106 -3
  203. data/lib/puppet/parser/ast/match_operator.rb +31 -0
  204. data/lib/puppet/parser/ast/node.rb +10 -6
  205. data/lib/puppet/parser/ast/resource_defaults.rb +2 -2
  206. data/lib/puppet/parser/ast/resource_override.rb +1 -1
  207. data/lib/puppet/parser/ast/resource_reference.rb +11 -3
  208. data/lib/puppet/parser/ast/selector.rb +14 -32
  209. data/lib/puppet/parser/ast/vardef.rb +1 -1
  210. data/lib/puppet/parser/collector.rb +67 -15
  211. data/lib/puppet/parser/compiler.rb +21 -53
  212. data/lib/puppet/parser/files.rb +92 -0
  213. data/lib/puppet/parser/functions.rb +3 -3
  214. data/lib/puppet/parser/functions/defined.rb +3 -3
  215. data/lib/puppet/parser/functions/fqdn_rand.rb +3 -3
  216. data/lib/puppet/parser/functions/inline_template.rb +4 -4
  217. data/lib/puppet/parser/functions/regsubst.rb +37 -35
  218. data/lib/puppet/parser/functions/require.rb +34 -0
  219. data/lib/puppet/parser/functions/shellquote.rb +41 -0
  220. data/lib/puppet/parser/functions/split.rb +29 -0
  221. data/lib/puppet/parser/functions/sprintf.rb +6 -6
  222. data/lib/puppet/parser/functions/template.rb +4 -4
  223. data/lib/puppet/parser/functions/versioncmp.rb +22 -1
  224. data/lib/puppet/parser/grammar.ra +812 -0
  225. data/lib/puppet/parser/interpreter.rb +4 -4
  226. data/lib/puppet/parser/lexer.rb +44 -15
  227. data/lib/puppet/parser/loaded_code.rb +115 -0
  228. data/lib/puppet/parser/makefile +8 -0
  229. data/lib/puppet/parser/parser.rb +1080 -928
  230. data/lib/puppet/parser/parser_support.rb +118 -96
  231. data/lib/puppet/parser/resource.rb +56 -126
  232. data/lib/puppet/parser/resource/param.rb +2 -76
  233. data/lib/puppet/parser/resource/reference.rb +15 -8
  234. data/lib/puppet/parser/scope.rb +68 -35
  235. data/lib/puppet/parser/templatewrapper.rb +8 -8
  236. data/lib/puppet/parser/yaml_trimmer.rb +11 -0
  237. data/lib/puppet/property.rb +69 -124
  238. data/lib/puppet/property/list.rb +3 -3
  239. data/lib/puppet/provider.rb +5 -5
  240. data/lib/puppet/provider/augeas/augeas.rb +119 -118
  241. data/lib/puppet/provider/computer/computer.rb +3 -3
  242. data/lib/puppet/provider/confine/variable.rb +1 -1
  243. data/lib/puppet/provider/cron/crontab.rb +8 -7
  244. data/lib/puppet/provider/group/directoryservice.rb +2 -2
  245. data/lib/puppet/provider/group/groupadd.rb +1 -1
  246. data/lib/puppet/provider/group/ldap.rb +3 -3
  247. data/lib/puppet/provider/group/pw.rb +1 -1
  248. data/lib/puppet/provider/host/parsed.rb +3 -3
  249. data/lib/puppet/provider/ldap.rb +1 -3
  250. data/lib/puppet/provider/macauthorization/macauthorization.rb +62 -55
  251. data/lib/puppet/provider/mailalias/aliases.rb +9 -1
  252. data/lib/puppet/provider/maillist/mailman.rb +8 -4
  253. data/lib/puppet/provider/mcx/mcxcontent.rb +11 -11
  254. data/lib/puppet/provider/mount/parsed.rb +2 -2
  255. data/lib/puppet/provider/nameservice.rb +6 -6
  256. data/lib/puppet/provider/nameservice/directoryservice.rb +83 -87
  257. data/lib/puppet/provider/package/appdmg.rb +10 -9
  258. data/lib/puppet/provider/package/apple.rb +1 -3
  259. data/lib/puppet/provider/package/apt.rb +5 -5
  260. data/lib/puppet/provider/package/aptitude.rb +1 -1
  261. data/lib/puppet/provider/package/aptrpm.rb +1 -1
  262. data/lib/puppet/provider/package/darwinport.rb +1 -1
  263. data/lib/puppet/provider/package/dpkg.rb +2 -2
  264. data/lib/puppet/provider/package/fink.rb +6 -6
  265. data/lib/puppet/provider/package/freebsd.rb +1 -1
  266. data/lib/puppet/provider/package/gem.rb +2 -2
  267. data/lib/puppet/provider/package/hpux.rb +5 -5
  268. data/lib/puppet/provider/package/pkgdmg.rb +30 -22
  269. data/lib/puppet/provider/package/portage.rb +1 -1
  270. data/lib/puppet/provider/package/ports.rb +1 -1
  271. data/lib/puppet/provider/package/rpm.rb +5 -5
  272. data/lib/puppet/provider/package/rug.rb +1 -1
  273. data/lib/puppet/provider/package/sun.rb +7 -7
  274. data/lib/puppet/provider/package/up2date.rb +1 -1
  275. data/lib/puppet/provider/package/yum.rb +2 -2
  276. data/lib/puppet/provider/package/yumhelper.py +2 -2
  277. data/lib/puppet/provider/port/parsed.rb +1 -1
  278. data/lib/puppet/provider/selmodule/semodule.rb +3 -3
  279. data/lib/puppet/provider/service/base.rb +21 -12
  280. data/lib/puppet/provider/service/daemontools.rb +86 -49
  281. data/lib/puppet/provider/service/debian.rb +20 -12
  282. data/lib/puppet/provider/service/freebsd.rb +5 -5
  283. data/lib/puppet/provider/service/gentoo.rb +2 -2
  284. data/lib/puppet/provider/service/init.rb +21 -33
  285. data/lib/puppet/provider/service/launchd.rb +120 -48
  286. data/lib/puppet/provider/service/redhat.rb +12 -21
  287. data/lib/puppet/provider/service/runit.rb +19 -9
  288. data/lib/puppet/provider/service/smf.rb +49 -34
  289. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +34 -0
  290. data/lib/puppet/provider/sshkey/parsed.rb +2 -2
  291. data/lib/puppet/provider/user/directoryservice.rb +12 -29
  292. data/lib/puppet/provider/user/hpux.rb +3 -3
  293. data/lib/puppet/provider/user/ldap.rb +2 -2
  294. data/lib/puppet/provider/zfs/solaris.rb +1 -1
  295. data/lib/puppet/provider/zone/solaris.rb +4 -4
  296. data/lib/puppet/provider/zpool/solaris.rb +3 -3
  297. data/lib/puppet/rails.rb +9 -9
  298. data/lib/puppet/rails/benchmark.rb +69 -0
  299. data/lib/puppet/rails/database/001_add_created_at_to_all_tables.rb +5 -5
  300. data/lib/puppet/rails/database/002_remove_duplicated_index_on_all_tables.rb +2 -2
  301. data/lib/puppet/rails/database/003_add_environment_to_host.rb +1 -1
  302. data/lib/puppet/rails/database/schema.rb +8 -8
  303. data/lib/puppet/rails/fact_value.rb +1 -1
  304. data/lib/puppet/rails/host.rb +211 -93
  305. data/lib/puppet/rails/param_name.rb +5 -1
  306. data/lib/puppet/rails/param_value.rb +29 -2
  307. data/lib/puppet/rails/puppet_tag.rb +5 -0
  308. data/lib/puppet/rails/resource.rb +120 -20
  309. data/lib/puppet/rails/resource_tag.rb +1 -1
  310. data/lib/puppet/rails/source_file.rb +1 -1
  311. data/lib/puppet/reference/configuration.rb +14 -14
  312. data/lib/puppet/reference/function.rb +1 -1
  313. data/lib/puppet/reference/metaparameter.rb +48 -0
  314. data/lib/puppet/reference/providers.rb +6 -6
  315. data/lib/puppet/reference/type.rb +1 -37
  316. data/lib/puppet/relationship.rb +57 -30
  317. data/lib/puppet/reports/rrdgraph.rb +4 -4
  318. data/lib/puppet/reports/store.rb +3 -3
  319. data/lib/puppet/reports/tagmail.rb +15 -15
  320. data/lib/puppet/resource.rb +265 -0
  321. data/lib/puppet/{node → resource}/catalog.rb +188 -112
  322. data/lib/puppet/{resource_reference.rb → resource/reference.rb} +46 -24
  323. data/lib/puppet/simple_graph.rb +165 -27
  324. data/lib/puppet/ssl.rb +7 -0
  325. data/lib/puppet/ssl/base.rb +62 -0
  326. data/lib/puppet/ssl/certificate.rb +34 -0
  327. data/lib/puppet/ssl/certificate_authority.rb +298 -0
  328. data/lib/puppet/ssl/certificate_authority/interface.rb +118 -0
  329. data/lib/puppet/ssl/certificate_factory.rb +145 -0
  330. data/lib/puppet/ssl/certificate_request.rb +51 -0
  331. data/lib/puppet/ssl/certificate_revocation_list.rb +86 -0
  332. data/lib/puppet/ssl/host.rb +271 -0
  333. data/lib/puppet/ssl/inventory.rb +52 -0
  334. data/lib/puppet/ssl/key.rb +56 -0
  335. data/lib/puppet/sslcertificates.rb +6 -6
  336. data/lib/puppet/sslcertificates/ca.rb +15 -15
  337. data/lib/puppet/sslcertificates/certificate.rb +4 -4
  338. data/lib/puppet/sslcertificates/inventory.rb +3 -3
  339. data/lib/puppet/transaction.rb +113 -139
  340. data/lib/puppet/transaction/change.rb +6 -6
  341. data/lib/puppet/transaction/event.rb +1 -1
  342. data/lib/puppet/transaction/report.rb +7 -1
  343. data/lib/puppet/transportable.rb +28 -28
  344. data/lib/puppet/type.rb +263 -688
  345. data/lib/puppet/type/augeas.rb +3 -2
  346. data/lib/puppet/type/component.rb +28 -95
  347. data/lib/puppet/type/computer.rb +10 -10
  348. data/lib/puppet/type/cron.rb +19 -14
  349. data/lib/puppet/type/exec.rb +21 -20
  350. data/lib/puppet/type/file.rb +306 -633
  351. data/lib/puppet/type/file/checksum.rb +10 -11
  352. data/lib/puppet/type/file/content.rb +83 -22
  353. data/lib/puppet/type/file/ensure.rb +15 -9
  354. data/lib/puppet/type/file/group.rb +7 -1
  355. data/lib/puppet/type/file/mode.rb +1 -1
  356. data/lib/puppet/type/file/owner.rb +9 -3
  357. data/lib/puppet/type/file/selcontext.rb +4 -4
  358. data/lib/puppet/type/file/source.rb +78 -179
  359. data/lib/puppet/type/file/target.rb +3 -3
  360. data/lib/puppet/type/file/type.rb +2 -2
  361. data/lib/puppet/type/filebucket.rb +33 -54
  362. data/lib/puppet/type/group.rb +8 -8
  363. data/lib/puppet/type/host.rb +7 -7
  364. data/lib/puppet/type/k5login.rb +2 -2
  365. data/lib/puppet/type/macauthorization.rb +77 -52
  366. data/lib/puppet/type/mailalias.rb +2 -2
  367. data/lib/puppet/type/maillist.rb +2 -2
  368. data/lib/puppet/type/mcx.rb +3 -3
  369. data/lib/puppet/type/mount.rb +16 -11
  370. data/lib/puppet/type/notify.rb +4 -4
  371. data/lib/puppet/type/package.rb +6 -28
  372. data/lib/puppet/type/port.rb +1 -1
  373. data/lib/puppet/type/resources.rb +19 -19
  374. data/lib/puppet/type/schedule.rb +18 -20
  375. data/lib/puppet/type/selmodule.rb +1 -1
  376. data/lib/puppet/type/service.rb +11 -7
  377. data/lib/puppet/type/ssh_authorized_key.rb +26 -9
  378. data/lib/puppet/type/sshkey.rb +2 -2
  379. data/lib/puppet/type/tidy.rb +285 -289
  380. data/lib/puppet/type/user.rb +9 -7
  381. data/lib/puppet/type/yumrepo.rb +17 -16
  382. data/lib/puppet/type/zone.rb +8 -7
  383. data/lib/puppet/util.rb +11 -36
  384. data/lib/puppet/util/autoload.rb +31 -19
  385. data/lib/puppet/util/autoload/file_cache.rb +115 -0
  386. data/lib/puppet/util/backups.rb +86 -0
  387. data/lib/puppet/util/cacher.rb +135 -0
  388. data/lib/puppet/util/checksums.rb +11 -1
  389. data/lib/puppet/util/classgen.rb +1 -1
  390. data/lib/puppet/util/config_store.rb +2 -2
  391. data/lib/puppet/util/constant_inflector.rb +1 -1
  392. data/lib/puppet/util/diff.rb +2 -2
  393. data/lib/puppet/util/docs.rb +9 -3
  394. data/lib/puppet/util/execution.rb +1 -1
  395. data/lib/puppet/util/feature.rb +27 -20
  396. data/lib/puppet/util/fileparsing.rb +3 -3
  397. data/lib/puppet/util/filetype.rb +8 -6
  398. data/lib/puppet/util/graph.rb +5 -5
  399. data/lib/puppet/util/inifile.rb +5 -5
  400. data/lib/puppet/util/json.rb +13 -0
  401. data/lib/puppet/util/ldap/connection.rb +2 -2
  402. data/lib/puppet/util/log.rb +48 -31
  403. data/lib/puppet/util/metric.rb +4 -4
  404. data/lib/puppet/util/monkey_patches.rb +43 -0
  405. data/lib/puppet/util/nagios_maker.rb +1 -1
  406. data/lib/puppet/util/package.rb +4 -4
  407. data/lib/puppet/util/pidlock.rb +59 -59
  408. data/lib/puppet/util/posix.rb +13 -52
  409. data/lib/puppet/util/provider_features.rb +3 -3
  410. data/lib/puppet/util/queue.rb +96 -0
  411. data/lib/puppet/util/queue/stomp.rb +47 -0
  412. data/lib/puppet/util/rails/cache_accumulator.rb +65 -0
  413. data/lib/puppet/util/rails/collection_merger.rb +0 -39
  414. data/lib/puppet/util/rails/reference_serializer.rb +17 -3
  415. data/lib/puppet/util/rdoc.rb +1 -0
  416. data/lib/puppet/util/rdoc/code_objects.rb +5 -1
  417. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +5 -5
  418. data/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +13 -13
  419. data/lib/puppet/util/rdoc/parser.rb +28 -32
  420. data/lib/puppet/util/reference.rb +29 -8
  421. data/lib/puppet/util/resource_template.rb +1 -1
  422. data/lib/puppet/util/selinux.rb +12 -6
  423. data/lib/puppet/util/settings.rb +203 -578
  424. data/lib/puppet/util/settings/boolean_setting.rb +33 -0
  425. data/lib/puppet/util/settings/file_setting.rb +119 -0
  426. data/lib/puppet/util/settings/setting.rb +110 -0
  427. data/lib/puppet/util/subclass_loader.rb +1 -1
  428. data/lib/puppet/util/suidmanager.rb +2 -2
  429. data/lib/puppet/util/tagging.rb +1 -1
  430. data/lib/puppet/util/warnings.rb +17 -9
  431. data/man/man8/filebucket.8 +2 -2
  432. data/man/man8/pi.8 +2 -2
  433. data/man/man8/puppet.8 +3 -4
  434. data/man/man8/puppet.conf.8 +63 -63
  435. data/man/man8/puppetca.8 +2 -2
  436. data/man/man8/puppetd.8 +2 -2
  437. data/man/man8/puppetdoc.8 +2 -2
  438. data/man/man8/puppetmasterd.8 +2 -2
  439. data/man/man8/puppetrun.8 +2 -2
  440. data/man/man8/ralsh.8 +3 -3
  441. data/sbin/puppetca +102 -0
  442. data/sbin/puppetd +159 -0
  443. data/sbin/puppetmasterd +66 -0
  444. data/sbin/puppetqd +53 -0
  445. data/sbin/puppetrun +130 -0
  446. data/spec/Rakefile +2 -2
  447. data/spec/integration/application/puppet.rb +33 -0
  448. data/spec/integration/bin/puppetmasterd.rb +110 -0
  449. data/spec/integration/configurer.rb +18 -0
  450. data/spec/integration/defaults.rb +158 -7
  451. data/spec/integration/file_serving/content.rb +2 -0
  452. data/spec/integration/file_serving/fileset.rb +14 -0
  453. data/spec/integration/file_serving/metadata.rb +2 -0
  454. data/spec/integration/file_serving/terminus_helper.rb +22 -0
  455. data/spec/integration/indirector/catalog/compiler.rb +67 -0
  456. data/spec/integration/indirector/catalog/queue.rb +61 -0
  457. data/spec/integration/indirector/certificate/rest.rb +69 -0
  458. data/spec/integration/indirector/certificate_request/rest.rb +89 -0
  459. data/spec/integration/indirector/certificate_revocation_list/rest.rb +77 -0
  460. data/spec/integration/indirector/direct_file_server.rb +16 -23
  461. data/spec/integration/indirector/file_content/file_server.rb +75 -0
  462. data/spec/integration/indirector/report/rest.rb +95 -0
  463. data/spec/integration/indirector/rest.rb +207 -147
  464. data/spec/integration/network/client.rb +19 -0
  465. data/spec/integration/network/formats.rb +110 -0
  466. data/spec/integration/network/handler.rb +25 -0
  467. data/spec/integration/network/server/mongrel.rb +26 -8
  468. data/spec/integration/network/server/webrick.rb +49 -11
  469. data/spec/integration/node/environment.rb +58 -0
  470. data/spec/integration/node/facts.rb +4 -2
  471. data/spec/integration/parser/compiler.rb +29 -0
  472. data/spec/integration/parser/functions/require.rb +67 -0
  473. data/spec/integration/provider/mailalias/aliases.rb +25 -0
  474. data/spec/integration/{node → resource}/catalog.rb +17 -10
  475. data/spec/integration/ssl/certificate_authority.rb +135 -0
  476. data/spec/integration/ssl/certificate_request.rb +59 -0
  477. data/spec/integration/ssl/certificate_revocation_list.rb +42 -0
  478. data/spec/integration/ssl/host.rb +90 -0
  479. data/spec/integration/transaction.rb +66 -0
  480. data/spec/integration/transaction/report.rb +2 -5
  481. data/spec/integration/type.rb +22 -0
  482. data/spec/integration/type/file.rb +458 -0
  483. data/spec/integration/type/package.rb +1 -1
  484. data/spec/integration/type/tidy.rb +27 -0
  485. data/spec/integration/util/autoload.rb +114 -0
  486. data/spec/integration/util/feature.rb +54 -0
  487. data/spec/integration/util/file_locking.rb +2 -1
  488. data/spec/integration/util/settings.rb +27 -0
  489. data/spec/lib/puppet_spec/files.rb +9 -0
  490. data/spec/monkey_patches/add_confine_and_runnable_to_rspec_dsl.rb +1 -0
  491. data/spec/monkey_patches/alias_should_to_must.rb +1 -0
  492. data/spec/shared_behaviours/file_server_terminus.rb +14 -11
  493. data/spec/shared_behaviours/file_serving.rb +13 -17
  494. data/spec/spec_helper.rb +22 -5
  495. data/spec/unit/agent.rb +259 -0
  496. data/spec/unit/agent/locker.rb +100 -0
  497. data/spec/unit/agent/runner.rb +118 -0
  498. data/spec/unit/application.rb +420 -0
  499. data/spec/unit/application/filebucket.rb +220 -0
  500. data/spec/unit/application/pi.rb +84 -0
  501. data/spec/unit/application/puppet.rb +404 -0
  502. data/spec/unit/application/puppetca.rb +142 -0
  503. data/spec/unit/application/puppetd.rb +502 -0
  504. data/spec/unit/application/puppetdoc.rb +345 -0
  505. data/spec/unit/application/puppetmasterd.rb +456 -0
  506. data/spec/unit/application/puppetqd.rb +186 -0
  507. data/spec/unit/application/puppetrun.rb +279 -0
  508. data/spec/unit/application/ralsh.rb +237 -0
  509. data/spec/unit/configurer.rb +232 -0
  510. data/spec/unit/configurer/downloader.rb +188 -0
  511. data/spec/unit/configurer/fact_handler.rb +150 -0
  512. data/spec/unit/configurer/plugin_handler.rb +112 -0
  513. data/spec/unit/daemon.rb +287 -0
  514. data/spec/unit/file_serving/{file_base.rb → base.rb} +39 -31
  515. data/spec/unit/file_serving/configuration.rb +104 -93
  516. data/spec/unit/file_serving/configuration/parser.rb +64 -18
  517. data/spec/unit/file_serving/content.rb +65 -26
  518. data/spec/unit/file_serving/fileset.rb +116 -14
  519. data/spec/unit/file_serving/indirection_hooks.rb +34 -95
  520. data/spec/unit/file_serving/metadata.rb +27 -40
  521. data/spec/unit/file_serving/mount.rb +7 -118
  522. data/spec/unit/file_serving/mount/file.rb +188 -0
  523. data/spec/unit/file_serving/mount/modules.rb +63 -0
  524. data/spec/unit/file_serving/mount/plugins.rb +61 -0
  525. data/spec/unit/file_serving/terminus_helper.rb +39 -27
  526. data/spec/unit/indirector.rb +6 -1
  527. data/spec/unit/indirector/active_record.rb +76 -0
  528. data/spec/unit/indirector/catalog/active_record.rb +122 -0
  529. data/spec/unit/indirector/catalog/compiler.rb +222 -118
  530. data/spec/unit/indirector/catalog/queue.rb +20 -0
  531. data/spec/unit/indirector/catalog/rest.rb +11 -0
  532. data/spec/unit/indirector/catalog/yaml.rb +6 -6
  533. data/spec/unit/indirector/certificate/ca.rb +28 -0
  534. data/spec/unit/indirector/certificate/file.rb +28 -0
  535. data/spec/unit/indirector/certificate/rest.rb +23 -0
  536. data/spec/unit/indirector/certificate_request/ca.rb +19 -0
  537. data/spec/unit/indirector/certificate_request/file.rb +19 -0
  538. data/spec/unit/indirector/certificate_request/rest.rb +23 -0
  539. data/spec/unit/indirector/certificate_revocation_list/ca.rb +21 -0
  540. data/spec/unit/indirector/certificate_revocation_list/file.rb +20 -0
  541. data/spec/unit/indirector/certificate_revocation_list/rest.rb +23 -0
  542. data/spec/unit/indirector/direct_file_server.rb +3 -8
  543. data/spec/unit/indirector/exec.rb +6 -1
  544. data/spec/unit/indirector/facts/active_record.rb +104 -0
  545. data/spec/unit/indirector/facts/facter.rb +53 -12
  546. data/spec/unit/indirector/facts/rest.rb +11 -0
  547. data/spec/unit/indirector/file.rb +8 -1
  548. data/spec/unit/indirector/file_metadata/file.rb +5 -5
  549. data/spec/unit/indirector/file_server.rb +181 -98
  550. data/spec/unit/indirector/indirection.rb +102 -38
  551. data/spec/unit/indirector/key/ca.rb +28 -0
  552. data/spec/unit/indirector/key/file.rb +104 -0
  553. data/spec/unit/indirector/node/active_record.rb +34 -0
  554. data/spec/unit/indirector/node/ldap.rb +1 -1
  555. data/spec/unit/indirector/node/rest.rb +2 -2
  556. data/spec/unit/indirector/queue.rb +123 -0
  557. data/spec/unit/indirector/report/rest.rb +28 -0
  558. data/spec/unit/indirector/request.rb +221 -0
  559. data/spec/unit/indirector/rest.rb +343 -334
  560. data/spec/unit/indirector/runner/rest.rb +11 -0
  561. data/spec/unit/indirector/ssl_file.rb +280 -0
  562. data/spec/unit/module.rb +180 -180
  563. data/spec/unit/network/authconfig.rb +292 -0
  564. data/spec/unit/network/authstore.rb +94 -0
  565. data/spec/unit/network/client.rb +2 -2
  566. data/spec/unit/network/client/dipper.rb +16 -0
  567. data/spec/unit/network/format.rb +191 -0
  568. data/spec/unit/network/format_handler.rb +306 -0
  569. data/spec/unit/network/formats.rb +249 -0
  570. data/spec/unit/network/handler/fileserver.rb +2 -5
  571. data/spec/unit/network/http.rb +3 -3
  572. data/spec/unit/network/http/api/v1.rb +122 -0
  573. data/spec/unit/network/http/handler.rb +448 -0
  574. data/spec/unit/network/http/mongrel.rb +46 -32
  575. data/spec/unit/network/http/mongrel/rest.rb +174 -319
  576. data/spec/unit/network/http/rack.rb +102 -0
  577. data/spec/unit/network/http/rack/rest.rb +199 -0
  578. data/spec/unit/network/http/rack/xmlrpc.rb +157 -0
  579. data/spec/unit/network/http/webrick.rb +249 -37
  580. data/spec/unit/network/http/webrick/rest.rb +113 -279
  581. data/spec/unit/network/http_pool.rb +86 -110
  582. data/spec/unit/network/rest_authconfig.rb +146 -0
  583. data/spec/unit/network/rest_authorization.rb +43 -0
  584. data/spec/unit/network/rights.rb +519 -0
  585. data/spec/unit/network/server.rb +475 -257
  586. data/spec/unit/node.rb +43 -10
  587. data/spec/unit/node/environment.rb +143 -9
  588. data/spec/unit/node/facts.rb +77 -24
  589. data/spec/unit/other/selinux.rb +85 -0
  590. data/spec/unit/other/transbucket.rb +29 -13
  591. data/spec/unit/other/transobject.rb +35 -15
  592. data/spec/unit/parameter.rb +378 -5
  593. data/spec/unit/parser/ast.rb +1 -1
  594. data/spec/unit/parser/ast/arithmetic_operator.rb +17 -17
  595. data/spec/unit/parser/ast/astarray.rb +16 -10
  596. data/spec/unit/parser/ast/boolean_operator.rb +2 -2
  597. data/spec/unit/parser/ast/casestatement.rb +143 -0
  598. data/spec/unit/parser/ast/collection.rb +63 -0
  599. data/spec/unit/parser/ast/collexpr.rb +31 -8
  600. data/spec/unit/parser/ast/comparison_operator.rb +9 -9
  601. data/spec/unit/parser/ast/definition.rb +18 -0
  602. data/spec/unit/parser/ast/function.rb +6 -0
  603. data/spec/unit/parser/ast/ifstatement.rb +75 -0
  604. data/spec/unit/parser/ast/leaf.rb +261 -0
  605. data/spec/unit/parser/ast/match_operator.rb +50 -0
  606. data/spec/unit/parser/ast/minus.rb +1 -1
  607. data/spec/unit/parser/ast/node.rb +20 -0
  608. data/spec/unit/parser/ast/not.rb +1 -1
  609. data/spec/unit/parser/ast/resource_override.rb +5 -5
  610. data/spec/unit/parser/ast/resource_reference.rb +11 -5
  611. data/spec/unit/parser/ast/selector.rb +156 -0
  612. data/spec/unit/parser/ast/vardef.rb +11 -11
  613. data/spec/unit/parser/collector.rb +167 -48
  614. data/spec/unit/parser/compiler.rb +128 -104
  615. data/spec/unit/parser/files.rb +190 -0
  616. data/spec/unit/parser/functions/inline_template.rb +0 -0
  617. data/spec/unit/parser/functions/regsubst.rb +42 -42
  618. data/spec/unit/parser/functions/require.rb +36 -0
  619. data/spec/unit/parser/functions/shellquote.rb +92 -0
  620. data/spec/unit/parser/functions/split.rb +51 -0
  621. data/spec/unit/parser/functions/sprintf.rb +11 -11
  622. data/spec/unit/parser/functions/template.rb +0 -0
  623. data/spec/unit/parser/functions/versioncmp.rb +2 -2
  624. data/spec/unit/parser/interpreter.rb +16 -7
  625. data/spec/unit/parser/lexer.rb +72 -12
  626. data/spec/unit/parser/loaded_code.rb +198 -0
  627. data/spec/unit/parser/parser.rb +215 -28
  628. data/spec/unit/parser/resource.rb +131 -22
  629. data/spec/unit/parser/scope.rb +207 -12
  630. data/spec/unit/parser/templatewrapper.rb +8 -3
  631. data/spec/unit/property.rb +270 -16
  632. data/spec/unit/property/list.rb +12 -6
  633. data/spec/unit/provider.rb +31 -0
  634. data/spec/unit/provider/augeas/augeas.rb +61 -33
  635. data/spec/unit/provider/macauthorization.rb +29 -29
  636. data/spec/unit/provider/mcx/mcxcontent.rb +4 -4
  637. data/spec/unit/provider/mount/parsed.rb +5 -8
  638. data/spec/unit/provider/naginator.rb +0 -0
  639. data/spec/unit/provider/package/apt.rb +6 -6
  640. data/spec/unit/provider/package/pkgdmg.rb +73 -0
  641. data/spec/unit/provider/selboolean.rb +1 -1
  642. data/spec/unit/provider/selmodule.rb +2 -2
  643. data/spec/unit/provider/service/daemontools.rb +40 -15
  644. data/spec/unit/provider/service/debian.rb +89 -0
  645. data/spec/unit/provider/service/init.rb +106 -0
  646. data/spec/unit/provider/service/launchd.rb +71 -13
  647. data/spec/unit/provider/service/redhat.rb +94 -0
  648. data/spec/unit/provider/service/runit.rb +14 -2
  649. data/spec/unit/provider/ssh_authorized_key/parsed.rb +66 -2
  650. data/spec/unit/provider/user/ldap.rb +1 -1
  651. data/spec/unit/provider/user/user_role_add.rb +1 -1
  652. data/spec/unit/provider/zfs/solaris.rb +18 -6
  653. data/spec/unit/provider/zone/solaris.rb +1 -1
  654. data/spec/unit/rails.rb +16 -22
  655. data/spec/unit/rails/host.rb +163 -0
  656. data/spec/unit/rails/param_value.rb +49 -0
  657. data/spec/unit/rails/resource.rb +87 -0
  658. data/spec/unit/relationship.rb +141 -29
  659. data/spec/unit/resource.rb +504 -0
  660. data/spec/unit/resource/catalog.rb +1061 -0
  661. data/spec/unit/resource/reference.rb +111 -0
  662. data/spec/unit/simple_graph.rb +448 -191
  663. data/spec/unit/ssl/certificate.rb +124 -0
  664. data/spec/unit/ssl/certificate_authority.rb +741 -0
  665. data/spec/unit/ssl/certificate_authority/interface.rb +269 -0
  666. data/spec/unit/ssl/certificate_factory.rb +107 -0
  667. data/spec/unit/ssl/certificate_request.rb +193 -0
  668. data/spec/unit/ssl/certificate_revocation_list.rb +180 -0
  669. data/spec/unit/ssl/host.rb +704 -0
  670. data/spec/unit/ssl/inventory.rb +180 -0
  671. data/spec/unit/ssl/key.rb +198 -0
  672. data/spec/unit/transaction.rb +65 -2
  673. data/spec/unit/transaction/change.rb +1 -1
  674. data/spec/unit/transaction/report.rb +1 -1
  675. data/spec/unit/type.rb +361 -8
  676. data/spec/unit/type/augeas.rb +30 -37
  677. data/spec/unit/type/component.rb +63 -0
  678. data/spec/unit/type/computer.rb +17 -21
  679. data/spec/unit/type/exec.rb +27 -2
  680. data/spec/unit/type/file.rb +704 -83
  681. data/spec/unit/type/file/content.rb +253 -15
  682. data/spec/unit/type/file/ensure.rb +65 -2
  683. data/spec/unit/type/file/group.rb +5 -0
  684. data/spec/unit/type/file/owner.rb +5 -0
  685. data/spec/unit/type/file/selinux.rb +12 -16
  686. data/spec/unit/type/file/source.rb +264 -0
  687. data/spec/unit/type/filebucket.rb +74 -0
  688. data/spec/unit/type/group.rb +1 -5
  689. data/spec/unit/type/macauthorization.rb +59 -26
  690. data/spec/unit/type/mcx.rb +8 -16
  691. data/spec/unit/type/mount.rb +8 -16
  692. data/spec/unit/type/noop_metaparam.rb +0 -2
  693. data/spec/unit/type/package.rb +13 -23
  694. data/spec/unit/type/resources.rb +4 -7
  695. data/spec/unit/type/schedule.rb +1 -7
  696. data/spec/unit/type/selboolean.rb +4 -6
  697. data/spec/unit/type/service.rb +23 -33
  698. data/spec/unit/type/ssh_authorized_key.rb +25 -14
  699. data/spec/unit/type/tidy.rb +329 -21
  700. data/spec/unit/type/user.rb +18 -10
  701. data/spec/unit/type/zfs.rb +6 -6
  702. data/spec/unit/util/autoload.rb +94 -3
  703. data/spec/unit/util/autoload/file_cache.rb +183 -0
  704. data/spec/unit/util/backups.rb +159 -0
  705. data/spec/unit/util/cache_accumulator.rb +69 -0
  706. data/spec/unit/util/cacher.rb +185 -0
  707. data/spec/unit/util/checksums.rb +9 -1
  708. data/spec/unit/util/feature.rb +72 -0
  709. data/spec/unit/util/filetype.rb +1 -11
  710. data/spec/unit/util/json.rb +21 -0
  711. data/spec/unit/util/log.rb +45 -0
  712. data/spec/unit/util/package.rb +2 -2
  713. data/spec/unit/util/queue.rb +88 -0
  714. data/spec/unit/util/queue/stomp.rb +140 -0
  715. data/spec/unit/util/reference_serializer.rb +52 -0
  716. data/spec/unit/util/selinux.rb +5 -3
  717. data/spec/unit/util/settings.rb +413 -264
  718. data/spec/unit/util/settings/file_setting.rb +223 -0
  719. data/spec/unit/util/storage.rb +11 -11
  720. data/spec/unit/util/warnings.rb +21 -17
  721. data/test/Rakefile +6 -5
  722. data/test/certmgr/ca.rb +5 -5
  723. data/test/certmgr/certmgr.rb +4 -4
  724. data/test/data/providers/cron/crontab.allthree +2 -2
  725. data/test/data/providers/cron/crontab.envNcomment +1 -1
  726. data/test/data/providers/cron/crontab.envNname +1 -1
  727. data/test/data/providers/cron/crontab.multirecords +1 -1
  728. data/test/data/providers/cron/crontab_collections.yaml +14 -14
  729. data/test/data/providers/cron/crontab_multiple_with_env.yaml +6 -6
  730. data/test/data/providers/cron/crontab_sample_records.yaml +102 -102
  731. data/test/data/providers/mailalias/aliases/test1 +28 -0
  732. data/test/data/providers/package/testpackages.yaml +6 -6
  733. data/test/data/reports/1.yaml +17 -17
  734. data/test/data/reports/tagmail_passers.conf +2 -2
  735. data/test/data/snippets/append.pp +5 -5
  736. data/test/data/snippets/casestatement.pp +9 -2
  737. data/test/data/snippets/classincludes.pp +1 -1
  738. data/test/data/snippets/collection_override.pp +8 -0
  739. data/test/data/snippets/fqparents.pp +2 -2
  740. data/test/data/snippets/ifexpression.pp +12 -0
  741. data/test/data/snippets/multilinecomments.pp +5 -1
  742. data/test/data/snippets/selectorvalues.pp +7 -0
  743. data/test/data/types/hosts/1 +1 -1
  744. data/test/data/types/hosts/2 +3 -3
  745. data/test/data/types/hosts/solaris +2 -2
  746. data/test/data/types/mount/freebsd.fstab +7 -7
  747. data/test/data/types/mount/solaris.fstab +10 -10
  748. data/test/data/types/port/1 +472 -472
  749. data/test/data/types/port/darwin +4347 -4347
  750. data/test/language/ast.rb +3 -2
  751. data/test/language/ast/casestatement.rb +12 -12
  752. data/test/language/ast/resource.rb +4 -4
  753. data/test/language/ast/resource_reference.rb +5 -5
  754. data/test/language/ast/selector.rb +11 -11
  755. data/test/language/ast/variable.rb +4 -4
  756. data/test/language/functions.rb +16 -16
  757. data/test/language/parser.rb +89 -111
  758. data/test/language/resource.rb +3 -88
  759. data/test/language/scope.rb +14 -55
  760. data/test/language/snippets.rb +31 -31
  761. data/test/lib/puppettest.rb +12 -12
  762. data/test/lib/puppettest/certificates.rb +2 -2
  763. data/test/lib/puppettest/exetest.rb +0 -1
  764. data/test/lib/puppettest/fakes.rb +1 -1
  765. data/test/lib/puppettest/parsertesting.rb +9 -4
  766. data/test/lib/puppettest/railstesting.rb +3 -3
  767. data/test/lib/puppettest/servertest.rb +1 -1
  768. data/test/lib/puppettest/support/assertions.rb +2 -2
  769. data/test/lib/puppettest/support/collection.rb +1 -1
  770. data/test/lib/puppettest/support/resources.rb +7 -7
  771. data/test/lib/puppettest/support/utils.rb +10 -16
  772. data/test/lib/puppettest/testcase.rb +2 -1
  773. data/test/network/authconfig.rb +1 -1
  774. data/test/network/authorization.rb +1 -1
  775. data/test/network/authstore.rb +57 -14
  776. data/test/network/client/ca.rb +1 -0
  777. data/test/network/client/resource.rb +12 -50
  778. data/test/network/client_request.rb +1 -1
  779. data/test/network/handler/bucket.rb +2 -2
  780. data/test/network/handler/fileserver.rb +17 -21
  781. data/test/network/handler/master.rb +5 -5
  782. data/test/network/handler/report.rb +3 -3
  783. data/test/network/handler/resource.rb +29 -75
  784. data/test/network/handler/runner.rb +8 -58
  785. data/test/network/rights.rb +1 -1
  786. data/test/network/server/mongrel_test.rb +15 -1
  787. data/test/network/server/webrick.rb +0 -36
  788. data/test/network/xmlrpc/webrick_servlet.rb +5 -5
  789. data/test/other/dsl.rb +3 -3
  790. data/test/other/events.rb +15 -15
  791. data/test/other/puppet.rb +2 -32
  792. data/test/other/relationships.rb +21 -148
  793. data/test/other/report.rb +20 -23
  794. data/test/other/transactions.rb +110 -298
  795. data/test/puppet/defaults.rb +1 -1
  796. data/test/puppet/tc_suidmanager.rb +1 -1
  797. data/test/rails/railsparameter.rb +4 -4
  798. data/test/ral/manager/attributes.rb +12 -68
  799. data/test/ral/manager/instances.rb +3 -19
  800. data/test/ral/manager/manager.rb +7 -7
  801. data/test/ral/manager/provider.rb +7 -7
  802. data/test/ral/manager/type.rb +54 -349
  803. data/test/ral/providers/cron/crontab.rb +14 -14
  804. data/test/ral/providers/group.rb +5 -6
  805. data/test/ral/providers/host/parsed.rb +3 -3
  806. data/test/ral/providers/mailalias/aliases.rb +4 -4
  807. data/test/ral/providers/package.rb +3 -3
  808. data/test/ral/providers/package/aptitude.rb +55 -55
  809. data/test/ral/providers/package/aptrpm.rb +7 -7
  810. data/test/ral/providers/parsedfile.rb +10 -14
  811. data/test/ral/providers/port/parsed.rb +6 -6
  812. data/test/ral/providers/provider.rb +10 -10
  813. data/test/ral/providers/service/base.rb +32 -32
  814. data/test/ral/providers/sshkey/parsed.rb +14 -14
  815. data/test/ral/providers/user.rb +16 -17
  816. data/test/ral/providers/user/useradd.rb +19 -22
  817. data/test/ral/type/cron.rb +21 -28
  818. data/test/ral/type/exec.rb +57 -60
  819. data/test/ral/type/file.rb +88 -862
  820. data/test/ral/type/file/target.rb +21 -70
  821. data/test/ral/type/fileignoresource.rb +37 -44
  822. data/test/ral/type/filesources.rb +43 -473
  823. data/test/ral/type/group.rb +6 -7
  824. data/test/ral/type/host.rb +14 -30
  825. data/test/ral/type/mailalias.rb +3 -3
  826. data/test/ral/type/port.rb +5 -5
  827. data/test/ral/type/resources.rb +37 -37
  828. data/test/ral/type/service.rb +3 -3
  829. data/test/ral/type/sshkey.rb +34 -39
  830. data/test/ral/type/user.rb +15 -14
  831. data/test/ral/type/yumrepo.rb +18 -17
  832. data/test/ral/type/zone.rb +4 -6
  833. data/test/test +9 -9
  834. data/test/util/fileparsing.rb +10 -10
  835. data/test/util/inifile.rb +6 -6
  836. data/test/util/instance_loader.rb +1 -1
  837. data/test/util/log.rb +2 -2
  838. data/test/util/metrics.rb +1 -6
  839. data/test/util/package.rb +1 -1
  840. data/test/util/pidlock.rb +116 -116
  841. data/test/util/settings.rb +40 -429
  842. data/test/util/storage.rb +5 -5
  843. data/test/util/subclass_loader.rb +0 -7
  844. data/test/util/utiltest.rb +10 -29
  845. metadata +1369 -941
  846. data/bin/puppetca +0 -363
  847. data/bin/puppetd +0 -439
  848. data/bin/puppetmasterd +0 -289
  849. data/bin/puppetrun +0 -369
  850. data/conf/redhat/lsb-config.patch +0 -51
  851. data/conf/redhat/no-chuser-0.15.1.patch +0 -38
  852. data/conf/redhat/no-lockdir.patch +0 -13
  853. data/examples/mac_netinfo.pp +0 -5
  854. data/ext/passenger/README +0 -63
  855. data/ext/passenger/apache2.conf +0 -29
  856. data/ext/passenger/config.ru +0 -40
  857. data/lib/puppet/config_stores/rest.rb +0 -60
  858. data/lib/puppet/executables/client/certhandler.rb +0 -82
  859. data/lib/puppet/indirector/file_content/modules.rb +0 -11
  860. data/lib/puppet/indirector/file_metadata/modules.rb +0 -17
  861. data/lib/puppet/indirector/module_files.rb +0 -82
  862. data/lib/puppet/indirector/ssl_rsa.rb +0 -5
  863. data/lib/puppet/indirector/ssl_rsa/file.rb +0 -33
  864. data/lib/puppet/network/client/master.rb +0 -524
  865. data/lib/puppet/network/http_server/rack.rb +0 -148
  866. data/lib/puppet/pgraph.rb +0 -121
  867. data/lib/puppet/provider/group/netinfo.rb +0 -15
  868. data/lib/puppet/provider/host/netinfo.rb +0 -19
  869. data/lib/puppet/provider/mount/netinfo.rb +0 -37
  870. data/lib/puppet/provider/nameservice/netinfo.rb +0 -224
  871. data/lib/puppet/provider/user/netinfo.rb +0 -111
  872. data/lib/puppet/util/fact_store.rb +0 -59
  873. data/lib/puppet/util/uri_helper.rb +0 -22
  874. data/spec/integration/file_serving/configuration.rb +0 -43
  875. data/spec/integration/indirector/module_files.rb +0 -57
  876. data/spec/unit/executables/client/certhandler.rb +0 -135
  877. data/spec/unit/indirector/file_content/modules.rb +0 -18
  878. data/spec/unit/indirector/file_metadata/modules.rb +0 -42
  879. data/spec/unit/indirector/module_files.rb +0 -259
  880. data/spec/unit/indirector/ssl_rsa/file.rb +0 -121
  881. data/spec/unit/network/client/master.rb +0 -442
  882. data/spec/unit/node/catalog.rb +0 -865
  883. data/spec/unit/other/pgraph.rb +0 -210
  884. data/spec/unit/resource_reference.rb +0 -73
  885. data/spec/unit/util/uri_helper.rb +0 -41
  886. data/test/data/snippets/ifexpression.rb +0 -6
  887. data/test/executables/filebucket.rb +0 -51
  888. data/test/executables/puppetbin.rb +0 -104
  889. data/test/executables/puppetca.rb +0 -115
  890. data/test/executables/puppetd.rb +0 -55
  891. data/test/executables/puppetmasterd.rb +0 -147
  892. data/test/network/client/client.rb +0 -195
  893. data/test/network/client/master.rb +0 -490
  894. data/test/network/daemon.rb +0 -70
  895. data/test/network/handler/handler.rb +0 -63
  896. data/test/other/overrides.rb +0 -107
  897. data/test/puppet/conffiles.rb +0 -107
  898. data/test/rails/ast.rb +0 -73
  899. data/test/rails/configuration.rb +0 -71
  900. data/test/rails/host.rb +0 -154
  901. data/test/rails/railsresource.rb +0 -251
  902. data/test/ral/providers/host/netinfo.rb +0 -56
  903. data/test/ral/providers/mount/netinfo.rb +0 -79
  904. data/test/ral/type/basic.rb +0 -85
  905. data/test/ral/type/filebucket.rb +0 -157
  906. data/test/ral/type/parameter.rb +0 -174
  907. data/test/ral/type/property.rb +0 -388
  908. data/test/ral/type/tidy.rb +0 -291
  909. data/test/util/autoload.rb +0 -145
  910. data/test/util/features.rb +0 -95
@@ -26,17 +26,17 @@ class Puppet::Parser::Interpreter
26
26
  def compile(node)
27
27
  raise Puppet::ParseError, "Could not parse configuration; cannot compile on node %s" % node.name unless env_parser = parser(node.environment)
28
28
  begin
29
- return Puppet::Parser::Compiler.new(node, env_parser).compile
29
+ return Puppet::Parser::Compiler.new(node, env_parser).compile.to_resource
30
30
  rescue => detail
31
- puts detail.backtrace if Puppet[:trace]
32
- raise Puppet::Error, detail.to_s + " on node %s" % node.name
31
+ puts detail.backtrace if Puppet[:trace]
32
+ raise Puppet::Error, detail.to_s + " on node %s" % node.name
33
33
  end
34
34
  end
35
35
 
36
36
  # create our interpreter
37
37
  def initialize
38
38
  # The class won't always be defined during testing.
39
- if Puppet[:storeconfigs]
39
+ if Puppet[:storeconfigs]
40
40
  if Puppet.features.rails?
41
41
  Puppet::Rails.init
42
42
  else
@@ -134,6 +134,8 @@ class Puppet::Parser::Lexer
134
134
  '*' => :TIMES,
135
135
  '<<' => :LSHIFT,
136
136
  '>>' => :RSHIFT,
137
+ '=~' => :MATCH,
138
+ '!~' => :NOMATCH,
137
139
  %r{([a-z][-\w]*)?(::[a-z][-\w]*)+} => :CLASSNAME, # Require '::' in the class name, else we'd compete with NAME
138
140
  %r{((::){0,1}[A-Z][-\w]*)+} => :CLASSREF
139
141
  )
@@ -169,6 +171,16 @@ class Puppet::Parser::Lexer
169
171
  [self,value]
170
172
  end
171
173
 
174
+ TOKENS.add_token :REGEX, %r{/[^/]*/} do |lexer, value|
175
+ # Make sure we haven't matched an escaped /
176
+ while value[-2..-2] == '\\'
177
+ other = lexer.scan_until(%r{/})
178
+ value += other
179
+ end
180
+ regex = value.sub(%r{\A/}, "").sub(%r{/\Z}, '').gsub("\\/", "/")
181
+ [self, Regexp.new(regex)]
182
+ end
183
+
172
184
  TOKENS.add_token :RETURN, "\n", :skip => true, :incr_line => true, :skip_text => true
173
185
 
174
186
  TOKENS.add_token :SQUOTE, "'" do |lexer, value|
@@ -281,11 +293,11 @@ class Puppet::Parser::Lexer
281
293
  # I tried optimizing based on the first char, but it had
282
294
  # a slightly negative affect and was a good bit more complicated.
283
295
  TOKENS.regex_tokens.each do |token|
284
- next unless match_length = @scanner.match?(token.regex)
285
-
296
+ next unless match_length = @scanner.match?(token.regex)
297
+
286
298
  # We've found a longer match
287
299
  if match_length > length
288
- value = @scanner.scan(token.regex)
300
+ value = @scanner.scan(token.regex)
289
301
  length = value.length
290
302
  matched_token = token
291
303
  end
@@ -332,7 +344,7 @@ class Puppet::Parser::Lexer
332
344
  @namestack = []
333
345
  @indefine = false
334
346
  @expected = []
335
- @commentstack = ['']
347
+ @commentstack = [ ['', @line] ]
336
348
  end
337
349
 
338
350
  # Make any necessary changes to the token and/or value.
@@ -348,12 +360,14 @@ class Puppet::Parser::Lexer
348
360
  return unless token
349
361
 
350
362
  if token.accumulate?
351
- @commentstack.last << value + "\n"
363
+ comment = @commentstack.pop
364
+ comment[0] << value + "\n"
365
+ @commentstack.push(comment)
352
366
  end
353
367
 
354
368
  return if token.skip
355
369
 
356
- return token, value
370
+ return token, { :value => value, :line => @line }
357
371
  end
358
372
 
359
373
  # Go up one in the namespace.
@@ -415,9 +429,14 @@ class Puppet::Parser::Lexer
415
429
  @last_return = false
416
430
  end
417
431
 
418
- final_token, value = munge_token(matched_token, value)
432
+ final_token, token_value = munge_token(matched_token, value)
419
433
 
420
- next unless final_token
434
+ unless final_token
435
+ skip()
436
+ next
437
+ end
438
+
439
+ value = token_value[:value]
421
440
 
422
441
  if match = @@pairs[value] and final_token.name != :DQUOTE and final_token.name != :SQUOTE
423
442
  @expected << match
@@ -429,7 +448,7 @@ class Puppet::Parser::Lexer
429
448
  commentpush
430
449
  end
431
450
 
432
- yield [final_token.name, value]
451
+ yield [final_token.name, token_value]
433
452
 
434
453
  if @previous_token
435
454
  namestack(value) if @previous_token.name == :CLASS
@@ -458,6 +477,12 @@ class Puppet::Parser::Lexer
458
477
  @scanner.skip(@skip)
459
478
  end
460
479
 
480
+ # Provide some limited access to the scanner, for those
481
+ # tokens that need it.
482
+ def scan_until(regex)
483
+ @scanner.scan_until(regex)
484
+ end
485
+
461
486
  # we've encountered an opening quote...
462
487
  # slurp in the rest of the string and return it
463
488
  def slurpstring(quote)
@@ -485,16 +510,20 @@ class Puppet::Parser::Lexer
485
510
 
486
511
  # returns the content of the currently accumulated content cache
487
512
  def commentpop
488
- return @commentstack.pop
513
+ return @commentstack.pop[0]
489
514
  end
490
515
 
491
- def getcomment
492
- comment = @commentstack.pop
493
- @commentstack.push('')
494
- return comment
516
+ def getcomment(line = nil)
517
+ comment = @commentstack.last
518
+ if line.nil? or comment[1] <= line
519
+ @commentstack.pop
520
+ @commentstack.push(['', @line])
521
+ return comment[0]
522
+ end
523
+ return ''
495
524
  end
496
525
 
497
526
  def commentpush
498
- @commentstack.push('')
527
+ @commentstack.push(['', @line])
499
528
  end
500
529
  end
@@ -0,0 +1,115 @@
1
+ class Puppet::Parser::LoadedCode
2
+ def initialize
3
+ @hostclasses = {}
4
+ @definitions = {}
5
+ @nodes = {}
6
+
7
+ # So we can keep a list and match the first-defined regex
8
+ @node_list = []
9
+ end
10
+
11
+ def add_hostclass(name, code)
12
+ @hostclasses[munge_name(name)] = code
13
+ end
14
+
15
+ def hostclass(name)
16
+ @hostclasses[munge_name(name)]
17
+ end
18
+
19
+ def add_node(name, code)
20
+ name = check_name(name)
21
+ @node_list << name unless @node_list.include?(name)
22
+ @nodes[name] = code
23
+ end
24
+
25
+ def node(name)
26
+ name = check_name(name)
27
+
28
+ if node = @nodes[name]
29
+ return node
30
+ end
31
+
32
+ @node_list.each do |nodename|
33
+ n = @nodes[nodename]
34
+ return n if nodename.regex? and nodename.match(name)
35
+ end
36
+ nil
37
+ end
38
+
39
+ def nodes?
40
+ @nodes.length > 0
41
+ end
42
+
43
+ def add_definition(name, code)
44
+ @definitions[munge_name(name)] = code
45
+ end
46
+
47
+ def definition(name)
48
+ @definitions[munge_name(name)]
49
+ end
50
+
51
+ def find(namespace, name, type)
52
+ if r = find_fully_qualified(name, type)
53
+ return r
54
+ end
55
+
56
+ ary = namespace.split("::")
57
+
58
+ while ary.length > 0
59
+ tmp_namespace = ary.join("::")
60
+ if r = find_partially_qualified(tmp_namespace, name, type)
61
+ return r
62
+ end
63
+
64
+ # Delete the second to last object, which reduces our namespace by one.
65
+ ary.pop
66
+ end
67
+
68
+ send(type, name)
69
+ end
70
+
71
+ def find_node(name)
72
+ find("", name, :node)
73
+ end
74
+
75
+ def find_hostclass(namespace, name)
76
+ find(namespace, name, :hostclass)
77
+ end
78
+
79
+ def find_definition(namespace, name)
80
+ find(namespace, name, :definition)
81
+ end
82
+
83
+ [:hostclasses, :nodes, :definitions].each do |m|
84
+ define_method(m) do
85
+ instance_variable_get("@#{m}").dup
86
+ end
87
+ end
88
+
89
+ private
90
+
91
+ def find_fully_qualified(name, type)
92
+ return nil unless name =~ /^::/
93
+
94
+ name = name.sub(/^::/, '')
95
+
96
+ send(type, name)
97
+ end
98
+
99
+ def find_partially_qualified(namespace, name, type)
100
+ send(type, [namespace, name].join("::"))
101
+ end
102
+
103
+ def munge_name(name)
104
+ name.to_s.downcase
105
+ end
106
+
107
+ # Check that the given (node) name is an HostName instance
108
+ # We're doing this so that hashing of node in the @nodes hash
109
+ # is consistent (see AST::HostName#hash and AST::HostName#eql?)
110
+ # and that the @nodes hash still keep its O(1) get/put properties.
111
+ def check_name(name)
112
+ name = Puppet::Parser::AST::HostName.new(:value => name) unless name.is_a?(Puppet::Parser::AST::HostName)
113
+ name
114
+ end
115
+ end
@@ -0,0 +1,8 @@
1
+ #parser.rb: grammar.ry
2
+ # ryacc --output parser grammar
3
+
4
+ parser.rb: grammar.ra
5
+ racc -o$@ grammar.ra
6
+
7
+ grammar.output: grammar.ra
8
+ racc -v -o$@ grammar.ra
@@ -29,7 +29,7 @@ module Puppet
29
29
 
30
30
  class Parser < Racc::Parser
31
31
 
32
- module_eval <<'..end grammar.ra modeval..id987bcfd032', 'grammar.ra', 759
32
+ module_eval <<'..end grammar.ra modeval..ide7bdbd4a34', 'grammar.ra', 802
33
33
 
34
34
  # It got too annoying having code in a file that needs to be compiled.
35
35
  require 'puppet/parser/parser_support'
@@ -41,690 +41,729 @@ require 'puppet/parser/parser_support'
41
41
 
42
42
  # $Id$
43
43
 
44
- ..end grammar.ra modeval..id987bcfd032
44
+ ..end grammar.ra modeval..ide7bdbd4a34
45
45
 
46
46
  ##### racc 1.4.5 generates ###
47
47
 
48
48
  racc_reduce_table = [
49
49
  0, 0, :racc_error,
50
- 1, 60, :_reduce_1,
51
- 1, 60, :_reduce_none,
52
- 1, 61, :_reduce_none,
53
- 2, 61, :_reduce_4,
50
+ 1, 63, :_reduce_1,
54
51
  1, 63, :_reduce_none,
55
- 1, 63, :_reduce_none,
56
- 1, 63, :_reduce_none,
57
- 1, 63, :_reduce_none,
58
- 1, 63, :_reduce_none,
59
- 1, 63, :_reduce_none,
60
- 1, 63, :_reduce_none,
61
- 1, 63, :_reduce_none,
62
- 1, 63, :_reduce_none,
63
- 1, 63, :_reduce_none,
64
- 1, 63, :_reduce_none,
65
- 1, 63, :_reduce_none,
66
- 1, 63, :_reduce_none,
67
- 4, 71, :_reduce_18,
68
- 5, 71, :_reduce_19,
69
- 3, 71, :_reduce_20,
70
- 2, 71, :_reduce_21,
71
- 1, 77, :_reduce_none,
72
- 1, 77, :_reduce_none,
73
- 3, 77, :_reduce_24,
74
- 3, 77, :_reduce_25,
75
- 1, 78, :_reduce_none,
76
- 1, 78, :_reduce_none,
77
- 1, 78, :_reduce_none,
78
- 1, 78, :_reduce_none,
79
- 1, 78, :_reduce_none,
80
- 1, 78, :_reduce_none,
81
- 1, 78, :_reduce_none,
82
- 1, 78, :_reduce_33,
83
- 5, 64, :_reduce_34,
84
- 5, 64, :_reduce_35,
85
- 5, 64, :_reduce_36,
86
- 5, 75, :_reduce_37,
87
- 2, 65, :_reduce_38,
88
- 1, 94, :_reduce_39,
89
- 2, 94, :_reduce_40,
90
- 2, 66, :_reduce_41,
91
- 3, 95, :_reduce_42,
92
- 3, 95, :_reduce_43,
93
- 1, 96, :_reduce_none,
94
- 1, 96, :_reduce_none,
95
- 3, 96, :_reduce_46,
96
- 1, 97, :_reduce_none,
97
- 3, 97, :_reduce_48,
98
- 1, 98, :_reduce_none,
99
- 1, 98, :_reduce_none,
100
- 3, 99, :_reduce_51,
101
- 3, 99, :_reduce_52,
102
- 1, 100, :_reduce_none,
52
+ 1, 64, :_reduce_none,
53
+ 2, 64, :_reduce_4,
54
+ 1, 66, :_reduce_none,
55
+ 1, 66, :_reduce_none,
56
+ 1, 66, :_reduce_none,
57
+ 1, 66, :_reduce_none,
58
+ 1, 66, :_reduce_none,
59
+ 1, 66, :_reduce_none,
60
+ 1, 66, :_reduce_none,
61
+ 1, 66, :_reduce_none,
62
+ 1, 66, :_reduce_none,
63
+ 1, 66, :_reduce_none,
64
+ 1, 66, :_reduce_none,
65
+ 1, 66, :_reduce_none,
66
+ 1, 66, :_reduce_none,
67
+ 4, 74, :_reduce_18,
68
+ 5, 74, :_reduce_19,
69
+ 3, 74, :_reduce_20,
70
+ 2, 74, :_reduce_21,
71
+ 1, 80, :_reduce_none,
72
+ 1, 80, :_reduce_none,
73
+ 3, 80, :_reduce_24,
74
+ 3, 80, :_reduce_25,
75
+ 1, 81, :_reduce_none,
76
+ 1, 81, :_reduce_none,
77
+ 1, 81, :_reduce_none,
78
+ 1, 81, :_reduce_none,
79
+ 1, 81, :_reduce_none,
80
+ 1, 81, :_reduce_none,
81
+ 1, 81, :_reduce_none,
82
+ 1, 81, :_reduce_33,
83
+ 5, 67, :_reduce_34,
84
+ 5, 67, :_reduce_35,
85
+ 5, 67, :_reduce_36,
86
+ 5, 78, :_reduce_37,
87
+ 2, 68, :_reduce_38,
88
+ 1, 97, :_reduce_39,
89
+ 2, 97, :_reduce_40,
90
+ 6, 69, :_reduce_41,
91
+ 2, 69, :_reduce_42,
92
+ 3, 98, :_reduce_43,
93
+ 3, 98, :_reduce_44,
94
+ 1, 99, :_reduce_none,
95
+ 1, 99, :_reduce_none,
96
+ 3, 99, :_reduce_47,
103
97
  1, 100, :_reduce_none,
104
- 4, 102, :_reduce_55,
105
- 1, 88, :_reduce_none,
106
- 3, 88, :_reduce_57,
107
- 0, 89, :_reduce_none,
108
- 1, 89, :_reduce_none,
109
- 1, 104, :_reduce_60,
110
- 1, 80, :_reduce_61,
111
- 1, 82, :_reduce_62,
112
- 1, 103, :_reduce_none,
113
- 1, 103, :_reduce_none,
98
+ 3, 100, :_reduce_49,
99
+ 1, 101, :_reduce_50,
100
+ 1, 101, :_reduce_51,
101
+ 3, 102, :_reduce_52,
102
+ 3, 102, :_reduce_53,
114
103
  1, 103, :_reduce_none,
115
104
  1, 103, :_reduce_none,
116
- 1, 103, :_reduce_none,
117
- 1, 103, :_reduce_none,
118
- 3, 67, :_reduce_69,
119
- 3, 76, :_reduce_70,
120
- 0, 90, :_reduce_71,
121
- 1, 90, :_reduce_72,
122
- 3, 90, :_reduce_73,
123
- 3, 107, :_reduce_74,
124
- 3, 109, :_reduce_75,
125
- 1, 110, :_reduce_none,
126
- 1, 110, :_reduce_none,
127
- 0, 93, :_reduce_78,
128
- 1, 93, :_reduce_79,
129
- 3, 93, :_reduce_80,
130
- 1, 111, :_reduce_none,
131
- 3, 111, :_reduce_82,
132
- 1, 101, :_reduce_none,
133
- 1, 101, :_reduce_none,
134
- 1, 101, :_reduce_none,
135
- 1, 101, :_reduce_none,
136
- 1, 101, :_reduce_none,
137
- 1, 101, :_reduce_none,
138
- 1, 108, :_reduce_none,
139
- 1, 108, :_reduce_none,
140
- 1, 108, :_reduce_none,
141
- 1, 108, :_reduce_none,
142
- 1, 108, :_reduce_none,
143
- 1, 108, :_reduce_none,
144
- 1, 108, :_reduce_none,
145
- 1, 108, :_reduce_none,
146
- 1, 108, :_reduce_none,
147
- 1, 108, :_reduce_none,
148
- 4, 84, :_reduce_99,
149
- 3, 84, :_reduce_100,
150
- 1, 86, :_reduce_101,
151
- 1, 86, :_reduce_102,
152
- 1, 83, :_reduce_103,
153
- 4, 79, :_reduce_104,
154
- 4, 79, :_reduce_105,
155
- 6, 69, :_reduce_106,
156
- 5, 69, :_reduce_107,
157
- 0, 113, :_reduce_none,
158
- 4, 113, :_reduce_109,
159
- 3, 113, :_reduce_110,
105
+ 4, 105, :_reduce_56,
106
+ 1, 91, :_reduce_none,
107
+ 3, 91, :_reduce_58,
108
+ 0, 92, :_reduce_none,
109
+ 1, 92, :_reduce_none,
110
+ 1, 107, :_reduce_61,
111
+ 1, 83, :_reduce_62,
112
+ 1, 85, :_reduce_63,
113
+ 1, 106, :_reduce_none,
160
114
  1, 106, :_reduce_none,
161
- 3, 106, :_reduce_112,
162
- 3, 106, :_reduce_113,
163
- 3, 106, :_reduce_114,
164
- 3, 106, :_reduce_115,
165
- 3, 106, :_reduce_116,
166
- 3, 106, :_reduce_117,
167
- 2, 106, :_reduce_118,
168
- 3, 106, :_reduce_119,
169
- 3, 106, :_reduce_120,
170
- 3, 106, :_reduce_121,
171
- 3, 106, :_reduce_122,
172
- 3, 106, :_reduce_123,
173
- 3, 106, :_reduce_124,
174
- 2, 106, :_reduce_125,
175
- 3, 106, :_reduce_126,
176
- 3, 106, :_reduce_127,
177
- 3, 106, :_reduce_128,
178
- 5, 68, :_reduce_129,
115
+ 1, 106, :_reduce_none,
116
+ 1, 106, :_reduce_none,
117
+ 1, 106, :_reduce_none,
118
+ 1, 106, :_reduce_none,
119
+ 3, 70, :_reduce_70,
120
+ 3, 79, :_reduce_71,
121
+ 0, 93, :_reduce_72,
122
+ 1, 93, :_reduce_73,
123
+ 3, 93, :_reduce_74,
124
+ 3, 110, :_reduce_75,
125
+ 3, 112, :_reduce_76,
126
+ 1, 113, :_reduce_none,
127
+ 1, 113, :_reduce_none,
128
+ 0, 96, :_reduce_79,
129
+ 1, 96, :_reduce_80,
130
+ 3, 96, :_reduce_81,
179
131
  1, 114, :_reduce_none,
180
- 2, 114, :_reduce_131,
181
- 5, 115, :_reduce_132,
182
- 4, 115, :_reduce_133,
183
- 1, 116, :_reduce_none,
184
- 3, 116, :_reduce_135,
185
- 3, 85, :_reduce_136,
132
+ 3, 114, :_reduce_83,
133
+ 1, 104, :_reduce_none,
134
+ 1, 104, :_reduce_none,
135
+ 1, 104, :_reduce_none,
136
+ 1, 104, :_reduce_none,
137
+ 1, 104, :_reduce_none,
138
+ 1, 104, :_reduce_none,
139
+ 1, 111, :_reduce_none,
140
+ 1, 111, :_reduce_none,
141
+ 1, 111, :_reduce_none,
142
+ 1, 111, :_reduce_none,
143
+ 1, 111, :_reduce_none,
144
+ 1, 111, :_reduce_none,
145
+ 1, 111, :_reduce_none,
146
+ 1, 111, :_reduce_none,
147
+ 1, 111, :_reduce_none,
148
+ 1, 111, :_reduce_none,
149
+ 4, 87, :_reduce_100,
150
+ 3, 87, :_reduce_101,
151
+ 1, 89, :_reduce_102,
152
+ 1, 89, :_reduce_103,
153
+ 1, 86, :_reduce_104,
154
+ 4, 82, :_reduce_105,
155
+ 4, 82, :_reduce_106,
156
+ 6, 72, :_reduce_107,
157
+ 5, 72, :_reduce_108,
158
+ 0, 116, :_reduce_none,
159
+ 4, 116, :_reduce_110,
160
+ 3, 116, :_reduce_111,
161
+ 1, 109, :_reduce_none,
162
+ 3, 109, :_reduce_113,
163
+ 3, 109, :_reduce_114,
164
+ 3, 109, :_reduce_115,
165
+ 3, 109, :_reduce_116,
166
+ 3, 109, :_reduce_117,
167
+ 3, 109, :_reduce_118,
168
+ 3, 109, :_reduce_119,
169
+ 3, 109, :_reduce_120,
170
+ 2, 109, :_reduce_121,
171
+ 3, 109, :_reduce_122,
172
+ 3, 109, :_reduce_123,
173
+ 3, 109, :_reduce_124,
174
+ 3, 109, :_reduce_125,
175
+ 3, 109, :_reduce_126,
176
+ 3, 109, :_reduce_127,
177
+ 2, 109, :_reduce_128,
178
+ 3, 109, :_reduce_129,
179
+ 3, 109, :_reduce_130,
180
+ 3, 109, :_reduce_131,
181
+ 5, 71, :_reduce_132,
186
182
  1, 118, :_reduce_none,
187
- 4, 118, :_reduce_138,
183
+ 2, 118, :_reduce_134,
184
+ 5, 119, :_reduce_135,
185
+ 4, 119, :_reduce_136,
188
186
  1, 120, :_reduce_none,
189
- 3, 120, :_reduce_140,
190
- 3, 119, :_reduce_141,
191
- 1, 117, :_reduce_none,
192
- 1, 117, :_reduce_none,
193
- 1, 117, :_reduce_none,
194
- 1, 117, :_reduce_none,
195
- 1, 117, :_reduce_none,
196
- 1, 117, :_reduce_none,
197
- 1, 117, :_reduce_none,
198
- 1, 117, :_reduce_149,
199
- 1, 121, :_reduce_150,
200
- 3, 121, :_reduce_151,
201
- 2, 70, :_reduce_152,
202
- 6, 72, :_reduce_153,
203
- 5, 72, :_reduce_154,
204
- 6, 73, :_reduce_155,
205
- 5, 73, :_reduce_156,
206
- 6, 74, :_reduce_157,
207
- 5, 74, :_reduce_158,
208
- 1, 92, :_reduce_none,
209
- 1, 87, :_reduce_none,
210
- 1, 87, :_reduce_none,
211
- 1, 124, :_reduce_none,
212
- 3, 124, :_reduce_163,
213
- 1, 126, :_reduce_none,
214
- 1, 126, :_reduce_none,
215
- 1, 126, :_reduce_none,
216
- 1, 126, :_reduce_none,
217
- 0, 62, :_reduce_168,
218
- 0, 127, :_reduce_169,
187
+ 3, 120, :_reduce_138,
188
+ 3, 88, :_reduce_139,
219
189
  1, 122, :_reduce_none,
220
- 3, 122, :_reduce_171,
221
- 3, 122, :_reduce_172,
190
+ 4, 122, :_reduce_141,
191
+ 1, 124, :_reduce_none,
192
+ 3, 124, :_reduce_143,
193
+ 3, 123, :_reduce_144,
194
+ 1, 121, :_reduce_none,
195
+ 1, 121, :_reduce_none,
196
+ 1, 121, :_reduce_none,
197
+ 1, 121, :_reduce_none,
198
+ 1, 121, :_reduce_none,
199
+ 1, 121, :_reduce_none,
200
+ 1, 121, :_reduce_none,
201
+ 1, 121, :_reduce_152,
202
+ 1, 121, :_reduce_none,
203
+ 1, 125, :_reduce_154,
204
+ 3, 125, :_reduce_155,
205
+ 2, 73, :_reduce_156,
206
+ 6, 75, :_reduce_157,
207
+ 5, 75, :_reduce_158,
208
+ 6, 76, :_reduce_159,
209
+ 5, 76, :_reduce_160,
210
+ 6, 77, :_reduce_161,
211
+ 5, 77, :_reduce_162,
212
+ 1, 95, :_reduce_163,
213
+ 1, 90, :_reduce_164,
214
+ 1, 90, :_reduce_165,
222
215
  1, 128, :_reduce_none,
223
- 3, 128, :_reduce_174,
224
- 3, 129, :_reduce_175,
225
- 1, 129, :_reduce_176,
226
- 3, 129, :_reduce_177,
227
- 1, 129, :_reduce_178,
228
- 1, 125, :_reduce_none,
229
- 2, 125, :_reduce_180,
230
- 1, 123, :_reduce_none,
231
- 2, 123, :_reduce_182,
232
- 1, 130, :_reduce_none,
233
- 1, 130, :_reduce_none,
234
- 1, 81, :_reduce_185,
235
- 3, 105, :_reduce_186,
236
- 4, 105, :_reduce_187,
237
- 2, 105, :_reduce_188,
238
- 1, 112, :_reduce_none,
239
- 1, 112, :_reduce_none,
240
- 0, 91, :_reduce_none,
241
- 1, 91, :_reduce_192 ]
242
-
243
- racc_reduce_n = 193
244
-
245
- racc_shift_n = 317
216
+ 3, 128, :_reduce_167,
217
+ 1, 130, :_reduce_168,
218
+ 1, 131, :_reduce_169,
219
+ 1, 131, :_reduce_170,
220
+ 1, 131, :_reduce_171,
221
+ 1, 131, :_reduce_172,
222
+ 1, 131, :_reduce_none,
223
+ 0, 65, :_reduce_174,
224
+ 0, 132, :_reduce_175,
225
+ 1, 126, :_reduce_none,
226
+ 3, 126, :_reduce_177,
227
+ 3, 126, :_reduce_178,
228
+ 1, 133, :_reduce_none,
229
+ 3, 133, :_reduce_180,
230
+ 3, 134, :_reduce_181,
231
+ 1, 134, :_reduce_182,
232
+ 3, 134, :_reduce_183,
233
+ 1, 134, :_reduce_184,
234
+ 1, 129, :_reduce_none,
235
+ 2, 129, :_reduce_186,
236
+ 1, 127, :_reduce_none,
237
+ 2, 127, :_reduce_188,
238
+ 1, 135, :_reduce_none,
239
+ 1, 135, :_reduce_none,
240
+ 1, 84, :_reduce_191,
241
+ 3, 108, :_reduce_192,
242
+ 4, 108, :_reduce_193,
243
+ 2, 108, :_reduce_194,
244
+ 1, 115, :_reduce_none,
245
+ 1, 115, :_reduce_none,
246
+ 0, 94, :_reduce_none,
247
+ 1, 94, :_reduce_198,
248
+ 1, 117, :_reduce_199 ]
249
+
250
+ racc_reduce_n = 200
251
+
252
+ racc_shift_n = 329
246
253
 
247
254
  racc_action_table = [
248
- 75, 57, 61, 260, 179, 38, 40, 35, 44, 196,
249
- 54, 287, 45, 239, 3, 6, 187, 298, 240, -145,
250
- 74, 75, 57, 61, 286, 47, 38, 40, 194, 195,
251
- 132, 49, 38, 40, 112, 60, 64, 194, 195, 70,
252
- 41, 74, 149, 43, 55, 77, 178, 118, 66, 48,
253
- 141, 87, 49, 75, 57, 61, 60, 64, 49, 109,
254
- 70, 41, 253, 123, 43, 55, 77, 41, 105, 66,
255
- 43, -146, 87, 74, 75, 57, 61, 202, 151, 152,
256
- 153, 139, 140, 142, 49, 282, 128, 133, 60, 64,
257
- 201, 239, 70, 281, 74, 149, 240, 55, 77, 271,
258
- 118, 66, 179, 141, 87, 49, 75, 57, 61, 60,
259
- 64, 49, 193, 70, 35, 132, 123, 174, 55, 77,
260
- 192, 3, 66, 35, 258, 87, 74, 75, 57, 61,
261
- 3, 151, 152, 153, 139, 140, 142, 49, 116, 35,
262
- 155, 60, 64, 153, 139, 70, 3, 74, 149, -147,
263
- 55, 77, -143, 118, 66, 156, 141, 87, 49, 75,
264
- 57, 61, 60, 64, 49, 157, 70, 153, 139, 123,
265
- 134, 55, 77, 57, 61, 66, 33, 34, 87, 74,
266
- 75, 57, 61, 132, 151, 152, 153, 139, 140, 142,
267
- 49, -145, 203, 274, 60, 64, 187, 188, 70, 275,
268
- 74, 149, -142, 55, 77, -144, 118, 66, 45, 141,
269
- 87, 49, 75, 57, 61, 60, 64, 49, 44, 70,
270
- 57, 61, 123, -142, 55, 77, -159, 128, 66, 177,
271
- 181, 87, 74, 75, 57, 61, -143, 151, 152, 153,
272
- 139, 140, 142, 49, 116, 198, 278, 60, 64, 194,
273
- 195, 70, 248, 74, 186, -145, 55, 77, 187, 188,
274
- 66, 216, 183, 87, 49, 187, 217, -142, 60, 64,
275
- 150, 283, 70, 151, 152, 153, 139, 55, 77, 145,
276
- 149, 66, 284, 285, 87, 190, 105, 290, 141, 143,
277
- 146, 148, 101, 190, 75, 57, 61, 151, 152, 153,
278
- 139, 140, 142, 151, 152, 153, 139, 140, 142, 116,
279
- 98, 97, 144, 147, 74, -142, 151, 152, 153, 139,
280
- 140, 142, -144, -143, -147, 49, 75, 57, 61, 60,
281
- 64, -144, 246, 70, 151, 152, 153, 139, 55, 77,
282
- 244, 278, 66, 301, 302, 87, 74, 75, 57, 61,
283
- -144, 179, -145, -148, 73, 190, -143, 49, 310, -192,
284
- 37, 60, 64, -147, -146, 70, 292, 74, nil, nil,
285
- 55, 77, nil, nil, 66, nil, nil, 87, 49, 75,
286
- 57, 61, 60, 64, nil, nil, 70, nil, nil, nil,
287
- nil, 55, 77, nil, nil, 66, nil, nil, 87, 74,
288
- 75, 57, 61, nil, nil, nil, nil, nil, nil, nil,
289
- 49, nil, nil, nil, 60, 64, nil, nil, 70, nil,
290
- 74, nil, nil, 55, 77, nil, nil, 66, nil, nil,
291
- 87, 49, 75, 57, 61, 60, 64, nil, nil, 70,
292
- nil, nil, nil, nil, 55, 77, nil, nil, 66, nil,
293
- nil, 87, 74, 75, 57, 61, nil, nil, nil, nil,
294
- nil, nil, nil, 49, nil, nil, nil, 60, 64, nil,
295
- nil, 70, nil, 74, nil, nil, 55, 77, nil, nil,
296
- 66, nil, nil, 87, 49, 75, 57, 61, 60, 64,
297
- nil, nil, 70, nil, nil, nil, nil, 55, 77, nil,
298
- nil, 66, nil, nil, 87, 74, 75, 57, 61, nil,
299
- nil, nil, nil, nil, nil, nil, 49, 75, 57, 61,
300
- 60, 64, nil, nil, 70, nil, 74, nil, nil, 55,
301
- 77, nil, nil, 66, nil, nil, 87, 49, 75, 57,
302
- 61, 60, 64, nil, nil, 70, nil, nil, 49, nil,
303
- 55, 77, 60, 64, 66, nil, 70, 87, 74, nil,
304
- nil, 55, nil, nil, nil, 66, nil, nil, nil, 49,
305
- 54, 57, 61, 60, 64, nil, nil, 70, nil, nil,
306
- nil, nil, 55, 77, nil, nil, 66, nil, nil, 87,
307
- 51, 75, 57, 61, nil, nil, nil, 75, 57, 61,
308
- nil, 49, nil, nil, nil, 60, 64, nil, nil, 70,
309
- nil, nil, nil, 52, 55, 75, 57, 61, 66, nil,
310
- nil, nil, 49, nil, nil, nil, 60, 168, 49, nil,
311
- 70, nil, 60, 209, nil, 161, 70, nil, nil, 66,
312
- nil, 161, nil, nil, nil, 66, 49, nil, nil, nil,
313
- 60, 64, nil, nil, 70, 75, 57, 61, 137, 55,
314
- nil, nil, nil, 66, nil, 75, 57, 61, nil, nil,
315
- nil, 75, 57, 61, nil, nil, nil, nil, nil, nil,
316
- nil, 75, 57, 61, nil, nil, 49, 75, 57, 61,
317
- 60, 64, nil, nil, 70, nil, 49, nil, nil, 55,
318
- 60, 64, 49, 66, 70, nil, 60, 64, nil, 55,
319
- 70, nil, 49, 66, nil, 55, 60, 64, 49, 66,
320
- 70, nil, 60, 64, nil, 55, 70, nil, nil, 66,
321
- nil, 55, 75, 57, 61, 66, nil, nil, 75, 57,
322
- 61, nil, nil, nil, nil, nil, nil, nil, 75, 57,
323
- 61, nil, nil, nil, nil, 57, 61, nil, nil, nil,
324
- nil, nil, nil, 49, nil, 57, 61, 60, 64, 49,
325
- nil, 70, nil, 60, 64, nil, 55, 70, nil, 49,
326
- 66, nil, 55, 60, 64, 49, 66, 70, nil, 60,
327
- 209, nil, 55, 70, nil, 49, 66, nil, 161, 60,
328
- 209, nil, 66, 70, 57, 61, 57, 61, 161, nil,
329
- nil, nil, 66, nil, nil, nil, nil, nil, nil, nil,
330
- 57, 61, 57, 61, 270, nil, nil, nil, nil, nil,
331
- nil, nil, nil, nil, 49, nil, 49, nil, 60, 64,
332
- 60, 209, 70, nil, 70, nil, 52, 55, nil, 161,
333
- 49, 66, 49, 66, 60, 209, 60, 64, 70, nil,
334
- 70, 57, 61, 161, 52, 55, nil, 66, nil, 66,
335
- nil, 57, 61, nil, nil, 280, nil, 57, 61, nil,
336
- nil, 130, nil, nil, nil, nil, nil, 57, 61, nil,
337
- nil, 49, nil, nil, nil, 60, 64, 57, 61, 70,
338
- 210, 49, nil, 52, 55, 60, 209, 49, 66, 70,
339
- nil, 60, 209, nil, 161, 70, nil, 49, 66, nil,
340
- 161, 60, 209, nil, 66, 70, nil, 49, 57, 61,
341
- 161, 60, 209, nil, 66, 70, nil, nil, nil, nil,
342
- 161, nil, nil, nil, 66, 145, 149, nil, 205, nil,
343
- nil, nil, nil, nil, 141, 143, 146, 148, 49, nil,
344
- nil, nil, 60, 64, nil, nil, 70, nil, nil, nil,
345
- 52, 55, nil, nil, nil, 66, nil, nil, 144, 147,
346
- 145, 149, 151, 152, 153, 139, 140, 142, 215, 141,
347
- 143, 146, 148, 145, 149, nil, nil, nil, nil, nil,
348
- nil, nil, 141, 143, 146, 148, nil, nil, nil, nil,
349
- nil, nil, nil, 144, 147, 145, 149, 151, 152, 153,
350
- 139, 140, 142, nil, 141, 143, 146, 148, 145, 149,
351
- 151, 152, 153, 139, 140, 142, nil, 141, 143, 146,
352
- 148, nil, nil, nil, nil, nil, nil, nil, nil, 147,
353
- 289, nil, 151, 152, 153, 139, 140, 142, nil, nil,
354
- nil, 144, 147, nil, nil, 151, 152, 153, 139, 140,
355
- 142, 16, 294, 23, 26, nil, 1, 4, nil, 9,
356
- nil, 13, nil, 20, nil, 27, nil, nil, 3, 6,
357
- nil, 295, nil, 16, nil, 23, 26, nil, 1, 4,
358
- nil, 9, nil, 13, nil, 20, nil, 27, nil, nil,
359
- 3, 6, 16, 276, 23, 26, nil, 1, 4, nil,
360
- 9, nil, 13, nil, 20, nil, 27, nil, nil, 3,
361
- 6, nil, 307, nil, 16, nil, 23, 26, nil, 1,
362
- 4, nil, 9, nil, 13, nil, 20, nil, 27, nil,
363
- nil, 3, 6, 16, 230, 23, 26, nil, 1, 4,
364
- nil, 9, nil, 13, nil, 20, nil, 27, nil, nil,
365
- 3, 6, nil, 312, nil, 16, nil, 23, 26, nil,
366
- 1, 4, nil, 9, nil, 13, nil, 20, nil, 27,
367
- nil, nil, 3, 6, 16, 314, 23, 26, nil, 1,
368
- 4, nil, 9, nil, 13, nil, 20, nil, 27, nil,
369
- nil, 3, 6, nil, 256, nil, 16, nil, 23, 26,
370
- nil, 1, 4, nil, 9, nil, 13, nil, 20, nil,
371
- 27, nil, nil, 3, 6, 16, 315, 23, 26, nil,
372
- 1, 4, nil, 9, nil, 13, nil, 20, nil, 27,
373
- nil, nil, 3, 6, nil, 250, nil, 16, nil, 23,
374
- 26, nil, 1, 4, nil, 9, nil, 13, nil, 20,
375
- nil, 27, nil, nil, 3, 6, 16, 316, 23, 26,
376
- nil, 1, 4, nil, 9, nil, 13, nil, 20, nil,
377
- 27, nil, nil, 3, 6, nil, nil, nil, 16, nil,
378
- 23, 26, nil, 1, 4, nil, 9, nil, 13, nil,
379
- 20, nil, 27, nil, nil, 3, 6, 16, nil, 23,
380
- 26, nil, 1, 4, nil, 9, nil, 13, nil, 20,
381
- nil, 27, nil, nil, 3, 6, 16, nil, 23, 26,
382
- nil, 1, 4, nil, 9, nil, 13, nil, 20, nil,
383
- 27, nil, nil, 3, 6 ]
255
+ 77, 56, 59, 56, 59, 54, 285, 187, 165, 126,
256
+ 158, 159, 160, 144, 284, 56, 59, 152, 156, 48,
257
+ 73, 77, 56, 59, 170, 138, 90, 77, 56, 59,
258
+ 91, 48, 249, 48, 123, 58, 61, 58, 201, 68,
259
+ 248, 68, 312, 92, 55, 78, 111, 73, 63, 194,
260
+ 63, 84, 48, 77, 56, 59, 58, 61, 48, 41,
261
+ 68, 41, 58, 61, 187, 55, 68, 93, 261, 63,
262
+ 247, 55, 78, 38, 39, 63, -146, 138, 84, -151,
263
+ 41, 287, 38, 39, 48, 253, 41, 301, 58, 201,
264
+ 257, 264, 68, 77, 56, 59, 137, 111, 245, 246,
265
+ 300, 63, 165, 77, 56, 59, 245, 246, 40, 277,
266
+ 253, 44, 41, 48, 36, 257, 163, 40, 170, 165,
267
+ 44, 4, 8, 73, 48, 54, 56, 59, 58, 61,
268
+ 48, 41, 68, 165, 48, 170, 36, 55, 58, 61,
269
+ 41, 63, 68, 4, 48, 51, 36, 55, 78, 170,
270
+ 207, 63, 41, 4, 84, 163, 48, 77, 56, 59,
271
+ 58, 61, 41, 206, 68, 38, 39, 36, 52, 55,
272
+ 183, 208, -148, 63, 4, 210, 211, 73, 77, 56,
273
+ 59, 160, 144, -145, 41, 270, 152, 156, 48, 160,
274
+ 144, 130, 58, 61, 152, 156, 68, 77, 56, 59,
275
+ 40, 55, 78, 44, 272, 63, 250, 138, 84, 48,
276
+ 245, 246, -147, 58, 61, -149, 41, 68, 77, 56,
277
+ 59, -150, 55, 41, 161, 217, 63, 278, 48, 210,
278
+ 218, 258, 58, 61, 163, 241, 68, 41, 73, 210,
279
+ 211, 55, 33, 34, 41, 63, 56, 59, 175, 48,
280
+ 77, 56, 59, 58, 61, -146, 41, 68, 210, 311,
281
+ 152, 156, 55, 78, 152, 156, 63, -148, 90, 84,
282
+ -145, 77, 56, 59, 176, 137, 177, 41, 280, -163,
283
+ 41, 48, 178, -149, -147, 58, 61, 91, 286, 68,
284
+ 184, -147, 132, 130, 55, 196, 298, 299, 63, 186,
285
+ 302, 189, 48, 77, 56, 59, 58, 61, 105, 41,
286
+ 68, 189, -145, -148, 189, 55, -150, 280, 314, 63,
287
+ 99, -147, -145, 73, 77, 56, 59, -148, -146, -150,
288
+ 41, 316, 190, -146, 48, 97, 130, 47, 58, 61,
289
+ 322, -198, 68, 37, 196, 187, 192, 55, 78, nil,
290
+ nil, 63, nil, nil, 84, 48, 77, 56, 59, 58,
291
+ 61, nil, 41, 68, nil, nil, nil, nil, 55, nil,
292
+ nil, nil, 63, nil, nil, nil, 73, 77, 56, 59,
293
+ nil, nil, nil, 41, nil, nil, nil, 48, nil, nil,
294
+ nil, 58, 61, nil, nil, 68, nil, 73, nil, nil,
295
+ 55, 78, nil, nil, 63, nil, nil, 84, 48, 77,
296
+ 56, 59, 58, 61, nil, 41, 68, nil, nil, nil,
297
+ nil, 55, 78, nil, nil, 63, nil, nil, 84, 73,
298
+ 77, 56, 59, nil, nil, nil, 41, nil, nil, nil,
299
+ 48, nil, nil, nil, 58, 61, nil, nil, 68, nil,
300
+ 73, nil, nil, 55, 78, nil, nil, 63, nil, nil,
301
+ 84, 48, 77, 56, 59, 58, 61, nil, 41, 68,
302
+ nil, nil, nil, nil, 55, 78, nil, nil, 63, nil,
303
+ nil, 84, nil, 77, 56, 59, nil, nil, nil, 41,
304
+ nil, nil, nil, 48, nil, nil, nil, 58, 113, nil,
305
+ nil, 68, nil, 73, nil, nil, 111, nil, nil, nil,
306
+ 63, nil, 155, nil, 48, nil, nil, nil, 58, 61,
307
+ 146, 41, 68, 77, 56, 59, 141, 55, 78, nil,
308
+ nil, 63, nil, nil, 84, nil, nil, 77, 56, 59,
309
+ nil, nil, 41, nil, 77, 56, 59, nil, 158, 159,
310
+ 160, 144, 145, 147, 48, 152, 156, nil, 58, 61,
311
+ nil, nil, 68, nil, 73, nil, nil, 55, 48, 155,
312
+ nil, 63, 58, 61, nil, 48, 68, 146, nil, 58,
313
+ 61, 55, 41, 68, nil, 63, nil, nil, 55, 78,
314
+ nil, nil, 63, nil, nil, 84, 41, 77, 56, 59,
315
+ 56, 59, nil, 41, nil, 158, 159, 160, 144, 145,
316
+ 147, nil, 152, 156, nil, nil, nil, 73, 77, 56,
317
+ 59, nil, nil, nil, 77, 56, 59, nil, 48, nil,
318
+ 48, nil, 58, 61, 58, 201, 68, nil, 68, nil,
319
+ nil, 55, 78, 111, 73, 63, nil, 63, 84, 48,
320
+ 77, 56, 59, 58, 61, 48, 41, 68, 41, 58,
321
+ 61, nil, 55, 68, nil, nil, 63, nil, 55, 78,
322
+ 73, nil, 63, nil, nil, 84, nil, 41, nil, 155,
323
+ nil, 48, nil, 41, nil, 58, 61, 146, nil, 68,
324
+ 77, 56, 59, nil, 55, 78, nil, nil, 63, nil,
325
+ nil, 84, nil, nil, nil, nil, nil, nil, nil, 41,
326
+ 73, 77, 56, 59, nil, 158, 159, 160, 144, 145,
327
+ 147, 48, 152, 156, nil, 58, 61, nil, nil, 68,
328
+ nil, 73, nil, nil, 55, 78, nil, nil, 63, nil,
329
+ nil, 84, 48, 77, 56, 59, 58, 61, nil, 41,
330
+ 68, nil, nil, nil, nil, 55, 78, nil, nil, 63,
331
+ nil, nil, 84, 73, 77, 56, 59, nil, nil, nil,
332
+ 41, nil, nil, nil, 48, nil, nil, nil, 58, 61,
333
+ nil, nil, 68, nil, 73, nil, nil, 55, 78, nil,
334
+ nil, 63, nil, nil, 84, 48, 77, 56, 59, 58,
335
+ 61, nil, 41, 68, nil, nil, nil, nil, 55, 78,
336
+ nil, nil, 63, nil, nil, 84, 73, nil, 56, 59,
337
+ nil, nil, nil, 41, 56, 59, nil, 48, nil, nil,
338
+ nil, 58, 61, nil, nil, 68, nil, nil, 133, nil,
339
+ 55, 78, nil, nil, 63, nil, nil, 84, 48, 56,
340
+ 59, nil, 58, 61, 48, 41, 68, nil, 58, 201,
341
+ 52, 55, 68, 56, 59, 63, nil, 111, nil, 275,
342
+ nil, 63, nil, nil, nil, nil, 41, nil, nil, 48,
343
+ nil, nil, 41, 58, 61, 56, 59, 68, nil, nil,
344
+ nil, 52, 55, 48, nil, nil, 63, 58, 201, 56,
345
+ 59, 68, nil, nil, nil, 214, 111, 41, nil, nil,
346
+ 63, nil, nil, nil, nil, 48, nil, 56, 59, 58,
347
+ 61, 41, nil, 68, nil, nil, nil, 52, 55, 48,
348
+ nil, nil, 63, 58, 201, 56, 59, 68, 203, nil,
349
+ nil, nil, 111, 41, nil, nil, 63, 48, nil, 56,
350
+ 59, 58, 61, nil, nil, 68, nil, 41, nil, 52,
351
+ 55, nil, nil, nil, 63, 48, nil, 56, 59, 58,
352
+ 201, 282, nil, 68, nil, 41, nil, nil, 111, 48,
353
+ nil, nil, 63, 58, 201, nil, nil, 68, nil, nil,
354
+ nil, nil, 111, 41, nil, nil, 63, 48, nil, 157,
355
+ nil, 58, 201, nil, nil, 68, nil, 41, 150, 155,
356
+ 111, nil, nil, nil, 63, nil, nil, 146, 148, 151,
357
+ 154, 150, 155, nil, nil, 41, nil, nil, nil, nil,
358
+ 146, 148, 151, 154, nil, nil, 158, 159, 160, 144,
359
+ nil, 149, 153, 152, 156, 158, 159, 160, 144, 145,
360
+ 147, nil, 152, 156, nil, nil, nil, nil, 158, 159,
361
+ 160, 144, 145, 147, nil, 152, 156, 150, 155, nil,
362
+ nil, nil, nil, nil, nil, nil, 146, 148, 151, 154,
363
+ 150, 155, nil, nil, nil, nil, nil, nil, nil, 146,
364
+ 148, 151, 154, nil, nil, nil, nil, nil, nil, nil,
365
+ 149, 153, nil, nil, 158, 159, 160, 144, 145, 147,
366
+ nil, 152, 156, 149, 153, nil, nil, 158, 159, 160,
367
+ 144, 145, 147, nil, 152, 156, 150, 155, nil, nil,
368
+ nil, nil, nil, nil, 216, 146, 148, 151, 154, 150,
369
+ 155, nil, nil, nil, nil, nil, nil, nil, 146, 148,
370
+ 151, 154, nil, 155, nil, nil, nil, nil, nil, 149,
371
+ 153, 146, nil, 158, 159, 160, 144, 145, 147, nil,
372
+ 152, 156, nil, 153, nil, nil, 158, 159, 160, 144,
373
+ 145, 147, 281, 152, 156, nil, nil, nil, nil, 158,
374
+ 159, 160, 144, 145, 147, nil, 152, 156, nil, nil,
375
+ nil, 303, nil, 18, nil, 23, 26, nil, 1, 5,
376
+ nil, 12, nil, 16, nil, 20, nil, 27, nil, nil,
377
+ 4, 8, 18, 305, 23, 26, nil, 1, 5, nil,
378
+ 12, nil, 16, nil, 20, nil, 27, nil, nil, 4,
379
+ 8, nil, 307, nil, 18, nil, 23, 26, nil, 1,
380
+ 5, nil, 12, nil, 16, nil, 20, nil, 27, nil,
381
+ nil, 4, 8, 18, 320, 23, 26, nil, 1, 5,
382
+ nil, 12, nil, 16, nil, 20, nil, 27, nil, nil,
383
+ 4, 8, nil, 259, nil, 18, nil, 23, 26, nil,
384
+ 1, 5, nil, 12, nil, 16, nil, 20, nil, 27,
385
+ nil, nil, 4, 8, 18, 232, 23, 26, nil, 1,
386
+ 5, nil, 12, nil, 16, nil, 20, nil, 27, nil,
387
+ nil, 4, 8, nil, 323, nil, 18, nil, 23, 26,
388
+ nil, 1, 5, nil, 12, nil, 16, nil, 20, nil,
389
+ 27, nil, nil, 4, 8, 18, 325, 23, 26, nil,
390
+ 1, 5, nil, 12, nil, 16, nil, 20, nil, 27,
391
+ nil, nil, 4, 8, nil, 327, nil, 18, nil, 23,
392
+ 26, nil, 1, 5, nil, 12, nil, 16, nil, 20,
393
+ nil, 27, nil, nil, 4, 8, 18, 267, 23, 26,
394
+ nil, 1, 5, nil, 12, nil, 16, nil, 20, nil,
395
+ 27, nil, nil, 4, 8, nil, 328, nil, 18, nil,
396
+ 23, 26, nil, 1, 5, nil, 12, nil, 16, nil,
397
+ 20, nil, 27, nil, nil, 4, 8, 18, nil, 23,
398
+ 26, nil, 1, 5, nil, 12, nil, 16, nil, 20,
399
+ nil, 27, nil, nil, 4, 8, 18, nil, 23, 26,
400
+ nil, 1, 5, nil, 12, nil, 16, nil, 20, nil,
401
+ 27, nil, nil, 4, 8, 18, nil, 23, 26, nil,
402
+ 1, 5, nil, 12, nil, 16, nil, 20, nil, 27,
403
+ nil, nil, 4, 8, 158, 159, 160, 144, 145, 147,
404
+ nil, 152, 156, 158, 159, 160, 144, 145, 147, nil,
405
+ 152, 156 ]
384
406
 
385
407
  racc_action_check = [
386
- 34, 34, 34, 191, 105, 112, 112, 17, 11, 125,
387
- 64, 242, 11, 287, 17, 17, 273, 273, 287, 263,
388
- 34, 153, 153, 153, 242, 11, 9, 9, 191, 191,
389
- 64, 34, 109, 109, 39, 34, 34, 125, 125, 34,
390
- 112, 153, 222, 112, 34, 34, 105, 48, 34, 11,
391
- 222, 34, 153, 139, 139, 139, 153, 153, 48, 39,
392
- 153, 9, 180, 48, 9, 153, 153, 109, 181, 153,
393
- 109, 69, 153, 139, 140, 140, 140, 129, 222, 222,
394
- 222, 222, 222, 222, 139, 236, 204, 68, 139, 139,
395
- 129, 157, 139, 236, 140, 227, 157, 139, 139, 204,
396
- 197, 139, 168, 227, 139, 140, 151, 151, 151, 140,
397
- 140, 197, 120, 140, 101, 168, 197, 101, 140, 140,
398
- 120, 101, 140, 26, 189, 140, 151, 141, 141, 141,
399
- 26, 227, 227, 227, 227, 227, 227, 151, 190, 4,
400
- 93, 151, 151, 232, 232, 151, 4, 141, 225, 67,
401
- 151, 151, 65, 118, 151, 94, 225, 151, 141, 77,
402
- 77, 77, 141, 141, 118, 96, 141, 231, 231, 118,
403
- 73, 141, 141, 23, 23, 141, 1, 1, 141, 77,
404
- 142, 142, 142, 209, 225, 225, 225, 225, 225, 225,
405
- 77, 62, 131, 211, 77, 77, 131, 131, 77, 217,
406
- 142, 224, 78, 77, 77, 173, 47, 77, 90, 224,
407
- 77, 142, 16, 16, 16, 142, 142, 47, 59, 142,
408
- 156, 156, 47, 58, 142, 142, 55, 50, 142, 102,
409
- 106, 142, 16, 74, 74, 74, 167, 224, 224, 224,
410
- 224, 224, 224, 16, 45, 127, 230, 16, 16, 127,
411
- 127, 16, 166, 74, 113, 165, 16, 16, 113, 113,
412
- 16, 136, 110, 16, 74, 136, 136, 163, 74, 74,
413
- 84, 239, 74, 221, 221, 221, 221, 74, 74, 84,
414
- 84, 74, 240, 241, 74, 162, 37, 245, 84, 84,
415
- 84, 84, 36, 115, 87, 87, 87, 220, 220, 220,
416
- 220, 220, 220, 228, 228, 228, 228, 228, 228, 248,
417
- 30, 27, 84, 84, 87, 262, 84, 84, 84, 84,
418
- 84, 84, 72, 264, 265, 87, 149, 149, 149, 87,
419
- 87, 267, 160, 87, 219, 219, 219, 219, 87, 87,
420
- 158, 276, 87, 278, 281, 87, 149, 148, 148, 148,
421
- 89, 116, 79, 80, 15, 293, 81, 149, 297, 298,
422
- 7, 149, 149, 83, 85, 149, 247, 148, nil, nil,
423
- 149, 149, nil, nil, 149, nil, nil, 149, 148, 143,
424
- 143, 143, 148, 148, nil, nil, 148, nil, nil, nil,
425
- nil, 148, 148, nil, nil, 148, nil, nil, 148, 143,
426
- 144, 144, 144, nil, nil, nil, nil, nil, nil, nil,
427
- 143, nil, nil, nil, 143, 143, nil, nil, 143, nil,
428
- 144, nil, nil, 143, 143, nil, nil, 143, nil, nil,
429
- 143, 144, 33, 33, 33, 144, 144, nil, nil, 144,
430
- nil, nil, nil, nil, 144, 144, nil, nil, 144, nil,
431
- nil, 144, 33, 152, 152, 152, nil, nil, nil, nil,
432
- nil, nil, nil, 33, nil, nil, nil, 33, 33, nil,
433
- nil, 33, nil, 152, nil, nil, 33, 33, nil, nil,
434
- 33, nil, nil, 33, 152, 147, 147, 147, 152, 152,
435
- nil, nil, 152, nil, nil, nil, nil, 152, 152, nil,
436
- nil, 152, nil, nil, 152, 147, 146, 146, 146, nil,
437
- nil, nil, nil, nil, nil, nil, 147, 44, 44, 44,
438
- 147, 147, nil, nil, 147, nil, 146, nil, nil, 147,
439
- 147, nil, nil, 147, nil, nil, 147, 146, 145, 145,
440
- 145, 146, 146, nil, nil, 146, nil, nil, 44, nil,
441
- 146, 146, 44, 44, 146, nil, 44, 146, 145, nil,
442
- nil, 44, nil, nil, nil, 44, nil, nil, nil, 145,
443
- 13, 13, 13, 145, 145, nil, nil, 145, nil, nil,
444
- nil, nil, 145, 145, nil, nil, 145, nil, nil, 145,
445
- 13, 98, 98, 98, nil, nil, nil, 246, 246, 246,
446
- nil, 13, nil, nil, nil, 13, 13, nil, nil, 13,
447
- nil, nil, nil, 13, 13, 274, 274, 274, 13, nil,
448
- nil, nil, 98, nil, nil, nil, 98, 98, 246, nil,
449
- 98, nil, 246, 246, nil, 98, 246, nil, nil, 98,
450
- nil, 246, nil, nil, nil, 246, 274, nil, nil, nil,
451
- 274, 274, nil, nil, 274, 75, 75, 75, 75, 274,
452
- nil, nil, nil, 274, nil, 54, 54, 54, nil, nil,
453
- nil, 284, 284, 284, nil, nil, nil, nil, nil, nil,
454
- nil, 178, 178, 178, nil, nil, 75, 20, 20, 20,
455
- 75, 75, nil, nil, 75, nil, 54, nil, nil, 75,
456
- 54, 54, 284, 75, 54, nil, 284, 284, nil, 54,
457
- 284, nil, 178, 54, nil, 284, 178, 178, 20, 284,
458
- 178, nil, 20, 20, nil, 178, 20, nil, nil, 178,
459
- nil, 20, 179, 179, 179, 20, nil, nil, 283, 283,
460
- 283, nil, nil, nil, nil, nil, nil, nil, 185, 185,
461
- 185, nil, nil, nil, nil, 193, 193, nil, nil, nil,
462
- nil, nil, nil, 179, nil, 192, 192, 179, 179, 283,
463
- nil, 179, nil, 283, 283, nil, 179, 283, nil, 185,
464
- 179, nil, 283, 185, 185, 193, 283, 185, nil, 193,
465
- 193, nil, 185, 193, nil, 192, 185, nil, 193, 192,
466
- 192, nil, 193, 192, 202, 202, 210, 210, 192, nil,
467
- nil, nil, 192, nil, nil, nil, nil, nil, nil, nil,
468
- 282, 282, 128, 128, 202, nil, nil, nil, nil, nil,
469
- nil, nil, nil, nil, 202, nil, 210, nil, 202, 202,
470
- 210, 210, 202, nil, 210, nil, 202, 202, nil, 210,
471
- 282, 202, 128, 210, 282, 282, 128, 128, 282, nil,
472
- 128, 51, 51, 282, 128, 128, nil, 282, nil, 128,
473
- nil, 234, 234, nil, nil, 234, nil, 296, 296, nil,
474
- nil, 51, nil, nil, nil, nil, nil, 155, 155, nil,
475
- nil, 51, nil, nil, nil, 51, 51, 133, 133, 51,
476
- 133, 234, nil, 51, 51, 234, 234, 296, 51, 234,
477
- nil, 296, 296, nil, 234, 296, nil, 155, 234, nil,
478
- 296, 155, 155, nil, 296, 155, nil, 133, 132, 132,
479
- 155, 133, 133, nil, 155, 133, nil, nil, nil, nil,
480
- 133, nil, nil, nil, 133, 100, 100, nil, 132, nil,
481
- nil, nil, nil, nil, 100, 100, 100, 100, 132, nil,
482
- nil, nil, 132, 132, nil, nil, 132, nil, nil, nil,
483
- 132, 132, nil, nil, nil, 132, nil, nil, 100, 100,
484
- 135, 135, 100, 100, 100, 100, 100, 100, 135, 135,
485
- 135, 135, 135, 226, 226, nil, nil, nil, nil, nil,
486
- nil, nil, 226, 226, 226, 226, nil, nil, nil, nil,
487
- nil, nil, nil, 135, 135, 223, 223, 135, 135, 135,
488
- 135, 135, 135, nil, 223, 223, 223, 223, 99, 99,
489
- 226, 226, 226, 226, 226, 226, nil, 99, 99, 99,
490
- 99, nil, nil, nil, nil, nil, nil, nil, nil, 223,
491
- 244, nil, 223, 223, 223, 223, 223, 223, nil, nil,
492
- nil, 99, 99, nil, nil, 99, 99, 99, 99, 99,
493
- 99, 244, 249, 244, 244, nil, 244, 244, nil, 244,
494
- nil, 244, nil, 244, nil, 244, nil, nil, 244, 244,
495
- nil, 255, nil, 249, nil, 249, 249, nil, 249, 249,
496
- nil, 249, nil, 249, nil, 249, nil, 249, nil, nil,
497
- 249, 249, 255, 229, 255, 255, nil, 255, 255, nil,
498
- 255, nil, 255, nil, 255, nil, 255, nil, nil, 255,
499
- 255, nil, 288, nil, 229, nil, 229, 229, nil, 229,
500
- 229, nil, 229, nil, 229, nil, 229, nil, 229, nil,
501
- nil, 229, 229, 288, 150, 288, 288, nil, 288, 288,
502
- nil, 288, nil, 288, nil, 288, nil, 288, nil, nil,
503
- 288, 288, nil, 301, nil, 150, nil, 150, 150, nil,
504
- 150, 150, nil, 150, nil, 150, nil, 150, nil, 150,
505
- nil, nil, 150, 150, 301, 302, 301, 301, nil, 301,
506
- 301, nil, 301, nil, 301, nil, 301, nil, 301, nil,
507
- nil, 301, 301, nil, 183, nil, 302, nil, 302, 302,
508
- nil, 302, 302, nil, 302, nil, 302, nil, 302, nil,
509
- 302, nil, nil, 302, 302, 183, 311, 183, 183, nil,
510
- 183, 183, nil, 183, nil, 183, nil, 183, nil, 183,
511
- nil, nil, 183, 183, nil, 177, nil, 311, nil, 311,
512
- 311, nil, 311, 311, nil, 311, nil, 311, nil, 311,
513
- nil, 311, nil, nil, 311, 311, 177, 313, 177, 177,
514
- nil, 177, 177, nil, 177, nil, 177, nil, 177, nil,
515
- 177, nil, nil, 177, 177, nil, nil, nil, 313, nil,
516
- 313, 313, nil, 313, 313, nil, 313, nil, 313, nil,
517
- 313, nil, 313, nil, nil, 313, 313, 19, nil, 19,
518
- 19, nil, 19, 19, nil, 19, nil, 19, nil, 19,
519
- nil, 19, nil, nil, 19, 19, 0, nil, 0, 0,
408
+ 155, 155, 155, 248, 248, 61, 240, 130, 93, 43,
409
+ 222, 222, 222, 222, 240, 176, 176, 222, 222, 93,
410
+ 155, 90, 90, 90, 93, 61, 21, 84, 84, 84,
411
+ 21, 155, 169, 248, 43, 155, 155, 248, 248, 155,
412
+ 169, 248, 280, 21, 155, 155, 248, 84, 155, 130,
413
+ 248, 155, 90, 186, 186, 186, 90, 90, 84, 155,
414
+ 90, 248, 84, 84, 113, 90, 84, 21, 185, 90,
415
+ 166, 84, 84, 12, 12, 84, 83, 113, 84, 82,
416
+ 90, 243, 123, 123, 186, 178, 84, 255, 186, 186,
417
+ 178, 188, 186, 187, 187, 187, 215, 186, 166, 166,
418
+ 255, 186, 92, 159, 159, 159, 243, 243, 12, 215,
419
+ 301, 12, 186, 92, 28, 301, 189, 123, 92, 244,
420
+ 123, 28, 28, 159, 187, 16, 16, 16, 187, 187,
421
+ 244, 12, 187, 165, 159, 244, 5, 187, 159, 159,
422
+ 123, 187, 159, 5, 165, 16, 26, 159, 159, 165,
423
+ 134, 159, 187, 26, 159, 190, 16, 18, 18, 18,
424
+ 16, 16, 159, 134, 16, 126, 126, 105, 16, 16,
425
+ 105, 136, 81, 16, 105, 136, 136, 18, 20, 20,
426
+ 20, 234, 234, 80, 16, 195, 234, 234, 18, 235,
427
+ 235, 196, 18, 18, 235, 235, 18, 194, 194, 194,
428
+ 126, 18, 18, 126, 197, 18, 174, 201, 18, 20,
429
+ 174, 174, 76, 20, 20, 72, 18, 20, 144, 144,
430
+ 144, 71, 20, 126, 89, 140, 20, 218, 194, 140,
431
+ 140, 179, 194, 194, 91, 162, 194, 20, 144, 162,
432
+ 162, 194, 1, 1, 156, 194, 23, 23, 94, 144,
433
+ 302, 302, 302, 144, 144, 70, 194, 144, 274, 274,
434
+ 236, 236, 144, 144, 219, 219, 144, 67, 66, 144,
435
+ 64, 298, 298, 298, 96, 57, 97, 144, 232, 55,
436
+ 152, 302, 98, 88, 53, 302, 302, 101, 242, 302,
437
+ 106, 110, 49, 47, 302, 251, 253, 254, 302, 112,
438
+ 257, 114, 298, 78, 78, 78, 298, 298, 35, 302,
439
+ 298, 266, 115, 117, 164, 298, 86, 281, 284, 298,
440
+ 27, 290, 292, 78, 272, 272, 272, 293, 294, 295,
441
+ 298, 297, 118, 119, 78, 25, 175, 15, 78, 78,
442
+ 310, 311, 78, 9, 131, 163, 124, 78, 78, nil,
443
+ nil, 78, nil, nil, 78, 272, 145, 145, 145, 272,
444
+ 272, nil, 78, 272, nil, nil, nil, nil, 272, nil,
445
+ nil, nil, 272, nil, nil, nil, 145, 33, 33, 33,
446
+ nil, nil, nil, 272, nil, nil, nil, 145, nil, nil,
447
+ nil, 145, 145, nil, nil, 145, nil, 33, nil, nil,
448
+ 145, 145, nil, nil, 145, nil, nil, 145, 33, 34,
449
+ 34, 34, 33, 33, nil, 145, 33, nil, nil, nil,
450
+ nil, 33, 33, nil, nil, 33, nil, nil, 33, 34,
451
+ 146, 146, 146, nil, nil, nil, 33, nil, nil, nil,
452
+ 34, nil, nil, nil, 34, 34, nil, nil, 34, nil,
453
+ 146, nil, nil, 34, 34, nil, nil, 34, nil, nil,
454
+ 34, 146, 37, 37, 37, 146, 146, nil, 34, 146,
455
+ nil, nil, nil, nil, 146, 146, nil, nil, 146, nil,
456
+ nil, 146, nil, 147, 147, 147, nil, nil, nil, 146,
457
+ nil, nil, nil, 37, nil, nil, nil, 37, 37, nil,
458
+ nil, 37, nil, 147, nil, nil, 37, nil, nil, nil,
459
+ 37, nil, 223, nil, 147, nil, nil, nil, 147, 147,
460
+ 223, 37, 147, 77, 77, 77, 77, 147, 147, nil,
461
+ nil, 147, nil, nil, 147, nil, nil, 209, 209, 209,
462
+ nil, nil, 147, nil, 73, 73, 73, nil, 223, 223,
463
+ 223, 223, 223, 223, 77, 223, 223, nil, 77, 77,
464
+ nil, nil, 77, nil, 73, nil, nil, 77, 209, 226,
465
+ nil, 77, 209, 209, nil, 73, 209, 226, nil, 73,
466
+ 73, 209, 77, 73, nil, 209, nil, nil, 73, 73,
467
+ nil, nil, 73, nil, nil, 73, 209, 158, 158, 158,
468
+ 203, 203, nil, 73, nil, 226, 226, 226, 226, 226,
469
+ 226, nil, 226, 226, nil, nil, nil, 158, 54, 54,
470
+ 54, nil, nil, nil, 148, 148, 148, nil, 158, nil,
471
+ 203, nil, 158, 158, 203, 203, 158, nil, 203, nil,
472
+ nil, 158, 158, 203, 148, 158, nil, 203, 158, 54,
473
+ 149, 149, 149, 54, 54, 148, 158, 54, 203, 148,
474
+ 148, nil, 54, 148, nil, nil, 54, nil, 148, 148,
475
+ 149, nil, 148, nil, nil, 148, nil, 54, nil, 229,
476
+ nil, 149, nil, 148, nil, 149, 149, 229, nil, 149,
477
+ 150, 150, 150, nil, 149, 149, nil, nil, 149, nil,
478
+ nil, 149, nil, nil, nil, nil, nil, nil, nil, 149,
479
+ 150, 151, 151, 151, nil, 229, 229, 229, 229, 229,
480
+ 229, 150, 229, 229, nil, 150, 150, nil, nil, 150,
481
+ nil, 151, nil, nil, 150, 150, nil, nil, 150, nil,
482
+ nil, 150, 151, 153, 153, 153, 151, 151, nil, 150,
483
+ 151, nil, nil, nil, nil, 151, 151, nil, nil, 151,
484
+ nil, nil, 151, 153, 154, 154, 154, nil, nil, nil,
485
+ 151, nil, nil, nil, 153, nil, nil, nil, 153, 153,
486
+ nil, nil, 153, nil, 154, nil, nil, 153, 153, nil,
487
+ nil, 153, nil, nil, 153, 154, 160, 160, 160, 154,
488
+ 154, nil, 153, 154, nil, nil, nil, nil, 154, 154,
489
+ nil, nil, 154, nil, nil, 154, 160, nil, 51, 51,
490
+ nil, nil, nil, 154, 249, 249, nil, 160, nil, nil,
491
+ nil, 160, 160, nil, nil, 160, nil, nil, 51, nil,
492
+ 160, 160, nil, nil, 160, nil, nil, 160, 51, 207,
493
+ 207, nil, 51, 51, 249, 160, 51, nil, 249, 249,
494
+ 51, 51, 249, 285, 285, 51, nil, 249, nil, 207,
495
+ nil, 249, nil, nil, nil, nil, 51, nil, nil, 207,
496
+ nil, nil, 249, 207, 207, 138, 138, 207, nil, nil,
497
+ nil, 207, 207, 285, nil, nil, 207, 285, 285, 309,
498
+ 309, 285, nil, nil, nil, 138, 285, 207, nil, nil,
499
+ 285, nil, nil, nil, nil, 138, nil, 137, 137, 138,
500
+ 138, 285, nil, 138, nil, nil, nil, 138, 138, 309,
501
+ nil, nil, 138, 309, 309, 132, 132, 309, 132, nil,
502
+ nil, nil, 309, 138, nil, nil, 309, 137, nil, 161,
503
+ 161, 137, 137, nil, nil, 137, nil, 309, nil, 137,
504
+ 137, nil, nil, nil, 137, 132, nil, 238, 238, 132,
505
+ 132, 238, nil, 132, nil, 137, nil, nil, 132, 161,
506
+ nil, nil, 132, 161, 161, nil, nil, 161, nil, nil,
507
+ nil, nil, 161, 132, nil, nil, 161, 238, nil, 87,
508
+ nil, 238, 238, nil, nil, 238, nil, 161, 87, 87,
509
+ 238, nil, nil, nil, 238, nil, nil, 87, 87, 87,
510
+ 87, 228, 228, nil, nil, 238, nil, nil, nil, nil,
511
+ 228, 228, 228, 228, nil, nil, 220, 220, 220, 220,
512
+ nil, 87, 87, 220, 220, 87, 87, 87, 87, 87,
513
+ 87, nil, 87, 87, nil, nil, nil, nil, 228, 228,
514
+ 228, 228, 228, 228, nil, 228, 228, 103, 103, nil,
515
+ nil, nil, nil, nil, nil, nil, 103, 103, 103, 103,
516
+ 104, 104, nil, nil, nil, nil, nil, nil, nil, 104,
517
+ 104, 104, 104, nil, nil, nil, nil, nil, nil, nil,
518
+ 103, 103, nil, nil, 103, 103, 103, 103, 103, 103,
519
+ nil, 103, 103, 104, 104, nil, nil, 104, 104, 104,
520
+ 104, 104, 104, nil, 104, 104, 139, 139, nil, nil,
521
+ nil, nil, nil, nil, 139, 139, 139, 139, 139, 224,
522
+ 224, nil, nil, nil, nil, nil, nil, nil, 224, 224,
523
+ 224, 224, nil, 225, nil, nil, nil, nil, nil, 139,
524
+ 139, 225, nil, 139, 139, 139, 139, 139, 139, nil,
525
+ 139, 139, nil, 224, nil, nil, 224, 224, 224, 224,
526
+ 224, 224, 233, 224, 224, nil, nil, nil, nil, 225,
527
+ 225, 225, 225, 225, 225, nil, 225, 225, nil, nil,
528
+ nil, 258, nil, 233, nil, 233, 233, nil, 233, 233,
529
+ nil, 233, nil, 233, nil, 233, nil, 233, nil, nil,
530
+ 233, 233, 258, 260, 258, 258, nil, 258, 258, nil,
531
+ 258, nil, 258, nil, 258, nil, 258, nil, nil, 258,
532
+ 258, nil, 268, nil, 260, nil, 260, 260, nil, 260,
533
+ 260, nil, 260, nil, 260, nil, 260, nil, 260, nil,
534
+ nil, 260, 260, 268, 304, 268, 268, nil, 268, 268,
535
+ nil, 268, nil, 268, nil, 268, nil, 268, nil, nil,
536
+ 268, 268, nil, 184, nil, 304, nil, 304, 304, nil,
537
+ 304, 304, nil, 304, nil, 304, nil, 304, nil, 304,
538
+ nil, nil, 304, 304, 184, 157, 184, 184, nil, 184,
539
+ 184, nil, 184, nil, 184, nil, 184, nil, 184, nil,
540
+ nil, 184, 184, nil, 312, nil, 157, nil, 157, 157,
541
+ nil, 157, 157, nil, 157, nil, 157, nil, 157, nil,
542
+ 157, nil, nil, 157, 157, 312, 314, 312, 312, nil,
543
+ 312, 312, nil, 312, nil, 312, nil, 312, nil, 312,
544
+ nil, nil, 312, 312, nil, 324, nil, 314, nil, 314,
545
+ 314, nil, 314, 314, nil, 314, nil, 314, nil, 314,
546
+ nil, 314, nil, nil, 314, 314, 324, 192, 324, 324,
547
+ nil, 324, 324, nil, 324, nil, 324, nil, 324, nil,
548
+ 324, nil, nil, 324, 324, nil, 326, nil, 192, nil,
549
+ 192, 192, nil, 192, 192, nil, 192, nil, 192, nil,
550
+ 192, nil, 192, nil, nil, 192, 192, 326, nil, 326,
551
+ 326, nil, 326, 326, nil, 326, nil, 326, nil, 326,
552
+ nil, 326, nil, nil, 326, 326, 0, nil, 0, 0,
520
553
  nil, 0, 0, nil, 0, nil, 0, nil, 0, nil,
521
- 0, nil, nil, 0, 0 ]
554
+ 0, nil, nil, 0, 0, 30, nil, 30, 30, nil,
555
+ 30, 30, nil, 30, nil, 30, nil, 30, nil, 30,
556
+ nil, nil, 30, 30, 230, 230, 230, 230, 230, 230,
557
+ nil, 230, 230, 221, 221, 221, 221, 221, 221, nil,
558
+ 221, 221 ]
522
559
 
523
560
  racc_action_pointer = [
524
- 1308, 163, nil, nil, 101, nil, nil, 354, nil, 23,
525
- nil, 6, nil, 568, nil, 354, 210, -31, nil, 1289,
526
- 685, nil, nil, 170, nil, nil, 85, 269, nil, nil,
527
- 304, nil, nil, 430, -2, nil, 257, 248, nil, 24,
528
- nil, nil, nil, nil, 515, 206, nil, 184, 25, nil,
529
- 217, 858, nil, nil, 663, 224, nil, nil, 202, 216,
530
- nil, nil, 170, nil, 8, 131, nil, 128, 66, 50,
531
- nil, nil, 301, 170, 231, 653, nil, 157, 181, 331,
532
- 332, 335, nil, 342, 264, 343, nil, 292, nil, 329,
533
- 202, nil, nil, 134, 145, nil, 143, nil, 589, 1013,
534
- 930, 76, 223, nil, nil, -5, 220, nil, nil, 29,
535
- 256, nil, 2, 249, nil, 283, 342, nil, 131, nil,
536
- 96, nil, nil, nil, nil, -11, nil, 201, 819, 67,
537
- nil, 187, 925, 894, nil, 965, 256, nil, nil, 51,
538
- 72, 125, 178, 377, 398, 536, 504, 483, 345, 324,
539
- 1147, 104, 451, 19, nil, 884, 217, 58, 334, nil,
540
- 293, nil, 275, 246, nil, 234, 234, 215, 93, nil,
541
- nil, nil, nil, 184, nil, nil, nil, 1248, 679, 730,
542
- 55, 30, nil, 1207, nil, 746, nil, nil, nil, 117,
543
- 100, -20, 762, 752, nil, nil, nil, 78, nil, nil,
544
- nil, nil, 801, nil, 76, nil, nil, nil, nil, 161,
545
- 803, 184, nil, nil, nil, nil, nil, 194, nil, 282,
546
- 245, 221, 26, 1000, 185, 132, 978, 79, 251, 1106,
547
- 217, 113, 89, nil, 868, nil, 75, nil, nil, 258,
548
- 269, 260, 1, nil, 1043, 280, 595, 359, 271, 1065,
549
- nil, nil, nil, nil, nil, 1084, nil, nil, nil, nil,
550
- nil, nil, 294, -2, 302, 303, nil, 310, nil, nil,
551
- nil, nil, nil, 7, 613, nil, 312, nil, 337, nil,
552
- nil, 338, 817, 736, 669, nil, nil, -20, 1125, nil,
553
- nil, nil, nil, 345, nil, nil, 874, 351, 352, nil,
554
- nil, 1166, 1188, nil, nil, nil, nil, nil, nil, nil,
555
- nil, 1229, nil, 1270, nil, nil, nil ]
561
+ 1418, 229, nil, nil, nil, 98, nil, nil, nil, 337,
562
+ nil, nil, 70, nil, nil, 331, 123, nil, 155, nil,
563
+ 176, 24, nil, 243, nil, 335, 108, 278, 76, nil,
564
+ 1437, nil, nil, 375, 407, 273, nil, 460, nil, nil,
565
+ nil, nil, nil, -1, nil, nil, nil, 255, nil, 271,
566
+ nil, 815, nil, 263, 616, 277, nil, 265, nil, nil,
567
+ nil, 3, nil, nil, 249, nil, 266, 246, nil, nil,
568
+ 234, 200, 194, 542, nil, nil, 191, 521, 301, nil,
569
+ 162, 151, 58, 55, 25, nil, 295, 993, 262, 218,
570
+ 19, 196, 80, -14, 242, nil, 264, 276, 260, nil,
571
+ nil, 281, nil, 1052, 1065, 129, 284, nil, nil, nil,
572
+ 270, nil, 260, 55, 291, 291, nil, 292, 314, 312,
573
+ nil, nil, nil, 79, 340, nil, 162, nil, nil, nil,
574
+ -2, 334, 932, nil, 140, nil, 166, 914, 882, 1111,
575
+ 220, nil, nil, nil, 216, 354, 428, 481, 622, 648,
576
+ 688, 709, 219, 741, 762, -2, 183, 1298, 595, 101,
577
+ 794, 946, 230, 336, 304, 111, 50, nil, nil, 16,
578
+ nil, nil, nil, nil, 162, 298, 12, nil, 52, 225,
579
+ nil, nil, nil, nil, 1276, 61, 51, 91, 84, 78,
580
+ 117, nil, 1380, nil, 195, 178, 153, 195, nil, nil,
581
+ nil, 185, nil, 597, nil, nil, nil, 846, nil, 535,
582
+ nil, nil, nil, nil, nil, 86, nil, nil, 222, 205,
583
+ 984, 1441, -42, 496, 1124, 1137, 553, nil, 1006, 663,
584
+ 1432, nil, 249, 1175, 127, 135, 201, nil, 964, nil,
585
+ -4, nil, 281, 58, 97, nil, nil, nil, 0, 821,
586
+ nil, 285, nil, 283, 274, 77, nil, 287, 1194, nil,
587
+ 1216, nil, nil, nil, nil, nil, 301, nil, 1235, nil,
588
+ nil, nil, 322, nil, 249, nil, nil, nil, nil, nil,
589
+ 36, 288, nil, nil, 312, 860, nil, nil, nil, nil,
590
+ 300, nil, 301, 306, 307, 308, nil, 324, 269, nil,
591
+ nil, 77, 248, nil, 1257, nil, nil, nil, nil, 896,
592
+ 333, 334, 1317, nil, 1339, nil, nil, nil, nil, nil,
593
+ nil, nil, nil, nil, 1358, nil, 1399, nil, nil ]
556
594
 
557
595
  racc_action_default = [
558
- -168, -193, -7, -161, -193, -8, -159, -193, -9, -193,
559
- -10, -193, -11, -160, -12, -193, -193, -193, -13, -1,
560
- -193, -14, -2, -193, -15, -3, -193, -39, -16, -5,
561
- -193, -17, -6, -193, -193, -160, -168, -78, -166, -168,
562
- -165, -164, -162, -167, -193, -71, -41, -168, -168, -185,
563
- -21, -193, -33, -22, -193, -62, -23, -101, -26, -193,
564
- -103, -102, -27, -148, -61, -28, -60, -29, -193, -30,
565
- -149, -31, -32, -193, -193, -193, -96, -193, -90, -94,
566
- -98, -91, -95, -92, -193, -97, -93, -193, -111, -89,
567
- -193, -38, -4, -193, -152, -150, -168, -40, -71, -69,
568
- -70, -193, -193, -181, -79, -193, -191, -76, -77, -193,
569
- -193, -179, -193, -193, -81, -191, -193, -72, -168, -47,
570
- -193, -54, -53, -61, -44, -193, -45, -193, -193, -193,
571
- -20, -193, -193, -193, 317, -193, -193, -188, -125, -193,
572
- -193, -193, -193, -193, -193, -193, -193, -193, -193, -193,
573
- -193, -193, -193, -193, -118, -193, -193, -169, -193, -170,
574
- -58, -62, -191, -64, -56, -67, -193, -65, -61, -147,
575
- -68, -146, -66, -63, -184, -182, -183, -193, -193, -193,
576
- -193, -192, -180, -193, -163, -193, -105, -189, -190, -193,
577
- -192, -193, -193, -193, -50, -49, -43, -193, -42, -24,
578
- -25, -18, -193, -104, -193, -100, -142, -145, -143, -61,
579
- -193, -193, -136, -144, -137, -128, -186, -190, -114, -116,
580
- -120, -117, -122, -127, -124, -121, -126, -123, -119, -193,
581
- -108, -112, -113, -115, -193, -130, -193, -134, -151, -178,
582
- -176, -193, -193, -173, -193, -193, -59, -193, -71, -193,
583
- -156, -75, -74, -37, -80, -193, -158, -82, -36, -73,
584
- -48, -51, -84, -88, -85, -86, -87, -83, -52, -46,
585
- -19, -99, -139, -191, -193, -187, -108, -107, -193, -131,
586
- -129, -193, -193, -193, -193, -171, -172, -193, -193, -154,
587
- -34, -57, -35, -191, -155, -157, -193, -193, -190, -141,
588
- -106, -193, -193, -135, -177, -175, -174, -153, -55, -140,
589
- -138, -193, -110, -193, -133, -109, -132 ]
596
+ -174, -200, -15, -3, -165, -200, -16, -5, -163, -200,
597
+ -17, -6, -200, -7, -8, -200, -164, -9, -200, -10,
598
+ -200, -200, -11, -200, -12, -200, -200, -39, -200, -13,
599
+ -1, -14, -2, -200, -200, -174, -164, -72, -171, -170,
600
+ -169, -199, -173, -174, -172, -166, -168, -79, -191, -200,
601
+ -31, -200, -33, -32, -200, -63, -102, -21, -104, -103,
602
+ -22, -62, -23, -61, -26, -153, -200, -27, -152, -151,
603
+ -28, -29, -30, -200, -94, -112, -90, -200, -200, -97,
604
+ -91, -95, -99, -92, -200, -96, -93, -200, -98, -200,
605
+ -200, -72, -174, -174, -42, -154, -156, -200, -174, -40,
606
+ -38, -200, -4, -70, -71, -200, -200, -187, -73, -67,
607
+ -64, -63, -59, -62, -197, -65, -57, -68, -200, -66,
608
+ -150, -69, -149, -200, -200, -185, -200, -77, -78, -80,
609
+ -200, -197, -200, -20, -200, -82, -200, -200, -200, -200,
610
+ -200, -194, -128, -121, -200, -200, -200, -200, -200, -200,
611
+ -200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
612
+ -200, -200, -200, -200, -197, -174, -200, -46, -48, -200,
613
+ -62, -55, -54, -45, -200, -79, -200, 329, -175, -200,
614
+ -176, -189, -188, -190, -200, -200, -60, -200, -200, -198,
615
+ -72, -186, -200, -167, -200, -200, -198, -200, -147, -139,
616
+ -140, -62, -145, -200, -148, -146, -18, -200, -105, -200,
617
+ -195, -196, -24, -25, -101, -200, -131, -192, -196, -117,
618
+ -119, -123, -120, -125, -130, -127, -124, -113, -129, -126,
619
+ -122, -114, -109, -200, -115, -116, -118, -137, -200, -133,
620
+ -200, -106, -200, -200, -200, -51, -50, -44, -200, -200,
621
+ -43, -197, -155, -184, -200, -200, -179, -182, -200, -160,
622
+ -200, -34, -58, -75, -35, -74, -197, -162, -200, -76,
623
+ -37, -81, -200, -142, -197, -19, -83, -100, -193, -108,
624
+ -200, -109, -132, -134, -200, -200, -36, -49, -47, -88,
625
+ -84, -52, -85, -89, -86, -87, -53, -200, -200, -177,
626
+ -178, -200, -200, -158, -200, -159, -56, -161, -144, -200,
627
+ -200, -196, -200, -107, -200, -138, -41, -183, -180, -181,
628
+ -157, -143, -141, -111, -200, -136, -200, -110, -135 ]
590
629
 
591
630
  racc_goto_table = [
592
- 7, 92, 65, 11, 214, 115, 180, 19, 170, 243,
593
- 107, 164, 211, 56, 50, 189, 104, 36, 235, 7,
594
- 90, 71, 11, 15, 42, 199, 277, 63, 261, 268,
595
- 22, 296, 125, 127, 237, 269, 113, 234, 46, 96,
596
- 65, 106, 212, 245, 273, 94, 131, 158, 102, 39,
597
- 110, 56, 129, 160, 241, 242, 91, 175, 162, 71,
598
- nil, nil, 247, nil, nil, 63, 103, 136, 93, 111,
599
- nil, nil, 300, nil, nil, nil, nil, nil, nil, nil,
600
- nil, 272, nil, nil, nil, nil, nil, 167, nil, 211,
601
- nil, nil, 114, nil, nil, nil, nil, 279, nil, 199,
602
- 62, nil, 114, 191, nil, nil, 172, nil, nil, nil,
603
- nil, nil, 63, 237, 176, nil, nil, 65, nil, nil,
604
- nil, 65, 208, 114, 182, nil, 159, 184, 200, nil,
605
- nil, nil, 56, 204, 122, 122, 71, nil, 62, 306,
606
- 71, nil, 63, nil, 208, nil, 63, 63, nil, nil,
607
- 7, nil, nil, 11, 107, nil, 170, 229, 69, 291,
608
- 254, 303, nil, 259, nil, nil, nil, 309, nil, 63,
609
- nil, nil, nil, 297, nil, 211, nil, 7, nil, nil,
610
- 11, 264, 264, 7, 249, 165, 11, nil, nil, nil,
611
- 255, 65, nil, 308, nil, nil, 69, nil, nil, 208,
612
- 266, 266, 200, nil, nil, 122, 63, 63, 293, nil,
613
- 71, 92, nil, nil, nil, 62, 63, nil, nil, 62,
614
- 207, nil, nil, 208, 63, nil, 251, 252, nil, 7,
615
- nil, 92, 11, 257, 58, 167, nil, 92, nil, nil,
616
- nil, nil, 207, 171, 7, 67, nil, 11, 63, 7,
617
- nil, 288, 11, nil, 172, 7, nil, nil, 11, nil,
618
- 63, nil, nil, nil, nil, 72, nil, nil, 121, 121,
619
- 92, 208, 58, 69, nil, 95, nil, 69, 171, 263,
620
- 263, nil, nil, 67, 122, 208, nil, nil, 7, 62,
621
- nil, 11, nil, 92, nil, 92, 63, 207, nil, nil,
622
- 171, 7, 7, 72, 11, 11, nil, nil, 311, 313,
623
- 63, 7, nil, 7, 11, nil, 11, nil, nil, 163,
624
- nil, 207, 299, nil, nil, nil, nil, nil, nil, nil,
625
- 169, 304, 305, 165, nil, nil, nil, 171, 171, 121,
626
- nil, nil, nil, nil, nil, nil, nil, 69, nil, 58,
627
- 173, nil, nil, 58, 206, 171, nil, nil, nil, nil,
628
- 67, nil, nil, nil, 67, 169, nil, nil, nil, 207,
629
- nil, nil, nil, nil, nil, nil, 206, nil, nil, 171,
630
- 72, nil, nil, 207, 72, 213, nil, 169, nil, nil,
631
- nil, 171, nil, nil, nil, nil, nil, nil, nil, nil,
632
- nil, nil, nil, nil, nil, nil, nil, 213, 238, nil,
633
- nil, nil, nil, 262, 262, nil, nil, nil, 121, nil,
634
- nil, nil, nil, 58, 265, 265, nil, 171, nil, 84,
635
- nil, 206, nil, nil, 67, nil, nil, nil, nil, nil,
636
- nil, 171, 169, nil, 267, 267, 99, 100, nil, nil,
637
- nil, nil, nil, nil, 72, 206, nil, nil, nil, nil,
638
- nil, nil, 213, nil, nil, nil, 169, 163, nil, nil,
639
- nil, nil, nil, nil, nil, nil, nil, nil, 169, nil,
640
- nil, nil, nil, nil, nil, nil, 213, 135, nil, nil,
641
- 138, nil, nil, nil, nil, nil, nil, nil, 173, nil,
642
- 154, nil, nil, 206, nil, nil, nil, nil, nil, nil,
643
- nil, nil, nil, nil, 169, nil, nil, 206, nil, nil,
644
- nil, nil, nil, nil, nil, nil, nil, nil, 169, nil,
645
- nil, nil, nil, nil, 213, nil, nil, nil, nil, nil,
646
- nil, nil, nil, nil, nil, nil, nil, nil, 213, nil,
647
- nil, nil, 218, 219, 220, 221, 222, 223, 224, 225,
648
- 226, 227, 228, nil, 231, 232, 233 ]
631
+ 15, 21, 102, 197, 30, 116, 200, 114, 42, 256,
632
+ 188, 131, 50, 57, 121, 45, 62, 35, 239, 212,
633
+ 32, 166, 174, 279, 69, 25, 136, 195, 271, 101,
634
+ 15, 21, 237, 109, 291, 296, 309, 127, 98, 238,
635
+ 288, 94, 199, 185, 274, 69, 96, 50, 134, 140,
636
+ 67, 62, 72, 179, 106, 107, 43, 124, 112, 69,
637
+ 242, 164, 162, 125, 191, 254, 255, 100, 182, nil,
638
+ nil, 117, 313, 122, 197, nil, nil, 273, nil, nil,
639
+ nil, nil, nil, nil, nil, 67, nil, 72, nil, 212,
640
+ nil, nil, nil, nil, 243, 283, nil, nil, nil, nil,
641
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 237,
642
+ nil, nil, nil, nil, nil, nil, nil, 181, 180, 42,
643
+ nil, 89, 42, nil, nil, nil, 172, 172, nil, 193,
644
+ nil, nil, 318, 50, 50, 215, nil, 213, 62, 251,
645
+ 69, nil, nil, nil, nil, 69, 69, 297, 227, nil,
646
+ nil, nil, 231, nil, 262, 135, 315, 15, 21, nil,
647
+ 266, 233, 306, 121, nil, 127, 204, nil, 122, 69,
648
+ 310, 67, 67, 72, 72, nil, nil, nil, 135, 265,
649
+ 197, nil, 109, 321, 15, 21, 127, nil, 260, nil,
650
+ nil, 135, 15, 21, 69, 204, 268, 122, nil, 172,
651
+ nil, nil, nil, 50, nil, 102, nil, 213, nil, nil,
652
+ nil, 69, nil, nil, 53, 69, nil, 71, nil, nil,
653
+ 117, 95, 122, nil, nil, nil, nil, nil, nil, nil,
654
+ 64, nil, 102, 15, 21, 110, nil, 204, 120, 122,
655
+ 102, 67, nil, 72, 289, 289, 69, nil, nil, 53,
656
+ nil, 115, 71, nil, nil, nil, 69, 69, 15, 21,
657
+ 15, 21, 304, nil, nil, 64, nil, nil, 15, 21,
658
+ nil, nil, 204, 70, 122, nil, 102, nil, 172, nil,
659
+ nil, nil, 293, 293, 122, 122, nil, nil, 263, nil,
660
+ nil, nil, nil, 69, 119, 269, 102, nil, 102, nil,
661
+ nil, nil, nil, nil, 15, 21, 171, 171, 70, nil,
662
+ 276, nil, 15, 21, 15, 21, 324, 69, 326, 204,
663
+ nil, 122, nil, nil, 15, 21, 15, 21, nil, nil,
664
+ 198, nil, nil, 120, nil, 53, 53, nil, 71, 71,
665
+ nil, nil, nil, 204, nil, 122, 202, nil, nil, nil,
666
+ nil, 64, 64, nil, nil, nil, nil, nil, nil, 198,
667
+ nil, nil, 120, nil, nil, nil, nil, nil, nil, nil,
668
+ nil, nil, nil, 308, 252, 202, nil, nil, nil, 171,
669
+ nil, nil, nil, nil, 110, nil, nil, 120, nil, 205,
670
+ nil, nil, nil, nil, 70, 70, nil, nil, nil, 317,
671
+ 115, 198, nil, 319, 120, 53, nil, nil, 71, nil,
672
+ nil, nil, nil, nil, nil, nil, nil, 202, 205, 87,
673
+ nil, 64, nil, nil, nil, nil, nil, nil, nil, nil,
674
+ nil, nil, nil, nil, 103, 104, 198, nil, nil, 120,
675
+ nil, nil, nil, 119, nil, nil, 290, 290, nil, 295,
676
+ 295, nil, 202, nil, nil, nil, nil, nil, 171, nil,
677
+ 205, nil, 292, 292, 70, nil, nil, nil, nil, nil,
678
+ nil, nil, nil, nil, 139, nil, nil, nil, nil, 142,
679
+ nil, nil, nil, 198, nil, 143, 120, nil, nil, nil,
680
+ nil, nil, nil, nil, nil, 205, nil, nil, nil, 202,
681
+ nil, nil, nil, nil, nil, 294, 294, 198, nil, nil,
682
+ 120, nil, nil, nil, nil, nil, nil, nil, nil, nil,
683
+ nil, nil, nil, 202, nil, nil, nil, nil, nil, nil,
684
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
685
+ nil, nil, 205, nil, nil, 219, 220, 221, 222, 223,
686
+ 224, 225, 226, nil, 228, 229, 230, nil, nil, 234,
687
+ 235, 236, nil, nil, nil, nil, 205 ]
649
688
 
650
689
  racc_goto_check = [
651
- 20, 4, 23, 33, 60, 31, 32, 2, 46, 70,
652
- 48, 43, 58, 20, 18, 32, 51, 28, 56, 20,
653
- 33, 26, 33, 1, 67, 19, 54, 45, 42, 42,
654
- 3, 53, 37, 37, 58, 38, 52, 55, 36, 28,
655
- 23, 34, 59, 30, 61, 62, 52, 63, 64, 65,
656
- 66, 20, 18, 29, 68, 69, 5, 71, 31, 26,
657
- nil, nil, 32, nil, nil, 45, 3, 52, 49, 3,
658
- nil, nil, 54, nil, nil, nil, nil, nil, nil, nil,
659
- nil, 60, nil, nil, nil, nil, nil, 23, nil, 58,
660
- nil, nil, 49, nil, nil, nil, nil, 56, nil, 19,
661
- 22, nil, 49, 37, nil, nil, 26, nil, nil, nil,
662
- nil, nil, 45, 58, 28, nil, nil, 23, nil, nil,
663
- nil, 23, 23, 49, 67, nil, 3, 67, 20, nil,
664
- nil, nil, 20, 18, 22, 22, 26, nil, 22, 70,
665
- 26, nil, 45, nil, 23, nil, 45, 45, nil, nil,
666
- 20, nil, nil, 33, 48, nil, 46, 2, 25, 43,
667
- 51, 58, nil, 48, nil, nil, nil, 60, nil, 45,
668
- nil, nil, nil, 32, nil, 58, nil, 20, nil, nil,
669
- 33, 23, 23, 20, 2, 22, 33, nil, nil, nil,
670
- 2, 23, nil, 32, nil, nil, 25, nil, nil, 23,
671
- 26, 26, 20, nil, nil, 22, 45, 45, 31, nil,
672
- 26, 4, nil, nil, nil, 22, 45, nil, nil, 22,
673
- 22, nil, nil, 23, 45, nil, 49, 49, nil, 20,
674
- nil, 4, 33, 49, 21, 23, nil, 4, nil, nil,
675
- nil, nil, 22, 25, 20, 24, nil, 33, 45, 20,
676
- nil, 2, 33, nil, 26, 20, nil, nil, 33, nil,
677
- 45, nil, nil, nil, nil, 27, nil, nil, 21, 21,
678
- 4, 23, 21, 25, nil, 27, nil, 25, 25, 22,
679
- 22, nil, nil, 24, 22, 23, nil, nil, 20, 22,
680
- nil, 33, nil, 4, nil, 4, 45, 22, nil, nil,
681
- 25, 20, 20, 27, 33, 33, nil, nil, 2, 2,
682
- 45, 20, nil, 20, 33, nil, 33, nil, nil, 21,
683
- nil, 22, 49, nil, nil, nil, nil, nil, nil, nil,
684
- 24, 49, 49, 22, nil, nil, nil, 25, 25, 21,
685
- nil, nil, nil, nil, nil, nil, nil, 25, nil, 21,
686
- 27, nil, nil, 21, 21, 25, nil, nil, nil, nil,
687
- 24, nil, nil, nil, 24, 24, nil, nil, nil, 22,
688
- nil, nil, nil, nil, nil, nil, 21, nil, nil, 25,
689
- 27, nil, nil, 22, 27, 27, nil, 24, nil, nil,
690
- nil, 25, nil, nil, nil, nil, nil, nil, nil, nil,
691
- nil, nil, nil, nil, nil, nil, nil, 27, 27, nil,
692
- nil, nil, nil, 21, 21, nil, nil, nil, 21, nil,
693
- nil, nil, nil, 21, 24, 24, nil, 25, nil, 47,
694
- nil, 21, nil, nil, 24, nil, nil, nil, nil, nil,
695
- nil, 25, 24, nil, 27, 27, 47, 47, nil, nil,
696
- nil, nil, nil, nil, 27, 21, nil, nil, nil, nil,
697
- nil, nil, 27, nil, nil, nil, 24, 21, nil, nil,
698
- nil, nil, nil, nil, nil, nil, nil, nil, 24, nil,
699
- nil, nil, nil, nil, nil, nil, 27, 47, nil, nil,
700
- 47, nil, nil, nil, nil, nil, nil, nil, 27, nil,
701
- 47, nil, nil, 21, nil, nil, nil, nil, nil, nil,
702
- nil, nil, nil, nil, 24, nil, nil, 21, nil, nil,
703
- nil, nil, nil, nil, nil, nil, nil, nil, 24, nil,
704
- nil, nil, nil, nil, 27, nil, nil, nil, nil, nil,
705
- nil, nil, nil, nil, nil, nil, nil, nil, 27, nil,
706
- nil, nil, 47, 47, 47, 47, 47, 47, 47, 47,
707
- 47, 47, 47, nil, 47, 47, 47 ]
690
+ 20, 33, 4, 59, 2, 43, 61, 31, 55, 72,
691
+ 32, 34, 26, 18, 46, 68, 20, 28, 57, 19,
692
+ 3, 37, 37, 54, 45, 1, 52, 32, 51, 33,
693
+ 20, 33, 59, 26, 42, 42, 53, 48, 28, 56,
694
+ 38, 36, 60, 30, 62, 45, 63, 26, 18, 52,
695
+ 22, 20, 25, 64, 65, 3, 66, 67, 29, 45,
696
+ 32, 31, 52, 3, 69, 70, 71, 5, 73, nil,
697
+ nil, 22, 54, 25, 59, nil, nil, 61, nil, nil,
698
+ nil, nil, nil, nil, nil, 22, nil, 25, nil, 19,
699
+ nil, nil, nil, nil, 37, 57, nil, nil, nil, nil,
700
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 59,
701
+ nil, nil, nil, nil, nil, nil, nil, 28, 3, 55,
702
+ nil, 49, 55, nil, nil, nil, 22, 22, nil, 68,
703
+ nil, nil, 72, 26, 26, 18, nil, 20, 20, 34,
704
+ 45, nil, nil, nil, nil, 45, 45, 32, 55, nil,
705
+ nil, nil, 55, nil, 43, 49, 59, 20, 33, nil,
706
+ 31, 2, 32, 46, nil, 48, 22, nil, 25, 45,
707
+ 32, 22, 22, 25, 25, nil, nil, nil, 49, 48,
708
+ 59, nil, 26, 61, 20, 33, 48, nil, 2, nil,
709
+ nil, 49, 20, 33, 45, 22, 2, 25, nil, 22,
710
+ nil, nil, nil, 26, nil, 4, nil, 20, nil, nil,
711
+ nil, 45, nil, nil, 27, 45, nil, 24, nil, nil,
712
+ 22, 27, 25, nil, nil, nil, nil, nil, nil, nil,
713
+ 21, nil, 4, 20, 33, 27, nil, 22, 24, 25,
714
+ 4, 22, nil, 25, 26, 26, 45, nil, nil, 27,
715
+ nil, 21, 24, nil, nil, nil, 45, 45, 20, 33,
716
+ 20, 33, 2, nil, nil, 21, nil, nil, 20, 33,
717
+ nil, nil, 22, 23, 25, nil, 4, nil, 22, nil,
718
+ nil, nil, 22, 22, 25, 25, nil, nil, 49, nil,
719
+ nil, nil, nil, 45, 23, 49, 4, nil, 4, nil,
720
+ nil, nil, nil, nil, 20, 33, 21, 21, 23, nil,
721
+ 49, nil, 20, 33, 20, 33, 2, 45, 2, 22,
722
+ nil, 25, nil, nil, 20, 33, 20, 33, nil, nil,
723
+ 27, nil, nil, 24, nil, 27, 27, nil, 24, 24,
724
+ nil, nil, nil, 22, nil, 25, 21, nil, nil, nil,
725
+ nil, 21, 21, nil, nil, nil, nil, nil, nil, 27,
726
+ nil, nil, 24, nil, nil, nil, nil, nil, nil, nil,
727
+ nil, nil, nil, 49, 27, 21, nil, nil, nil, 21,
728
+ nil, nil, nil, nil, 27, nil, nil, 24, nil, 23,
729
+ nil, nil, nil, nil, 23, 23, nil, nil, nil, 49,
730
+ 21, 27, nil, 49, 24, 27, nil, nil, 24, nil,
731
+ nil, nil, nil, nil, nil, nil, nil, 21, 23, 47,
732
+ nil, 21, nil, nil, nil, nil, nil, nil, nil, nil,
733
+ nil, nil, nil, nil, 47, 47, 27, nil, nil, 24,
734
+ nil, nil, nil, 23, nil, nil, 27, 27, nil, 24,
735
+ 24, nil, 21, nil, nil, nil, nil, nil, 21, nil,
736
+ 23, nil, 21, 21, 23, nil, nil, nil, nil, nil,
737
+ nil, nil, nil, nil, 47, nil, nil, nil, nil, 47,
738
+ nil, nil, nil, 27, nil, 47, 24, nil, nil, nil,
739
+ nil, nil, nil, nil, nil, 23, nil, nil, nil, 21,
740
+ nil, nil, nil, nil, nil, 23, 23, 27, nil, nil,
741
+ 24, nil, nil, nil, nil, nil, nil, nil, nil, nil,
742
+ nil, nil, nil, 21, nil, nil, nil, nil, nil, nil,
743
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
744
+ nil, nil, 23, nil, nil, 47, 47, 47, 47, 47,
745
+ 47, 47, 47, nil, 47, 47, 47, nil, nil, 47,
746
+ 47, 47, nil, nil, nil, nil, 23 ]
708
747
 
709
748
  racc_goto_pointer = [
710
- nil, 23, 7, 30, -18, 39, nil, nil, nil, nil,
711
- nil, nil, nil, nil, nil, nil, nil, nil, 1, -103,
712
- 0, 221, 87, -11, 232, 145, 8, 252, 13, -45,
713
- -117, -40, -100, 3, 4, nil, 27, -15, -162, nil,
714
- nil, nil, -164, -87, nil, 14, -90, 413, -27, 48,
715
- nil, -21, -8, -242, -204, -118, -137, nil, -121, -91,
716
- -129, -166, 22, -49, 12, 40, 11, 15, -103, -102,
717
- -148, -44 ]
749
+ nil, 25, 4, 20, -28, 39, nil, nil, nil, nil,
750
+ nil, nil, nil, nil, nil, nil, nil, nil, -3, -118,
751
+ 0, 214, 34, 257, 201, 36, -4, 198, 12, 21,
752
+ -69, -30, -104, 1, -36, nil, 20, -71, -204, nil,
753
+ nil, nil, -214, -32, nil, 8, -23, 401, -10, 101,
754
+ nil, -168, -28, -238, -209, -4, -122, -143, nil, -129,
755
+ -90, -126, -159, 23, -45, 19, 44, 14, 3, -59,
756
+ -113, -112, -169, -37 ]
718
757
 
719
758
  racc_goto_default = [
720
- nil, nil, nil, 124, 25, 29, 32, 2, 5, 8,
721
- 10, 12, 14, 18, 21, 24, 28, 31, nil, 53,
722
- 76, 78, 79, 81, 83, 85, 86, 89, 30, nil,
723
- nil, nil, nil, 59, nil, 17, nil, nil, 126, 197,
724
- 119, 120, nil, nil, 166, 80, 82, nil, 117, 88,
725
- 108, nil, nil, 185, nil, nil, nil, 236, 68, nil,
726
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
727
- nil, nil ]
759
+ nil, nil, nil, 173, 3, 7, 11, 13, 14, 17,
760
+ 19, 22, 24, 29, 31, 2, 6, 10, nil, 60,
761
+ 79, 80, 81, 83, 86, 88, 74, 76, 9, nil,
762
+ nil, nil, nil, 66, nil, 28, nil, nil, 167, 244,
763
+ 168, 169, nil, nil, 118, 82, 85, nil, 108, 75,
764
+ 128, 129, nil, 209, nil, 65, nil, nil, 240, 49,
765
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 46,
766
+ nil, nil, nil, nil ]
728
767
 
729
768
  racc_token_table = {
730
769
  false => 0,
@@ -785,11 +824,14 @@ racc_token_table = {
785
824
  :DIV => 55,
786
825
  :LSHIFT => 56,
787
826
  :RSHIFT => 57,
788
- :UMINUS => 58 }
827
+ :UMINUS => 58,
828
+ :MATCH => 59,
829
+ :NOMATCH => 60,
830
+ :REGEX => 61 }
789
831
 
790
832
  racc_use_result_var = true
791
833
 
792
- racc_nt_base = 59
834
+ racc_nt_base = 62
793
835
 
794
836
  Racc_arg = [
795
837
  racc_action_table,
@@ -867,6 +909,9 @@ Racc_token_to_s_table = [
867
909
  'LSHIFT',
868
910
  'RSHIFT',
869
911
  'UMINUS',
912
+ 'MATCH',
913
+ 'NOMATCH',
914
+ 'REGEX',
870
915
  '$start',
871
916
  'program',
872
917
  'statements',
@@ -922,6 +967,7 @@ Racc_token_to_s_table = [
922
967
  'rvalues',
923
968
  'comma',
924
969
  'else',
970
+ 'regex',
925
971
  'caseopts',
926
972
  'caseopt',
927
973
  'casevalues',
@@ -934,6 +980,7 @@ Racc_token_to_s_table = [
934
980
  'classparent',
935
981
  'hostnames',
936
982
  'nodeparent',
983
+ 'nodename',
937
984
  'hostname',
938
985
  'nothing',
939
986
  'arguments',
@@ -946,7 +993,7 @@ Racc_debug_parser = false
946
993
 
947
994
  # reduce 0 omitted
948
995
 
949
- module_eval <<'.,.,', 'grammar.ra', 42
996
+ module_eval <<'.,.,', 'grammar.ra', 44
950
997
  def _reduce_1( val, _values, result )
951
998
  if val[0]
952
999
  # Make sure we always return an array.
@@ -970,7 +1017,7 @@ module_eval <<'.,.,', 'grammar.ra', 42
970
1017
 
971
1018
  # reduce 3 omitted
972
1019
 
973
- module_eval <<'.,.,', 'grammar.ra', 58
1020
+ module_eval <<'.,.,', 'grammar.ra', 60
974
1021
  def _reduce_4( val, _values, result )
975
1022
  if val[0] and val[1]
976
1023
  if val[0].instance_of?(AST::ASTArray)
@@ -1013,43 +1060,47 @@ module_eval <<'.,.,', 'grammar.ra', 58
1013
1060
 
1014
1061
  # reduce 17 omitted
1015
1062
 
1016
- module_eval <<'.,.,', 'grammar.ra', 81
1063
+ module_eval <<'.,.,', 'grammar.ra', 84
1017
1064
  def _reduce_18( val, _values, result )
1018
1065
  args = aryfy(val[2])
1019
1066
  result = ast AST::Function,
1020
- :name => val[0],
1067
+ :name => val[0][:value],
1068
+ :line => val[0][:line],
1021
1069
  :arguments => args,
1022
1070
  :ftype => :statement
1023
1071
  result
1024
1072
  end
1025
1073
  .,.,
1026
1074
 
1027
- module_eval <<'.,.,', 'grammar.ra', 88
1075
+ module_eval <<'.,.,', 'grammar.ra', 92
1028
1076
  def _reduce_19( val, _values, result )
1029
1077
  args = aryfy(val[2])
1030
1078
  result = ast AST::Function,
1031
- :name => val[0],
1079
+ :name => val[0][:value],
1080
+ :line => val[0][:line],
1032
1081
  :arguments => args,
1033
1082
  :ftype => :statement
1034
1083
  result
1035
1084
  end
1036
1085
  .,.,
1037
1086
 
1038
- module_eval <<'.,.,', 'grammar.ra', 93
1087
+ module_eval <<'.,.,', 'grammar.ra', 98
1039
1088
  def _reduce_20( val, _values, result )
1040
1089
  result = ast AST::Function,
1041
- :name => val[0],
1090
+ :name => val[0][:value],
1091
+ :line => val[0][:line],
1042
1092
  :arguments => AST::ASTArray.new({}),
1043
1093
  :ftype => :statement
1044
1094
  result
1045
1095
  end
1046
1096
  .,.,
1047
1097
 
1048
- module_eval <<'.,.,', 'grammar.ra', 100
1098
+ module_eval <<'.,.,', 'grammar.ra', 106
1049
1099
  def _reduce_21( val, _values, result )
1050
1100
  args = aryfy(val[1])
1051
1101
  result = ast AST::Function,
1052
- :name => val[0],
1102
+ :name => val[0][:value],
1103
+ :line => val[0][:line],
1053
1104
  :arguments => args,
1054
1105
  :ftype => :statement
1055
1106
  result
@@ -1060,7 +1111,7 @@ module_eval <<'.,.,', 'grammar.ra', 100
1060
1111
 
1061
1112
  # reduce 23 omitted
1062
1113
 
1063
- module_eval <<'.,.,', 'grammar.ra', 108
1114
+ module_eval <<'.,.,', 'grammar.ra', 114
1064
1115
  def _reduce_24( val, _values, result )
1065
1116
  result = aryfy(val[0], val[2])
1066
1117
  result.line = @lexer.line
@@ -1069,7 +1120,7 @@ module_eval <<'.,.,', 'grammar.ra', 108
1069
1120
  end
1070
1121
  .,.,
1071
1122
 
1072
- module_eval <<'.,.,', 'grammar.ra', 117
1123
+ module_eval <<'.,.,', 'grammar.ra', 123
1073
1124
  def _reduce_25( val, _values, result )
1074
1125
  unless val[0].is_a?(AST::ASTArray)
1075
1126
  val[0] = aryfy(val[0])
@@ -1096,14 +1147,14 @@ module_eval <<'.,.,', 'grammar.ra', 117
1096
1147
 
1097
1148
  # reduce 32 omitted
1098
1149
 
1099
- module_eval <<'.,.,', 'grammar.ra', 130
1150
+ module_eval <<'.,.,', 'grammar.ra', 136
1100
1151
  def _reduce_33( val, _values, result )
1101
- result = ast AST::Name, :value => val[0]
1152
+ result = ast AST::Name, :value => val[0][:value]
1102
1153
  result
1103
1154
  end
1104
1155
  .,.,
1105
1156
 
1106
- module_eval <<'.,.,', 'grammar.ra', 152
1157
+ module_eval <<'.,.,', 'grammar.ra', 158
1107
1158
  def _reduce_34( val, _values, result )
1108
1159
  @lexer.commentpop
1109
1160
  array = val[2]
@@ -1128,7 +1179,7 @@ module_eval <<'.,.,', 'grammar.ra', 152
1128
1179
  end
1129
1180
  .,.,
1130
1181
 
1131
- module_eval <<'.,.,', 'grammar.ra', 155
1182
+ module_eval <<'.,.,', 'grammar.ra', 161
1132
1183
  def _reduce_35( val, _values, result )
1133
1184
  # This is a deprecated syntax.
1134
1185
  error "All resource specifications require names"
@@ -1136,7 +1187,7 @@ module_eval <<'.,.,', 'grammar.ra', 155
1136
1187
  end
1137
1188
  .,.,
1138
1189
 
1139
- module_eval <<'.,.,', 'grammar.ra', 158
1190
+ module_eval <<'.,.,', 'grammar.ra', 164
1140
1191
  def _reduce_36( val, _values, result )
1141
1192
  # a defaults setting for a type
1142
1193
  result = ast(AST::ResourceDefaults, :type => val[0], :params => val[2])
@@ -1144,7 +1195,7 @@ module_eval <<'.,.,', 'grammar.ra', 158
1144
1195
  end
1145
1196
  .,.,
1146
1197
 
1147
- module_eval <<'.,.,', 'grammar.ra', 164
1198
+ module_eval <<'.,.,', 'grammar.ra', 170
1148
1199
  def _reduce_37( val, _values, result )
1149
1200
  @lexer.commentpop
1150
1201
  result = ast AST::ResourceOverride, :object => val[0], :params => val[2]
@@ -1152,7 +1203,7 @@ module_eval <<'.,.,', 'grammar.ra', 164
1152
1203
  end
1153
1204
  .,.,
1154
1205
 
1155
- module_eval <<'.,.,', 'grammar.ra', 191
1206
+ module_eval <<'.,.,', 'grammar.ra', 197
1156
1207
  def _reduce_38( val, _values, result )
1157
1208
  type = val[0]
1158
1209
 
@@ -1180,27 +1231,27 @@ module_eval <<'.,.,', 'grammar.ra', 191
1180
1231
  end
1181
1232
  .,.,
1182
1233
 
1183
- module_eval <<'.,.,', 'grammar.ra', 192
1234
+ module_eval <<'.,.,', 'grammar.ra', 198
1184
1235
  def _reduce_39( val, _values, result )
1185
1236
  result = :virtual
1186
1237
  result
1187
1238
  end
1188
1239
  .,.,
1189
1240
 
1190
- module_eval <<'.,.,', 'grammar.ra', 193
1241
+ module_eval <<'.,.,', 'grammar.ra', 199
1191
1242
  def _reduce_40( val, _values, result )
1192
1243
  result = :exported
1193
1244
  result
1194
1245
  end
1195
1246
  .,.,
1196
1247
 
1197
- module_eval <<'.,.,', 'grammar.ra', 216
1248
+ module_eval <<'.,.,', 'grammar.ra', 223
1198
1249
  def _reduce_41( val, _values, result )
1199
1250
  if val[0] =~ /^[a-z]/
1200
1251
  Puppet.warning addcontext("Collection names must now be capitalized")
1201
1252
  end
1202
1253
  type = val[0].downcase
1203
- args = {:type => type }
1254
+ args = {:type => type}
1204
1255
 
1205
1256
  if val[1].is_a?(AST::CollExpr)
1206
1257
  args[:query] = val[1]
@@ -1212,13 +1263,37 @@ module_eval <<'.,.,', 'grammar.ra', 216
1212
1263
  if args[:form] == :exported and ! Puppet[:storeconfigs] and ! Puppet[:parseonly]
1213
1264
  Puppet.warning addcontext("You cannot collect exported resources without storeconfigs being set; the collection will be ignored")
1214
1265
  end
1266
+ args[:override] = val[3]
1215
1267
  result = ast AST::Collection, args
1216
1268
  result
1217
1269
  end
1218
1270
  .,.,
1219
1271
 
1220
- module_eval <<'.,.,', 'grammar.ra', 226
1272
+ module_eval <<'.,.,', 'grammar.ra', 242
1221
1273
  def _reduce_42( val, _values, result )
1274
+ if val[0] =~ /^[a-z]/
1275
+ Puppet.warning addcontext("Collection names must now be capitalized")
1276
+ end
1277
+ type = val[0].downcase
1278
+ args = {:type => type }
1279
+
1280
+ if val[1].is_a?(AST::CollExpr)
1281
+ args[:query] = val[1]
1282
+ args[:query].type = type
1283
+ args[:form] = args[:query].form
1284
+ else
1285
+ args[:form] = val[1]
1286
+ end
1287
+ if args[:form] == :exported and ! Puppet[:storeconfigs] and ! Puppet[:parseonly]
1288
+ Puppet.warning addcontext("You cannot collect exported resources without storeconfigs being set; the collection will be ignored")
1289
+ end
1290
+ result = ast AST::Collection, args
1291
+ result
1292
+ end
1293
+ .,.,
1294
+
1295
+ module_eval <<'.,.,', 'grammar.ra', 252
1296
+ def _reduce_43( val, _values, result )
1222
1297
  if val[1]
1223
1298
  result = val[1]
1224
1299
  result.form = :virtual
@@ -1229,8 +1304,8 @@ module_eval <<'.,.,', 'grammar.ra', 226
1229
1304
  end
1230
1305
  .,.,
1231
1306
 
1232
- module_eval <<'.,.,', 'grammar.ra', 234
1233
- def _reduce_43( val, _values, result )
1307
+ module_eval <<'.,.,', 'grammar.ra', 260
1308
+ def _reduce_44( val, _values, result )
1234
1309
  if val[1]
1235
1310
  result = val[1]
1236
1311
  result.form = :exported
@@ -1241,64 +1316,74 @@ module_eval <<'.,.,', 'grammar.ra', 234
1241
1316
  end
1242
1317
  .,.,
1243
1318
 
1244
- # reduce 44 omitted
1245
-
1246
1319
  # reduce 45 omitted
1247
1320
 
1248
- module_eval <<'.,.,', 'grammar.ra', 242
1249
- def _reduce_46( val, _values, result )
1321
+ # reduce 46 omitted
1322
+
1323
+ module_eval <<'.,.,', 'grammar.ra', 268
1324
+ def _reduce_47( val, _values, result )
1250
1325
  result = ast AST::CollExpr, :test1 => val[0], :oper => val[1], :test2 => val[2]
1251
1326
  result
1252
1327
  end
1253
1328
  .,.,
1254
1329
 
1255
- # reduce 47 omitted
1330
+ # reduce 48 omitted
1256
1331
 
1257
- module_eval <<'.,.,', 'grammar.ra', 248
1258
- def _reduce_48( val, _values, result )
1332
+ module_eval <<'.,.,', 'grammar.ra', 274
1333
+ def _reduce_49( val, _values, result )
1259
1334
  result = val[1]
1260
1335
  result.parens = true
1261
1336
  result
1262
1337
  end
1263
1338
  .,.,
1264
1339
 
1265
- # reduce 49 omitted
1266
-
1267
- # reduce 50 omitted
1340
+ module_eval <<'.,.,', 'grammar.ra', 275
1341
+ def _reduce_50( val, _values, result )
1342
+ result=val[0][:value]
1343
+ result
1344
+ end
1345
+ .,.,
1268
1346
 
1269
- module_eval <<'.,.,', 'grammar.ra', 256
1347
+ module_eval <<'.,.,', 'grammar.ra', 276
1270
1348
  def _reduce_51( val, _values, result )
1271
- result = ast AST::CollExpr, :test1 => val[0], :oper => val[1], :test2 => val[2]
1272
- #result = ast AST::CollExpr
1273
- #result.push *val
1349
+ result=val[0][:value]
1274
1350
  result
1275
1351
  end
1276
1352
  .,.,
1277
1353
 
1278
- module_eval <<'.,.,', 'grammar.ra', 261
1354
+ module_eval <<'.,.,', 'grammar.ra', 283
1279
1355
  def _reduce_52( val, _values, result )
1280
- result = ast AST::CollExpr, :test1 => val[0], :oper => val[1], :test2 => val[2]
1356
+ result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
1281
1357
  #result = ast AST::CollExpr
1282
1358
  #result.push *val
1283
1359
  result
1284
1360
  end
1285
1361
  .,.,
1286
1362
 
1287
- # reduce 53 omitted
1363
+ module_eval <<'.,.,', 'grammar.ra', 288
1364
+ def _reduce_53( val, _values, result )
1365
+ result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
1366
+ #result = ast AST::CollExpr
1367
+ #result.push *val
1368
+ result
1369
+ end
1370
+ .,.,
1288
1371
 
1289
1372
  # reduce 54 omitted
1290
1373
 
1291
- module_eval <<'.,.,', 'grammar.ra', 268
1292
- def _reduce_55( val, _values, result )
1374
+ # reduce 55 omitted
1375
+
1376
+ module_eval <<'.,.,', 'grammar.ra', 295
1377
+ def _reduce_56( val, _values, result )
1293
1378
  result = ast AST::ResourceInstance, :children => [val[0],val[2]]
1294
1379
  result
1295
1380
  end
1296
1381
  .,.,
1297
1382
 
1298
- # reduce 56 omitted
1383
+ # reduce 57 omitted
1299
1384
 
1300
- module_eval <<'.,.,', 'grammar.ra', 278
1301
- def _reduce_57( val, _values, result )
1385
+ module_eval <<'.,.,', 'grammar.ra', 305
1386
+ def _reduce_58( val, _values, result )
1302
1387
  if val[0].instance_of?(AST::ResourceInstance)
1303
1388
  result = ast AST::ASTArray, :children => [val[0],val[2]]
1304
1389
  else
@@ -1309,33 +1394,31 @@ module_eval <<'.,.,', 'grammar.ra', 278
1309
1394
  end
1310
1395
  .,.,
1311
1396
 
1312
- # reduce 58 omitted
1313
-
1314
1397
  # reduce 59 omitted
1315
1398
 
1316
- module_eval <<'.,.,', 'grammar.ra', 285
1317
- def _reduce_60( val, _values, result )
1399
+ # reduce 60 omitted
1400
+
1401
+ module_eval <<'.,.,', 'grammar.ra', 312
1402
+ def _reduce_61( val, _values, result )
1318
1403
  result = ast AST::Undef, :value => :undef
1319
1404
  result
1320
1405
  end
1321
1406
  .,.,
1322
1407
 
1323
- module_eval <<'.,.,', 'grammar.ra', 289
1324
- def _reduce_61( val, _values, result )
1325
- result = ast AST::Name, :value => val[0]
1408
+ module_eval <<'.,.,', 'grammar.ra', 316
1409
+ def _reduce_62( val, _values, result )
1410
+ result = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
1326
1411
  result
1327
1412
  end
1328
1413
  .,.,
1329
1414
 
1330
- module_eval <<'.,.,', 'grammar.ra', 293
1331
- def _reduce_62( val, _values, result )
1332
- result = ast AST::Type, :value => val[0]
1415
+ module_eval <<'.,.,', 'grammar.ra', 320
1416
+ def _reduce_63( val, _values, result )
1417
+ result = ast AST::Type, :value => val[0][:value], :line => val[0][:line]
1333
1418
  result
1334
1419
  end
1335
1420
  .,.,
1336
1421
 
1337
- # reduce 63 omitted
1338
-
1339
1422
  # reduce 64 omitted
1340
1423
 
1341
1424
  # reduce 65 omitted
@@ -1346,42 +1429,44 @@ module_eval <<'.,.,', 'grammar.ra', 293
1346
1429
 
1347
1430
  # reduce 68 omitted
1348
1431
 
1349
- module_eval <<'.,.,', 'grammar.ra', 309
1350
- def _reduce_69( val, _values, result )
1351
- if val[0] =~ /::/
1432
+ # reduce 69 omitted
1433
+
1434
+ module_eval <<'.,.,', 'grammar.ra', 336
1435
+ def _reduce_70( val, _values, result )
1436
+ if val[0][:value] =~ /::/
1352
1437
  raise Puppet::ParseError, "Cannot assign to variables in other namespaces"
1353
1438
  end
1354
1439
  # this is distinct from referencing a variable
1355
- variable = ast AST::Name, :value => val[0]
1356
- result = ast AST::VarDef, :name => variable, :value => val[2]
1440
+ variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
1441
+ result = ast AST::VarDef, :name => variable, :value => val[2], :line => val[0][:line]
1357
1442
  result
1358
1443
  end
1359
1444
  .,.,
1360
1445
 
1361
- module_eval <<'.,.,', 'grammar.ra', 314
1362
- def _reduce_70( val, _values, result )
1363
- variable = ast AST::Name, :value => val[0]
1364
- result = ast AST::VarDef, :name => variable, :value => val[2], :append => true
1446
+ module_eval <<'.,.,', 'grammar.ra', 341
1447
+ def _reduce_71( val, _values, result )
1448
+ variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
1449
+ result = ast AST::VarDef, :name => variable, :value => val[2], :append => true, :line => val[0][:line]
1365
1450
  result
1366
1451
  end
1367
1452
  .,.,
1368
1453
 
1369
- module_eval <<'.,.,', 'grammar.ra', 319
1370
- def _reduce_71( val, _values, result )
1454
+ module_eval <<'.,.,', 'grammar.ra', 346
1455
+ def _reduce_72( val, _values, result )
1371
1456
  result = ast AST::ASTArray
1372
1457
  result
1373
1458
  end
1374
1459
  .,.,
1375
1460
 
1376
- module_eval <<'.,.,', 'grammar.ra', 319
1377
- def _reduce_72( val, _values, result )
1461
+ module_eval <<'.,.,', 'grammar.ra', 346
1462
+ def _reduce_73( val, _values, result )
1378
1463
  result = val[0]
1379
1464
  result
1380
1465
  end
1381
1466
  .,.,
1382
1467
 
1383
- module_eval <<'.,.,', 'grammar.ra', 328
1384
- def _reduce_73( val, _values, result )
1468
+ module_eval <<'.,.,', 'grammar.ra', 355
1469
+ def _reduce_74( val, _values, result )
1385
1470
  if val[0].instance_of?(AST::ASTArray)
1386
1471
  val[0].push(val[2])
1387
1472
  result = val[0]
@@ -1392,41 +1477,41 @@ module_eval <<'.,.,', 'grammar.ra', 328
1392
1477
  end
1393
1478
  .,.,
1394
1479
 
1395
- module_eval <<'.,.,', 'grammar.ra', 332
1396
- def _reduce_74( val, _values, result )
1397
- result = ast AST::ResourceParam, :param => val[0], :value => val[2]
1480
+ module_eval <<'.,.,', 'grammar.ra', 359
1481
+ def _reduce_75( val, _values, result )
1482
+ result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2]
1398
1483
  result
1399
1484
  end
1400
1485
  .,.,
1401
1486
 
1402
- module_eval <<'.,.,', 'grammar.ra', 337
1403
- def _reduce_75( val, _values, result )
1404
- result = ast AST::ResourceParam, :param => val[0], :value => val[2],
1487
+ module_eval <<'.,.,', 'grammar.ra', 364
1488
+ def _reduce_76( val, _values, result )
1489
+ result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2],
1405
1490
  :add => true
1406
1491
  result
1407
1492
  end
1408
1493
  .,.,
1409
1494
 
1410
- # reduce 76 omitted
1411
-
1412
1495
  # reduce 77 omitted
1413
1496
 
1414
- module_eval <<'.,.,', 'grammar.ra', 345
1415
- def _reduce_78( val, _values, result )
1497
+ # reduce 78 omitted
1498
+
1499
+ module_eval <<'.,.,', 'grammar.ra', 372
1500
+ def _reduce_79( val, _values, result )
1416
1501
  result = ast AST::ASTArray
1417
1502
  result
1418
1503
  end
1419
1504
  .,.,
1420
1505
 
1421
- module_eval <<'.,.,', 'grammar.ra', 345
1422
- def _reduce_79( val, _values, result )
1506
+ module_eval <<'.,.,', 'grammar.ra', 372
1507
+ def _reduce_80( val, _values, result )
1423
1508
  result = val[0]
1424
1509
  result
1425
1510
  end
1426
1511
  .,.,
1427
1512
 
1428
- module_eval <<'.,.,', 'grammar.ra', 354
1429
- def _reduce_80( val, _values, result )
1513
+ module_eval <<'.,.,', 'grammar.ra', 381
1514
+ def _reduce_81( val, _values, result )
1430
1515
  if val[0].instance_of?(AST::ASTArray)
1431
1516
  val[0].push(val[2])
1432
1517
  result = val[0]
@@ -1437,10 +1522,10 @@ module_eval <<'.,.,', 'grammar.ra', 354
1437
1522
  end
1438
1523
  .,.,
1439
1524
 
1440
- # reduce 81 omitted
1525
+ # reduce 82 omitted
1441
1526
 
1442
- module_eval <<'.,.,', 'grammar.ra', 363
1443
- def _reduce_82( val, _values, result )
1527
+ module_eval <<'.,.,', 'grammar.ra', 390
1528
+ def _reduce_83( val, _values, result )
1444
1529
  if val[0].instance_of?(AST::ASTArray)
1445
1530
  result = val[0].push(val[2])
1446
1531
  else
@@ -1450,8 +1535,6 @@ module_eval <<'.,.,', 'grammar.ra', 363
1450
1535
  end
1451
1536
  .,.,
1452
1537
 
1453
- # reduce 83 omitted
1454
-
1455
1538
  # reduce 84 omitted
1456
1539
 
1457
1540
  # reduce 85 omitted
@@ -1482,65 +1565,67 @@ module_eval <<'.,.,', 'grammar.ra', 363
1482
1565
 
1483
1566
  # reduce 98 omitted
1484
1567
 
1485
- module_eval <<'.,.,', 'grammar.ra', 390
1486
- def _reduce_99( val, _values, result )
1568
+ # reduce 99 omitted
1569
+
1570
+ module_eval <<'.,.,', 'grammar.ra', 417
1571
+ def _reduce_100( val, _values, result )
1487
1572
  args = aryfy(val[2])
1488
1573
  result = ast AST::Function,
1489
- :name => val[0],
1574
+ :name => val[0][:value], :line => val[0][:line],
1490
1575
  :arguments => args,
1491
1576
  :ftype => :rvalue
1492
1577
  result
1493
1578
  end
1494
1579
  .,.,
1495
1580
 
1496
- module_eval <<'.,.,', 'grammar.ra', 395
1497
- def _reduce_100( val, _values, result )
1581
+ module_eval <<'.,.,', 'grammar.ra', 422
1582
+ def _reduce_101( val, _values, result )
1498
1583
  result = ast AST::Function,
1499
- :name => val[0],
1584
+ :name => val[0][:value], :line => val[0][:line],
1500
1585
  :arguments => AST::ASTArray.new({}),
1501
1586
  :ftype => :rvalue
1502
1587
  result
1503
1588
  end
1504
1589
  .,.,
1505
1590
 
1506
- module_eval <<'.,.,', 'grammar.ra', 399
1507
- def _reduce_101( val, _values, result )
1508
- result = ast AST::String, :value => val[0]
1591
+ module_eval <<'.,.,', 'grammar.ra', 426
1592
+ def _reduce_102( val, _values, result )
1593
+ result = ast AST::String, :value => val[0][:value], :line => val[0][:line]
1509
1594
  result
1510
1595
  end
1511
1596
  .,.,
1512
1597
 
1513
- module_eval <<'.,.,', 'grammar.ra', 401
1514
- def _reduce_102( val, _values, result )
1515
- result = ast AST::FlatString, :value => val[0]
1598
+ module_eval <<'.,.,', 'grammar.ra', 428
1599
+ def _reduce_103( val, _values, result )
1600
+ result = ast AST::FlatString, :value => val[0][:value], :line => val[0][:line]
1516
1601
  result
1517
1602
  end
1518
1603
  .,.,
1519
1604
 
1520
- module_eval <<'.,.,', 'grammar.ra', 405
1521
- def _reduce_103( val, _values, result )
1522
- result = ast AST::Boolean, :value => val[0]
1605
+ module_eval <<'.,.,', 'grammar.ra', 432
1606
+ def _reduce_104( val, _values, result )
1607
+ result = ast AST::Boolean, :value => val[0][:value], :line => val[0][:line]
1523
1608
  result
1524
1609
  end
1525
1610
  .,.,
1526
1611
 
1527
- module_eval <<'.,.,', 'grammar.ra', 410
1528
- def _reduce_104( val, _values, result )
1612
+ module_eval <<'.,.,', 'grammar.ra', 437
1613
+ def _reduce_105( val, _values, result )
1529
1614
  Puppet.warning addcontext("Deprecation notice: Resource references should now be capitalized")
1530
- result = ast AST::ResourceReference, :type => val[0], :title => val[2]
1615
+ result = ast AST::ResourceReference, :type => val[0][:value], :line => val[0][:line], :title => val[2]
1531
1616
  result
1532
1617
  end
1533
1618
  .,.,
1534
1619
 
1535
- module_eval <<'.,.,', 'grammar.ra', 412
1536
- def _reduce_105( val, _values, result )
1620
+ module_eval <<'.,.,', 'grammar.ra', 439
1621
+ def _reduce_106( val, _values, result )
1537
1622
  result = ast AST::ResourceReference, :type => val[0], :title => val[2]
1538
1623
  result
1539
1624
  end
1540
1625
  .,.,
1541
1626
 
1542
- module_eval <<'.,.,', 'grammar.ra', 426
1543
- def _reduce_106( val, _values, result )
1627
+ module_eval <<'.,.,', 'grammar.ra', 453
1628
+ def _reduce_107( val, _values, result )
1544
1629
  @lexer.commentpop
1545
1630
  args = {
1546
1631
  :test => val[1],
@@ -1556,8 +1641,8 @@ module_eval <<'.,.,', 'grammar.ra', 426
1556
1641
  end
1557
1642
  .,.,
1558
1643
 
1559
- module_eval <<'.,.,', 'grammar.ra', 439
1560
- def _reduce_107( val, _values, result )
1644
+ module_eval <<'.,.,', 'grammar.ra', 466
1645
+ def _reduce_108( val, _values, result )
1561
1646
  @lexer.commentpop
1562
1647
  args = {
1563
1648
  :test => val[1],
@@ -1573,147 +1658,161 @@ module_eval <<'.,.,', 'grammar.ra', 439
1573
1658
  end
1574
1659
  .,.,
1575
1660
 
1576
- # reduce 108 omitted
1661
+ # reduce 109 omitted
1577
1662
 
1578
- module_eval <<'.,.,', 'grammar.ra', 445
1579
- def _reduce_109( val, _values, result )
1663
+ module_eval <<'.,.,', 'grammar.ra', 472
1664
+ def _reduce_110( val, _values, result )
1580
1665
  @lexer.commentpop
1581
1666
  result = ast AST::Else, :statements => val[2]
1582
1667
  result
1583
1668
  end
1584
1669
  .,.,
1585
1670
 
1586
- module_eval <<'.,.,', 'grammar.ra', 449
1587
- def _reduce_110( val, _values, result )
1671
+ module_eval <<'.,.,', 'grammar.ra', 476
1672
+ def _reduce_111( val, _values, result )
1588
1673
  @lexer.commentpop
1589
1674
  result = ast AST::Else, :statements => ast(AST::Nop)
1590
1675
  result
1591
1676
  end
1592
1677
  .,.,
1593
1678
 
1594
- # reduce 111 omitted
1679
+ # reduce 112 omitted
1595
1680
 
1596
- module_eval <<'.,.,', 'grammar.ra', 466
1597
- def _reduce_112( val, _values, result )
1598
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1599
- result
1600
- end
1601
- .,.,
1602
-
1603
- module_eval <<'.,.,', 'grammar.ra', 469
1681
+ module_eval <<'.,.,', 'grammar.ra', 493
1604
1682
  def _reduce_113( val, _values, result )
1605
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1683
+ result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1606
1684
  result
1607
1685
  end
1608
1686
  .,.,
1609
1687
 
1610
- module_eval <<'.,.,', 'grammar.ra', 472
1688
+ module_eval <<'.,.,', 'grammar.ra', 496
1611
1689
  def _reduce_114( val, _values, result )
1612
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1690
+ result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1613
1691
  result
1614
1692
  end
1615
1693
  .,.,
1616
1694
 
1617
- module_eval <<'.,.,', 'grammar.ra', 475
1695
+ module_eval <<'.,.,', 'grammar.ra', 499
1618
1696
  def _reduce_115( val, _values, result )
1619
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1697
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1620
1698
  result
1621
1699
  end
1622
1700
  .,.,
1623
1701
 
1624
- module_eval <<'.,.,', 'grammar.ra', 478
1702
+ module_eval <<'.,.,', 'grammar.ra', 502
1625
1703
  def _reduce_116( val, _values, result )
1626
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1704
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1627
1705
  result
1628
1706
  end
1629
1707
  .,.,
1630
1708
 
1631
- module_eval <<'.,.,', 'grammar.ra', 481
1709
+ module_eval <<'.,.,', 'grammar.ra', 505
1632
1710
  def _reduce_117( val, _values, result )
1633
- result = ast AST::ArithmeticOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1711
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1634
1712
  result
1635
1713
  end
1636
1714
  .,.,
1637
1715
 
1638
- module_eval <<'.,.,', 'grammar.ra', 484
1716
+ module_eval <<'.,.,', 'grammar.ra', 508
1639
1717
  def _reduce_118( val, _values, result )
1640
- result = ast AST::Minus, :value => val[1]
1718
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1641
1719
  result
1642
1720
  end
1643
1721
  .,.,
1644
1722
 
1645
- module_eval <<'.,.,', 'grammar.ra', 487
1723
+ module_eval <<'.,.,', 'grammar.ra', 511
1646
1724
  def _reduce_119( val, _values, result )
1647
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1725
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1648
1726
  result
1649
1727
  end
1650
1728
  .,.,
1651
1729
 
1652
- module_eval <<'.,.,', 'grammar.ra', 490
1730
+ module_eval <<'.,.,', 'grammar.ra', 514
1653
1731
  def _reduce_120( val, _values, result )
1654
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1732
+ result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1655
1733
  result
1656
1734
  end
1657
1735
  .,.,
1658
1736
 
1659
- module_eval <<'.,.,', 'grammar.ra', 493
1737
+ module_eval <<'.,.,', 'grammar.ra', 517
1660
1738
  def _reduce_121( val, _values, result )
1661
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1739
+ result = ast AST::Minus, :value => val[1]
1662
1740
  result
1663
1741
  end
1664
1742
  .,.,
1665
1743
 
1666
- module_eval <<'.,.,', 'grammar.ra', 496
1744
+ module_eval <<'.,.,', 'grammar.ra', 520
1667
1745
  def _reduce_122( val, _values, result )
1668
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1746
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1669
1747
  result
1670
1748
  end
1671
1749
  .,.,
1672
1750
 
1673
- module_eval <<'.,.,', 'grammar.ra', 499
1751
+ module_eval <<'.,.,', 'grammar.ra', 523
1674
1752
  def _reduce_123( val, _values, result )
1675
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1753
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1676
1754
  result
1677
1755
  end
1678
1756
  .,.,
1679
1757
 
1680
- module_eval <<'.,.,', 'grammar.ra', 502
1758
+ module_eval <<'.,.,', 'grammar.ra', 526
1681
1759
  def _reduce_124( val, _values, result )
1682
- result = ast AST::ComparisonOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1760
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1683
1761
  result
1684
1762
  end
1685
1763
  .,.,
1686
1764
 
1687
- module_eval <<'.,.,', 'grammar.ra', 505
1765
+ module_eval <<'.,.,', 'grammar.ra', 529
1688
1766
  def _reduce_125( val, _values, result )
1689
- result = ast AST::Not, :value => val[1]
1767
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1690
1768
  result
1691
1769
  end
1692
1770
  .,.,
1693
1771
 
1694
- module_eval <<'.,.,', 'grammar.ra', 508
1772
+ module_eval <<'.,.,', 'grammar.ra', 532
1695
1773
  def _reduce_126( val, _values, result )
1696
- result = ast AST::BooleanOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1774
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1697
1775
  result
1698
1776
  end
1699
1777
  .,.,
1700
1778
 
1701
- module_eval <<'.,.,', 'grammar.ra', 511
1779
+ module_eval <<'.,.,', 'grammar.ra', 535
1702
1780
  def _reduce_127( val, _values, result )
1703
- result = ast AST::BooleanOperator, :operator => val[1], :lval => val[0], :rval => val[2]
1781
+ result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1704
1782
  result
1705
1783
  end
1706
1784
  .,.,
1707
1785
 
1708
- module_eval <<'.,.,', 'grammar.ra', 514
1786
+ module_eval <<'.,.,', 'grammar.ra', 538
1709
1787
  def _reduce_128( val, _values, result )
1710
- result = val[1]
1788
+ result = ast AST::Not, :value => val[1]
1711
1789
  result
1712
1790
  end
1713
1791
  .,.,
1714
1792
 
1715
- module_eval <<'.,.,', 'grammar.ra', 523
1793
+ module_eval <<'.,.,', 'grammar.ra', 541
1716
1794
  def _reduce_129( val, _values, result )
1795
+ result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1796
+ result
1797
+ end
1798
+ .,.,
1799
+
1800
+ module_eval <<'.,.,', 'grammar.ra', 544
1801
+ def _reduce_130( val, _values, result )
1802
+ result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
1803
+ result
1804
+ end
1805
+ .,.,
1806
+
1807
+ module_eval <<'.,.,', 'grammar.ra', 547
1808
+ def _reduce_131( val, _values, result )
1809
+ result = val[1]
1810
+ result
1811
+ end
1812
+ .,.,
1813
+
1814
+ module_eval <<'.,.,', 'grammar.ra', 556
1815
+ def _reduce_132( val, _values, result )
1717
1816
  @lexer.commentpop
1718
1817
  options = val[3]
1719
1818
  unless options.instance_of?(AST::ASTArray)
@@ -1724,10 +1823,10 @@ module_eval <<'.,.,', 'grammar.ra', 523
1724
1823
  end
1725
1824
  .,.,
1726
1825
 
1727
- # reduce 130 omitted
1826
+ # reduce 133 omitted
1728
1827
 
1729
- module_eval <<'.,.,', 'grammar.ra', 533
1730
- def _reduce_131( val, _values, result )
1828
+ module_eval <<'.,.,', 'grammar.ra', 566
1829
+ def _reduce_134( val, _values, result )
1731
1830
  if val[0].instance_of?(AST::ASTArray)
1732
1831
  val[0].push val[1]
1733
1832
  result = val[0]
@@ -1738,16 +1837,16 @@ module_eval <<'.,.,', 'grammar.ra', 533
1738
1837
  end
1739
1838
  .,.,
1740
1839
 
1741
- module_eval <<'.,.,', 'grammar.ra', 538
1742
- def _reduce_132( val, _values, result )
1840
+ module_eval <<'.,.,', 'grammar.ra', 571
1841
+ def _reduce_135( val, _values, result )
1743
1842
  @lexer.commentpop
1744
1843
  result = ast AST::CaseOpt, :value => val[0], :statements => val[3]
1745
1844
  result
1746
1845
  end
1747
1846
  .,.,
1748
1847
 
1749
- module_eval <<'.,.,', 'grammar.ra', 544
1750
- def _reduce_133( val, _values, result )
1848
+ module_eval <<'.,.,', 'grammar.ra', 577
1849
+ def _reduce_136( val, _values, result )
1751
1850
  @lexer.commentpop
1752
1851
  result = ast(AST::CaseOpt,
1753
1852
  :value => val[0],
@@ -1757,10 +1856,10 @@ module_eval <<'.,.,', 'grammar.ra', 544
1757
1856
  end
1758
1857
  .,.,
1759
1858
 
1760
- # reduce 134 omitted
1859
+ # reduce 137 omitted
1761
1860
 
1762
- module_eval <<'.,.,', 'grammar.ra', 554
1763
- def _reduce_135( val, _values, result )
1861
+ module_eval <<'.,.,', 'grammar.ra', 587
1862
+ def _reduce_138( val, _values, result )
1764
1863
  if val[0].instance_of?(AST::ASTArray)
1765
1864
  val[0].push(val[2])
1766
1865
  result = val[0]
@@ -1771,27 +1870,27 @@ module_eval <<'.,.,', 'grammar.ra', 554
1771
1870
  end
1772
1871
  .,.,
1773
1872
 
1774
- module_eval <<'.,.,', 'grammar.ra', 558
1775
- def _reduce_136( val, _values, result )
1873
+ module_eval <<'.,.,', 'grammar.ra', 591
1874
+ def _reduce_139( val, _values, result )
1776
1875
  result = ast AST::Selector, :param => val[0], :values => val[2]
1777
1876
  result
1778
1877
  end
1779
1878
  .,.,
1780
1879
 
1781
- # reduce 137 omitted
1880
+ # reduce 140 omitted
1782
1881
 
1783
- module_eval <<'.,.,', 'grammar.ra', 564
1784
- def _reduce_138( val, _values, result )
1882
+ module_eval <<'.,.,', 'grammar.ra', 597
1883
+ def _reduce_141( val, _values, result )
1785
1884
  @lexer.commentpop
1786
1885
  result = val[1]
1787
1886
  result
1788
1887
  end
1789
1888
  .,.,
1790
1889
 
1791
- # reduce 139 omitted
1890
+ # reduce 142 omitted
1792
1891
 
1793
- module_eval <<'.,.,', 'grammar.ra', 574
1794
- def _reduce_140( val, _values, result )
1892
+ module_eval <<'.,.,', 'grammar.ra', 607
1893
+ def _reduce_143( val, _values, result )
1795
1894
  if val[0].instance_of?(AST::ASTArray)
1796
1895
  val[0].push(val[2])
1797
1896
  result = val[0]
@@ -1802,19 +1901,13 @@ module_eval <<'.,.,', 'grammar.ra', 574
1802
1901
  end
1803
1902
  .,.,
1804
1903
 
1805
- module_eval <<'.,.,', 'grammar.ra', 578
1806
- def _reduce_141( val, _values, result )
1904
+ module_eval <<'.,.,', 'grammar.ra', 611
1905
+ def _reduce_144( val, _values, result )
1807
1906
  result = ast AST::ResourceParam, :param => val[0], :value => val[2]
1808
1907
  result
1809
1908
  end
1810
1909
  .,.,
1811
1910
 
1812
- # reduce 142 omitted
1813
-
1814
- # reduce 143 omitted
1815
-
1816
- # reduce 144 omitted
1817
-
1818
1911
  # reduce 145 omitted
1819
1912
 
1820
1913
  # reduce 146 omitted
@@ -1823,29 +1916,37 @@ module_eval <<'.,.,', 'grammar.ra', 578
1823
1916
 
1824
1917
  # reduce 148 omitted
1825
1918
 
1826
- module_eval <<'.,.,', 'grammar.ra', 589
1827
- def _reduce_149( val, _values, result )
1828
- result = ast AST::Default, :value => val[0]
1919
+ # reduce 149 omitted
1920
+
1921
+ # reduce 150 omitted
1922
+
1923
+ # reduce 151 omitted
1924
+
1925
+ module_eval <<'.,.,', 'grammar.ra', 622
1926
+ def _reduce_152( val, _values, result )
1927
+ result = ast AST::Default, :value => val[0][:value], :line => val[0][:line]
1829
1928
  result
1830
1929
  end
1831
1930
  .,.,
1832
1931
 
1833
- module_eval <<'.,.,', 'grammar.ra', 591
1834
- def _reduce_150( val, _values, result )
1932
+ # reduce 153 omitted
1933
+
1934
+ module_eval <<'.,.,', 'grammar.ra', 625
1935
+ def _reduce_154( val, _values, result )
1835
1936
  result = [val[0].value]
1836
1937
  result
1837
1938
  end
1838
1939
  .,.,
1839
1940
 
1840
- module_eval <<'.,.,', 'grammar.ra', 595
1841
- def _reduce_151( val, _values, result )
1941
+ module_eval <<'.,.,', 'grammar.ra', 629
1942
+ def _reduce_155( val, _values, result )
1842
1943
  results = val[0] << val[2].value
1843
1944
  result
1844
1945
  end
1845
1946
  .,.,
1846
1947
 
1847
- module_eval <<'.,.,', 'grammar.ra', 603
1848
- def _reduce_152( val, _values, result )
1948
+ module_eval <<'.,.,', 'grammar.ra', 637
1949
+ def _reduce_156( val, _values, result )
1849
1950
  val[1].each do |file|
1850
1951
  import(file)
1851
1952
  end
@@ -1855,10 +1956,10 @@ module_eval <<'.,.,', 'grammar.ra', 603
1855
1956
  end
1856
1957
  .,.,
1857
1958
 
1858
- module_eval <<'.,.,', 'grammar.ra', 614
1859
- def _reduce_153( val, _values, result )
1959
+ module_eval <<'.,.,', 'grammar.ra', 648
1960
+ def _reduce_157( val, _values, result )
1860
1961
  @lexer.commentpop
1861
- newdefine classname(val[1]), :arguments => val[2], :code => val[4]
1962
+ newdefine classname(val[1]), :arguments => val[2], :code => val[4], :line => val[0][:line]
1862
1963
  @lexer.indefine = false
1863
1964
  result = nil
1864
1965
 
@@ -1867,66 +1968,81 @@ module_eval <<'.,.,', 'grammar.ra', 614
1867
1968
  end
1868
1969
  .,.,
1869
1970
 
1870
- module_eval <<'.,.,', 'grammar.ra', 619
1871
- def _reduce_154( val, _values, result )
1971
+ module_eval <<'.,.,', 'grammar.ra', 653
1972
+ def _reduce_158( val, _values, result )
1872
1973
  @lexer.commentpop
1873
- newdefine classname(val[1]), :arguments => val[2]
1974
+ newdefine classname(val[1]), :arguments => val[2], :line => val[0][:line]
1874
1975
  @lexer.indefine = false
1875
1976
  result = nil
1876
1977
  result
1877
1978
  end
1878
1979
  .,.,
1879
1980
 
1880
- module_eval <<'.,.,', 'grammar.ra', 628
1881
- def _reduce_155( val, _values, result )
1981
+ module_eval <<'.,.,', 'grammar.ra', 662
1982
+ def _reduce_159( val, _values, result )
1882
1983
  @lexer.commentpop
1883
1984
  # Our class gets defined in the parent namespace, not our own.
1884
1985
  @lexer.namepop
1885
- newclass classname(val[1]), :code => val[4], :parent => val[2]
1986
+ newclass classname(val[1]), :code => val[4], :parent => val[2], :line => val[0][:line]
1886
1987
  result = nil
1887
1988
  result
1888
1989
  end
1889
1990
  .,.,
1890
1991
 
1891
- module_eval <<'.,.,', 'grammar.ra', 634
1892
- def _reduce_156( val, _values, result )
1992
+ module_eval <<'.,.,', 'grammar.ra', 668
1993
+ def _reduce_160( val, _values, result )
1893
1994
  @lexer.commentpop
1894
1995
  # Our class gets defined in the parent namespace, not our own.
1895
1996
  @lexer.namepop
1896
- newclass classname(val[1]), :parent => val[2]
1997
+ newclass classname(val[1]), :parent => val[2], :line => val[0][:line]
1897
1998
  result = nil
1898
1999
  result
1899
2000
  end
1900
2001
  .,.,
1901
2002
 
1902
- module_eval <<'.,.,', 'grammar.ra', 640
1903
- def _reduce_157( val, _values, result )
2003
+ module_eval <<'.,.,', 'grammar.ra', 674
2004
+ def _reduce_161( val, _values, result )
1904
2005
  @lexer.commentpop
1905
- newnode val[1], :parent => val[2], :code => val[4]
2006
+ newnode val[1], :parent => val[2], :code => val[4], :line => val[0][:line]
1906
2007
  result = nil
1907
2008
  result
1908
2009
  end
1909
2010
  .,.,
1910
2011
 
1911
- module_eval <<'.,.,', 'grammar.ra', 644
1912
- def _reduce_158( val, _values, result )
2012
+ module_eval <<'.,.,', 'grammar.ra', 678
2013
+ def _reduce_162( val, _values, result )
1913
2014
  @lexer.commentpop
1914
- newnode val[1], :parent => val[2]
2015
+ newnode val[1], :parent => val[2], :line => val[0][:line]
1915
2016
  result = nil
1916
2017
  result
1917
2018
  end
1918
2019
  .,.,
1919
2020
 
1920
- # reduce 159 omitted
2021
+ module_eval <<'.,.,', 'grammar.ra', 679
2022
+ def _reduce_163( val, _values, result )
2023
+ result = val[0][:value]
2024
+ result
2025
+ end
2026
+ .,.,
1921
2027
 
1922
- # reduce 160 omitted
2028
+ module_eval <<'.,.,', 'grammar.ra', 681
2029
+ def _reduce_164( val, _values, result )
2030
+ result = val[0][:value]
2031
+ result
2032
+ end
2033
+ .,.,
1923
2034
 
1924
- # reduce 161 omitted
2035
+ module_eval <<'.,.,', 'grammar.ra', 682
2036
+ def _reduce_165( val, _values, result )
2037
+ result = val[0][:value]
2038
+ result
2039
+ end
2040
+ .,.,
1925
2041
 
1926
- # reduce 162 omitted
2042
+ # reduce 166 omitted
1927
2043
 
1928
- module_eval <<'.,.,', 'grammar.ra', 658
1929
- def _reduce_163( val, _values, result )
2044
+ module_eval <<'.,.,', 'grammar.ra', 692
2045
+ def _reduce_167( val, _values, result )
1930
2046
  result = val[0]
1931
2047
  result = [result] unless result.is_a?(Array)
1932
2048
  result << val[2]
@@ -1934,49 +2050,78 @@ module_eval <<'.,.,', 'grammar.ra', 658
1934
2050
  end
1935
2051
  .,.,
1936
2052
 
1937
- # reduce 164 omitted
2053
+ module_eval <<'.,.,', 'grammar.ra', 696
2054
+ def _reduce_168( val, _values, result )
2055
+ result = ast AST::HostName, :value => val[0]
2056
+ result
2057
+ end
2058
+ .,.,
1938
2059
 
1939
- # reduce 165 omitted
2060
+ module_eval <<'.,.,', 'grammar.ra', 697
2061
+ def _reduce_169( val, _values, result )
2062
+ result = val[0][:value]
2063
+ result
2064
+ end
2065
+ .,.,
1940
2066
 
1941
- # reduce 166 omitted
2067
+ module_eval <<'.,.,', 'grammar.ra', 698
2068
+ def _reduce_170( val, _values, result )
2069
+ result = val[0][:value]
2070
+ result
2071
+ end
2072
+ .,.,
1942
2073
 
1943
- # reduce 167 omitted
2074
+ module_eval <<'.,.,', 'grammar.ra', 699
2075
+ def _reduce_171( val, _values, result )
2076
+ result = val[0][:value]
2077
+ result
2078
+ end
2079
+ .,.,
1944
2080
 
1945
- module_eval <<'.,.,', 'grammar.ra', 667
1946
- def _reduce_168( val, _values, result )
2081
+ module_eval <<'.,.,', 'grammar.ra', 700
2082
+ def _reduce_172( val, _values, result )
2083
+ result = val[0][:value]
2084
+ result
2085
+ end
2086
+ .,.,
2087
+
2088
+ # reduce 173 omitted
2089
+
2090
+ module_eval <<'.,.,', 'grammar.ra', 706
2091
+ def _reduce_174( val, _values, result )
1947
2092
  result = nil
1948
2093
  result
1949
2094
  end
1950
2095
  .,.,
1951
2096
 
1952
- module_eval <<'.,.,', 'grammar.ra', 671
1953
- def _reduce_169( val, _values, result )
2097
+ module_eval <<'.,.,', 'grammar.ra', 710
2098
+ def _reduce_175( val, _values, result )
1954
2099
  result = ast AST::ASTArray, :children => []
1955
2100
  result
1956
2101
  end
1957
2102
  .,.,
1958
2103
 
1959
- # reduce 170 omitted
2104
+ # reduce 176 omitted
1960
2105
 
1961
- module_eval <<'.,.,', 'grammar.ra', 676
1962
- def _reduce_171( val, _values, result )
2106
+ module_eval <<'.,.,', 'grammar.ra', 715
2107
+ def _reduce_177( val, _values, result )
1963
2108
  result = nil
1964
2109
  result
1965
2110
  end
1966
2111
  .,.,
1967
2112
 
1968
- module_eval <<'.,.,', 'grammar.ra', 680
1969
- def _reduce_172( val, _values, result )
2113
+ module_eval <<'.,.,', 'grammar.ra', 719
2114
+ def _reduce_178( val, _values, result )
1970
2115
  result = val[1]
1971
2116
  result = [result] unless result[0].is_a?(Array)
1972
2117
  result
1973
2118
  end
1974
2119
  .,.,
1975
2120
 
1976
- # reduce 173 omitted
2121
+ # reduce 179 omitted
1977
2122
 
1978
- module_eval <<'.,.,', 'grammar.ra', 687
1979
- def _reduce_174( val, _values, result )
2123
+ module_eval <<'.,.,', 'grammar.ra', 726
2124
+ def _reduce_180( val, _values, result )
1980
2125
  result = val[0]
1981
2126
  result = [result] unless result[0].is_a?(Array)
1982
2127
  result << val[2]
@@ -1984,67 +2129,67 @@ module_eval <<'.,.,', 'grammar.ra', 687
1984
2129
  end
1985
2130
  .,.,
1986
2131
 
1987
- module_eval <<'.,.,', 'grammar.ra', 692
1988
- def _reduce_175( val, _values, result )
2132
+ module_eval <<'.,.,', 'grammar.ra', 731
2133
+ def _reduce_181( val, _values, result )
1989
2134
  Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
1990
- result = [val[0], val[2]]
2135
+ result = [val[0][:value], val[2]]
1991
2136
  result
1992
2137
  end
1993
2138
  .,.,
1994
2139
 
1995
- module_eval <<'.,.,', 'grammar.ra', 696
1996
- def _reduce_176( val, _values, result )
2140
+ module_eval <<'.,.,', 'grammar.ra', 735
2141
+ def _reduce_182( val, _values, result )
1997
2142
  Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
1998
- result = [val[0]]
2143
+ result = [val[0][:value]]
1999
2144
  result
2000
2145
  end
2001
2146
  .,.,
2002
2147
 
2003
- module_eval <<'.,.,', 'grammar.ra', 698
2004
- def _reduce_177( val, _values, result )
2005
- result = [val[0], val[2]]
2148
+ module_eval <<'.,.,', 'grammar.ra', 737
2149
+ def _reduce_183( val, _values, result )
2150
+ result = [val[0][:value], val[2]]
2006
2151
  result
2007
2152
  end
2008
2153
  .,.,
2009
2154
 
2010
- module_eval <<'.,.,', 'grammar.ra', 700
2011
- def _reduce_178( val, _values, result )
2012
- result = [val[0]]
2155
+ module_eval <<'.,.,', 'grammar.ra', 739
2156
+ def _reduce_184( val, _values, result )
2157
+ result = [val[0][:value]]
2013
2158
  result
2014
2159
  end
2015
2160
  .,.,
2016
2161
 
2017
- # reduce 179 omitted
2162
+ # reduce 185 omitted
2018
2163
 
2019
- module_eval <<'.,.,', 'grammar.ra', 705
2020
- def _reduce_180( val, _values, result )
2164
+ module_eval <<'.,.,', 'grammar.ra', 744
2165
+ def _reduce_186( val, _values, result )
2021
2166
  result = val[1]
2022
2167
  result
2023
2168
  end
2024
2169
  .,.,
2025
2170
 
2026
- # reduce 181 omitted
2171
+ # reduce 187 omitted
2027
2172
 
2028
- module_eval <<'.,.,', 'grammar.ra', 710
2029
- def _reduce_182( val, _values, result )
2173
+ module_eval <<'.,.,', 'grammar.ra', 749
2174
+ def _reduce_188( val, _values, result )
2030
2175
  result = val[1]
2031
2176
  result
2032
2177
  end
2033
2178
  .,.,
2034
2179
 
2035
- # reduce 183 omitted
2180
+ # reduce 189 omitted
2036
2181
 
2037
- # reduce 184 omitted
2182
+ # reduce 190 omitted
2038
2183
 
2039
- module_eval <<'.,.,', 'grammar.ra', 716
2040
- def _reduce_185( val, _values, result )
2041
- result = ast AST::Variable, :value => val[0]
2184
+ module_eval <<'.,.,', 'grammar.ra', 755
2185
+ def _reduce_191( val, _values, result )
2186
+ result = ast AST::Variable, :value => val[0][:value], :line => val[0][:line]
2042
2187
  result
2043
2188
  end
2044
2189
  .,.,
2045
2190
 
2046
- module_eval <<'.,.,', 'grammar.ra', 724
2047
- def _reduce_186( val, _values, result )
2191
+ module_eval <<'.,.,', 'grammar.ra', 763
2192
+ def _reduce_192( val, _values, result )
2048
2193
  if val[1].instance_of?(AST::ASTArray)
2049
2194
  result = val[1]
2050
2195
  else
@@ -2054,8 +2199,8 @@ module_eval <<'.,.,', 'grammar.ra', 724
2054
2199
  end
2055
2200
  .,.,
2056
2201
 
2057
- module_eval <<'.,.,', 'grammar.ra', 731
2058
- def _reduce_187( val, _values, result )
2202
+ module_eval <<'.,.,', 'grammar.ra', 770
2203
+ def _reduce_193( val, _values, result )
2059
2204
  if val[1].instance_of?(AST::ASTArray)
2060
2205
  result = val[1]
2061
2206
  else
@@ -2065,26 +2210,33 @@ module_eval <<'.,.,', 'grammar.ra', 731
2065
2210
  end
2066
2211
  .,.,
2067
2212
 
2068
- module_eval <<'.,.,', 'grammar.ra', 733
2069
- def _reduce_188( val, _values, result )
2213
+ module_eval <<'.,.,', 'grammar.ra', 772
2214
+ def _reduce_194( val, _values, result )
2070
2215
  result = ast AST::ASTArray
2071
2216
  result
2072
2217
  end
2073
2218
  .,.,
2074
2219
 
2075
- # reduce 189 omitted
2220
+ # reduce 195 omitted
2076
2221
 
2077
- # reduce 190 omitted
2222
+ # reduce 196 omitted
2078
2223
 
2079
- # reduce 191 omitted
2224
+ # reduce 197 omitted
2080
2225
 
2081
- module_eval <<'.,.,', 'grammar.ra', 738
2082
- def _reduce_192( val, _values, result )
2226
+ module_eval <<'.,.,', 'grammar.ra', 777
2227
+ def _reduce_198( val, _values, result )
2083
2228
  result = nil
2084
2229
  result
2085
2230
  end
2086
2231
  .,.,
2087
2232
 
2233
+ module_eval <<'.,.,', 'grammar.ra', 782
2234
+ def _reduce_199( val, _values, result )
2235
+ result = ast AST::Regex, :value => val[0][:value]
2236
+ result
2237
+ end
2238
+ .,.,
2239
+
2088
2240
  def _reduce_none( val, _values, result )
2089
2241
  result
2090
2242
  end