puppet 5.0.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1440) hide show
  1. checksums.yaml +7 -0
  2. data/CONTRIBUTING.md +52 -42
  3. data/Gemfile +48 -81
  4. data/Gemfile.lock +156 -0
  5. data/MAINTAINERS +0 -19
  6. data/README.md +19 -17
  7. data/Rakefile +47 -36
  8. data/conf/auth.conf +7 -2
  9. data/conf/environment.conf +1 -1
  10. data/conf/fileserver.conf +1 -1
  11. data/conf/puppet.conf +4 -4
  12. data/ext/README.environment +1 -1
  13. data/ext/build_defaults.yaml +0 -2
  14. data/ext/cert_inspector +2 -2
  15. data/ext/debian/copyright +2 -24
  16. data/ext/debian/puppetmaster.README.debian +2 -2
  17. data/ext/envpuppet +1 -1
  18. data/ext/gentoo/init.d/puppetmaster +4 -4
  19. data/ext/hiera/hiera.yaml +1 -1
  20. data/ext/ips/puppet-agent +11 -11
  21. data/ext/ips/puppet-master +11 -11
  22. data/ext/project_data.yaml +9 -8
  23. data/ext/puppet-test +5 -5
  24. data/ext/redhat/client.init +2 -2
  25. data/ext/redhat/logrotate +1 -1
  26. data/ext/redhat/puppet.spec.erb +0 -4
  27. data/ext/regexp_nodes/regexp_nodes.rb +15 -16
  28. data/ext/solaris/smf/puppet +11 -11
  29. data/ext/solaris/smf/svc-puppetd +5 -5
  30. data/ext/solaris/smf/svc-puppetmasterd +5 -5
  31. data/ext/upload_facts.rb +2 -2
  32. data/ext/windows/service/daemon.rb +1 -1
  33. data/install.rb +2 -3
  34. data/lib/hiera/puppet_function.rb +5 -2
  35. data/lib/hiera/scope.rb +24 -2
  36. data/lib/hiera_puppet.rb +3 -3
  37. data/lib/puppet/agent/locker.rb +6 -5
  38. data/lib/puppet/agent.rb +24 -3
  39. data/lib/puppet/application/agent.rb +19 -14
  40. data/lib/puppet/application/apply.rb +30 -17
  41. data/lib/puppet/application/cert.rb +30 -174
  42. data/lib/puppet/application/config.rb +1 -0
  43. data/lib/puppet/application/describe.rb +6 -3
  44. data/lib/puppet/application/device.rb +165 -60
  45. data/lib/puppet/application/doc.rb +10 -4
  46. data/lib/puppet/application/face_base.rb +1 -1
  47. data/lib/puppet/application/facts.rb +5 -0
  48. data/lib/puppet/application/filebucket.rb +60 -18
  49. data/lib/puppet/application/help.rb +1 -0
  50. data/lib/puppet/application/lookup.rb +23 -11
  51. data/lib/puppet/application/resource.rb +8 -4
  52. data/lib/puppet/application/script.rb +261 -0
  53. data/lib/puppet/application/ssl.rb +133 -0
  54. data/lib/puppet/application.rb +42 -11
  55. data/lib/puppet/application_support.rb +7 -3
  56. data/lib/puppet/configurer/downloader.rb +1 -1
  57. data/lib/puppet/configurer/fact_handler.rb +5 -1
  58. data/lib/puppet/configurer/plugin_handler.rb +32 -9
  59. data/lib/puppet/configurer.rb +114 -76
  60. data/lib/puppet/confine.rb +4 -1
  61. data/lib/puppet/context.rb +1 -1
  62. data/lib/puppet/daemon.rb +3 -3
  63. data/lib/puppet/datatypes/error.rb +21 -0
  64. data/lib/puppet/datatypes/impl/error.rb +40 -0
  65. data/lib/puppet/datatypes.rb +213 -0
  66. data/lib/puppet/defaults.rb +279 -209
  67. data/lib/puppet/environments.rb +24 -11
  68. data/lib/puppet/error.rb +35 -18
  69. data/lib/puppet/etc.rb +6 -7
  70. data/lib/puppet/external/dot.rb +23 -24
  71. data/lib/puppet/external/pson/common.rb +2 -2
  72. data/lib/puppet/external/pson/pure/generator.rb +1 -1
  73. data/lib/puppet/external/pson/pure/parser.rb +1 -1
  74. data/lib/puppet/face/catalog.rb +2 -2
  75. data/lib/puppet/face/config.rb +157 -11
  76. data/lib/puppet/face/epp.rb +66 -37
  77. data/lib/puppet/face/facts.rb +49 -0
  78. data/lib/puppet/face/help/action.erb +4 -1
  79. data/lib/puppet/face/help/face.erb +1 -1
  80. data/lib/puppet/face/help/global.erb +2 -2
  81. data/lib/puppet/face/help/man.erb +1 -1
  82. data/lib/puppet/face/help.rb +78 -64
  83. data/lib/puppet/face/man.rb +56 -12
  84. data/lib/puppet/face/module/build.rb +5 -54
  85. data/lib/puppet/face/module/generate.rb +6 -243
  86. data/lib/puppet/face/module/install.rb +1 -4
  87. data/lib/puppet/face/module/list.rb +6 -22
  88. data/lib/puppet/face/module/search.rb +7 -3
  89. data/lib/puppet/face/module/uninstall.rb +15 -7
  90. data/lib/puppet/face/module/upgrade.rb +1 -4
  91. data/lib/puppet/face/node/clean.rb +14 -10
  92. data/lib/puppet/face/node.rb +1 -0
  93. data/lib/puppet/face/parser.rb +30 -4
  94. data/lib/puppet/face/plugin.rb +1 -3
  95. data/lib/puppet/face/status.rb +3 -2
  96. data/lib/puppet/feature/base.rb +8 -27
  97. data/lib/puppet/feature/bolt.rb +3 -0
  98. data/lib/puppet/feature/eventlog.rb +1 -1
  99. data/lib/puppet/file_bucket/dipper.rb +1 -2
  100. data/lib/puppet/file_bucket/file.rb +0 -2
  101. data/lib/puppet/file_serving/base.rb +18 -17
  102. data/lib/puppet/file_serving/configuration/parser.rb +25 -9
  103. data/lib/puppet/file_serving/configuration.rb +6 -0
  104. data/lib/puppet/file_serving/fileset.rb +1 -1
  105. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  106. data/lib/puppet/file_serving/metadata.rb +4 -3
  107. data/lib/puppet/file_serving/mount/locales.rb +35 -0
  108. data/lib/puppet/file_serving/mount/tasks.rb +21 -0
  109. data/lib/puppet/file_system/uniquefile.rb +2 -2
  110. data/lib/puppet/forge/errors.rb +27 -25
  111. data/lib/puppet/forge/repository.rb +1 -1
  112. data/lib/puppet/forge.rb +22 -9
  113. data/lib/puppet/functions/abs.rb +61 -0
  114. data/lib/puppet/functions/alert.rb +1 -1
  115. data/lib/puppet/functions/all.rb +104 -0
  116. data/lib/puppet/functions/annotate.rb +11 -11
  117. data/lib/puppet/functions/any.rb +109 -0
  118. data/lib/puppet/functions/assert_type.rb +7 -7
  119. data/lib/puppet/functions/binary_file.rb +15 -2
  120. data/lib/puppet/functions/break.rb +34 -9
  121. data/lib/puppet/functions/call.rb +41 -4
  122. data/lib/puppet/functions/camelcase.rb +62 -0
  123. data/lib/puppet/functions/capitalize.rb +61 -0
  124. data/lib/puppet/functions/ceiling.rb +37 -0
  125. data/lib/puppet/functions/chomp.rb +57 -0
  126. data/lib/puppet/functions/chop.rb +67 -0
  127. data/lib/puppet/functions/compare.rb +125 -0
  128. data/lib/puppet/functions/contain.rb +25 -3
  129. data/lib/puppet/functions/convert_to.rb +34 -0
  130. data/lib/puppet/functions/crit.rb +1 -1
  131. data/lib/puppet/functions/debug.rb +1 -1
  132. data/lib/puppet/functions/defined.rb +14 -15
  133. data/lib/puppet/functions/dig.rb +47 -3
  134. data/lib/puppet/functions/downcase.rb +89 -0
  135. data/lib/puppet/functions/each.rb +30 -20
  136. data/lib/puppet/functions/emerg.rb +1 -1
  137. data/lib/puppet/functions/empty.rb +77 -0
  138. data/lib/puppet/functions/epp.rb +3 -0
  139. data/lib/puppet/functions/err.rb +1 -1
  140. data/lib/puppet/functions/eyaml_lookup_key.rb +11 -8
  141. data/lib/puppet/functions/filter.rb +30 -23
  142. data/lib/puppet/functions/find_file.rb +15 -2
  143. data/lib/puppet/functions/flatten.rb +64 -0
  144. data/lib/puppet/functions/floor.rb +37 -0
  145. data/lib/puppet/functions/get.rb +150 -0
  146. data/lib/puppet/functions/getvar.rb +87 -0
  147. data/lib/puppet/functions/hiera.rb +11 -11
  148. data/lib/puppet/functions/hiera_array.rb +11 -11
  149. data/lib/puppet/functions/hiera_hash.rb +12 -12
  150. data/lib/puppet/functions/hiera_include.rb +15 -15
  151. data/lib/puppet/functions/hocon_data.rb +1 -1
  152. data/lib/puppet/functions/include.rb +34 -2
  153. data/lib/puppet/functions/info.rb +1 -1
  154. data/lib/puppet/functions/inline_epp.rb +2 -2
  155. data/lib/puppet/functions/join.rb +56 -0
  156. data/lib/puppet/functions/json_data.rb +3 -3
  157. data/lib/puppet/functions/keys.rb +25 -0
  158. data/lib/puppet/functions/length.rb +44 -0
  159. data/lib/puppet/functions/lest.rb +39 -1
  160. data/lib/puppet/functions/lookup.rb +7 -5
  161. data/lib/puppet/functions/lstrip.rb +58 -0
  162. data/lib/puppet/functions/map.rb +34 -20
  163. data/lib/puppet/functions/match.rb +17 -6
  164. data/lib/puppet/functions/max.rb +183 -0
  165. data/lib/puppet/functions/min.rb +182 -0
  166. data/lib/puppet/functions/module_directory.rb +41 -0
  167. data/lib/puppet/functions/new.rb +982 -7
  168. data/lib/puppet/functions/next.rb +2 -9
  169. data/lib/puppet/functions/notice.rb +1 -1
  170. data/lib/puppet/functions/reduce.rb +36 -5
  171. data/lib/puppet/functions/regsubst.rb +10 -4
  172. data/lib/puppet/functions/require.rb +42 -2
  173. data/lib/puppet/functions/return.rb +2 -9
  174. data/lib/puppet/functions/reverse_each.rb +71 -2
  175. data/lib/puppet/functions/round.rb +24 -0
  176. data/lib/puppet/functions/rstrip.rb +58 -0
  177. data/lib/puppet/functions/size.rb +15 -0
  178. data/lib/puppet/functions/slice.rb +25 -12
  179. data/lib/puppet/functions/sort.rb +74 -0
  180. data/lib/puppet/functions/split.rb +12 -10
  181. data/lib/puppet/functions/step.rb +73 -1
  182. data/lib/puppet/functions/strftime.rb +178 -10
  183. data/lib/puppet/functions/strip.rb +58 -0
  184. data/lib/puppet/functions/then.rb +65 -2
  185. data/lib/puppet/functions/tree_each.rb +200 -0
  186. data/lib/puppet/functions/type.rb +42 -1
  187. data/lib/puppet/functions/unique.rb +13 -13
  188. data/lib/puppet/functions/unwrap.rb +8 -4
  189. data/lib/puppet/functions/upcase.rb +89 -0
  190. data/lib/puppet/functions/values.rb +25 -0
  191. data/lib/puppet/functions/versioncmp.rb +1 -1
  192. data/lib/puppet/functions/warning.rb +1 -1
  193. data/lib/puppet/functions/with.rb +9 -7
  194. data/lib/puppet/functions/yaml_data.rb +8 -7
  195. data/lib/puppet/functions.rb +212 -95
  196. data/lib/puppet/generate/models/type/property.rb +1 -1
  197. data/lib/puppet/generate/type.rb +1 -1
  198. data/lib/puppet/gettext/config.rb +275 -0
  199. data/lib/puppet/gettext/module_translations.rb +42 -0
  200. data/lib/puppet/gettext/stubs.rb +11 -0
  201. data/lib/puppet/graph/relationship_graph.rb +7 -1
  202. data/lib/puppet/graph/simple_graph.rb +12 -8
  203. data/lib/puppet/graph.rb +0 -2
  204. data/lib/puppet/indirector/catalog/compiler.rb +48 -16
  205. data/lib/puppet/indirector/catalog/json.rb +14 -3
  206. data/lib/puppet/indirector/catalog/yaml.rb +0 -16
  207. data/lib/puppet/indirector/certificate/file.rb +0 -1
  208. data/lib/puppet/indirector/exec.rb +1 -1
  209. data/lib/puppet/indirector/facts/facter.rb +4 -6
  210. data/lib/puppet/indirector/facts/network_device.rb +2 -2
  211. data/lib/puppet/indirector/facts/rest.rb +21 -0
  212. data/lib/puppet/indirector/facts/yaml.rb +4 -6
  213. data/lib/puppet/indirector/file_bucket_file/file.rb +11 -4
  214. data/lib/puppet/indirector/file_content/http.rb +3 -1
  215. data/lib/puppet/indirector/file_server.rb +1 -1
  216. data/lib/puppet/indirector/indirection.rb +28 -24
  217. data/lib/puppet/indirector/key/file.rb +1 -6
  218. data/lib/puppet/indirector/node/exec.rb +2 -4
  219. data/lib/puppet/indirector/node/yaml.rb +0 -6
  220. data/lib/puppet/indirector/request.rb +19 -15
  221. data/lib/puppet/indirector/rest.rb +21 -68
  222. data/lib/puppet/indirector/ssl_file.rb +5 -46
  223. data/lib/puppet/indirector/terminus.rb +4 -4
  224. data/lib/puppet/indirector/yaml.rb +4 -4
  225. data/lib/puppet/info_service/class_information_service.rb +1 -1
  226. data/lib/puppet/info_service/task_information_service.rb +36 -0
  227. data/lib/puppet/info_service.rb +10 -0
  228. data/lib/puppet/interface/action.rb +54 -29
  229. data/lib/puppet/interface/action_builder.rb +22 -5
  230. data/lib/puppet/interface/action_manager.rb +1 -1
  231. data/lib/puppet/interface/documentation.rb +21 -10
  232. data/lib/puppet/interface/face_collection.rb +7 -3
  233. data/lib/puppet/interface/option.rb +36 -15
  234. data/lib/puppet/interface/option_builder.rb +23 -9
  235. data/lib/puppet/interface/option_manager.rb +9 -4
  236. data/lib/puppet/interface.rb +3 -2
  237. data/lib/puppet/loaders.rb +3 -0
  238. data/lib/puppet/metatype/manager.rb +9 -7
  239. data/lib/puppet/module/task.rb +267 -0
  240. data/lib/puppet/module.rb +70 -14
  241. data/lib/puppet/module_tool/applications/application.rb +5 -5
  242. data/lib/puppet/module_tool/applications/checksummer.rb +3 -3
  243. data/lib/puppet/module_tool/applications/installer.rb +9 -7
  244. data/lib/puppet/module_tool/applications/uninstaller.rb +4 -2
  245. data/lib/puppet/module_tool/applications/unpacker.rb +4 -4
  246. data/lib/puppet/module_tool/applications/upgrader.rb +8 -6
  247. data/lib/puppet/module_tool/applications.rb +0 -1
  248. data/lib/puppet/module_tool/dependency.rb +1 -1
  249. data/lib/puppet/module_tool/errors/installer.rb +18 -20
  250. data/lib/puppet/module_tool/errors/shared.rb +20 -15
  251. data/lib/puppet/module_tool/errors/uninstaller.rb +1 -0
  252. data/lib/puppet/module_tool/errors/upgrader.rb +1 -1
  253. data/lib/puppet/module_tool/installed_modules.rb +3 -3
  254. data/lib/puppet/module_tool/local_tarball.rb +3 -3
  255. data/lib/puppet/module_tool/metadata.rb +3 -5
  256. data/lib/puppet/module_tool/shared_behaviors.rb +2 -2
  257. data/lib/puppet/module_tool/tar/mini.rb +57 -4
  258. data/lib/puppet/module_tool.rb +2 -5
  259. data/lib/puppet/network/auth_config_parser.rb +18 -13
  260. data/lib/puppet/network/authconfig.rb +1 -14
  261. data/lib/puppet/network/authstore.rb +3 -3
  262. data/lib/puppet/network/client_request.rb +1 -1
  263. data/lib/puppet/network/format.rb +3 -3
  264. data/lib/puppet/network/format_support.rb +14 -9
  265. data/lib/puppet/network/formats.rb +98 -9
  266. data/lib/puppet/network/http/api/indirected_routes.rb +11 -3
  267. data/lib/puppet/network/http/api/indirection_type.rb +1 -1
  268. data/lib/puppet/network/http/api/master/v3/environment.rb +7 -4
  269. data/lib/puppet/network/http/api/master/v3/environments.rb +2 -2
  270. data/lib/puppet/network/http/api.rb +1 -10
  271. data/lib/puppet/network/http/compression.rb +1 -1
  272. data/lib/puppet/network/http/connection.rb +105 -25
  273. data/lib/puppet/network/http/error.rb +10 -10
  274. data/lib/puppet/network/http/factory.rb +8 -0
  275. data/lib/puppet/network/http/handler.rb +59 -27
  276. data/lib/puppet/network/http.rb +0 -2
  277. data/lib/puppet/network/resolver.rb +139 -67
  278. data/lib/puppet/network/rights.rb +1 -1
  279. data/lib/puppet/node/environment.rb +23 -20
  280. data/lib/puppet/node/facts.rb +20 -1
  281. data/lib/puppet/node.rb +80 -8
  282. data/lib/puppet/parameter/boolean.rb +1 -1
  283. data/lib/puppet/parameter/value_collection.rb +9 -9
  284. data/lib/puppet/parameter.rb +15 -10
  285. data/lib/puppet/parser/abstract_compiler.rb +36 -0
  286. data/lib/puppet/parser/ast/branch.rb +4 -4
  287. data/lib/puppet/parser/ast/leaf.rb +7 -2
  288. data/lib/puppet/parser/ast/node.rb +2 -2
  289. data/lib/puppet/parser/ast/pops_bridge.rb +26 -52
  290. data/lib/puppet/parser/ast.rb +4 -8
  291. data/lib/puppet/parser/catalog_compiler.rb +32 -0
  292. data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +1 -1
  293. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +9 -2
  294. data/lib/puppet/parser/compiler.rb +29 -61
  295. data/lib/puppet/parser/functions/assert_type.rb +4 -4
  296. data/lib/puppet/parser/functions/binary_file.rb +1 -1
  297. data/lib/puppet/parser/functions/break.rb +1 -1
  298. data/lib/puppet/parser/functions/create_resources.rb +7 -7
  299. data/lib/puppet/parser/functions/defined.rb +1 -1
  300. data/lib/puppet/parser/functions/dig.rb +12 -3
  301. data/lib/puppet/parser/functions/each.rb +3 -3
  302. data/lib/puppet/parser/functions/epp.rb +4 -1
  303. data/lib/puppet/parser/functions/filter.rb +3 -3
  304. data/lib/puppet/parser/functions/find_file.rb +1 -1
  305. data/lib/puppet/parser/functions/fqdn_rand.rb +16 -1
  306. data/lib/puppet/parser/functions/generate.rb +3 -5
  307. data/lib/puppet/parser/functions/hiera.rb +4 -4
  308. data/lib/puppet/parser/functions/hiera_array.rb +5 -5
  309. data/lib/puppet/parser/functions/hiera_hash.rb +6 -6
  310. data/lib/puppet/parser/functions/hiera_include.rb +10 -11
  311. data/lib/puppet/parser/functions/inline_epp.rb +1 -1
  312. data/lib/puppet/parser/functions/inline_template.rb +8 -3
  313. data/lib/puppet/parser/functions/lest.rb +2 -2
  314. data/lib/puppet/parser/functions/lookup.rb +1 -1
  315. data/lib/puppet/parser/functions/map.rb +2 -2
  316. data/lib/puppet/parser/functions/match.rb +1 -1
  317. data/lib/puppet/parser/functions/new.rb +106 -54
  318. data/lib/puppet/parser/functions/next.rb +1 -1
  319. data/lib/puppet/parser/functions/realize.rb +6 -0
  320. data/lib/puppet/parser/functions/reduce.rb +33 -2
  321. data/lib/puppet/parser/functions/return.rb +23 -2
  322. data/lib/puppet/parser/functions/reverse_each.rb +3 -3
  323. data/lib/puppet/parser/functions/scanf.rb +1 -1
  324. data/lib/puppet/parser/functions/sha256.rb +5 -0
  325. data/lib/puppet/parser/functions/slice.rb +1 -1
  326. data/lib/puppet/parser/functions/sprintf.rb +28 -3
  327. data/lib/puppet/parser/functions/step.rb +2 -2
  328. data/lib/puppet/parser/functions/strftime.rb +1 -1
  329. data/lib/puppet/parser/functions/tag.rb +6 -0
  330. data/lib/puppet/parser/functions/tagged.rb +6 -3
  331. data/lib/puppet/parser/functions/template.rb +11 -2
  332. data/lib/puppet/parser/functions/then.rb +2 -2
  333. data/lib/puppet/parser/functions/type.rb +1 -1
  334. data/lib/puppet/parser/functions/with.rb +5 -5
  335. data/lib/puppet/parser/functions.rb +40 -7
  336. data/lib/puppet/parser/parser_factory.rb +1 -1
  337. data/lib/puppet/parser/relationship.rb +2 -2
  338. data/lib/puppet/parser/resource/param.rb +12 -5
  339. data/lib/puppet/parser/resource.rb +39 -12
  340. data/lib/puppet/parser/scope.rb +55 -24
  341. data/lib/puppet/parser/script_compiler.rb +123 -0
  342. data/lib/puppet/parser/templatewrapper.rb +4 -3
  343. data/lib/puppet/parser/type_loader.rb +12 -12
  344. data/lib/puppet/parser.rb +1 -0
  345. data/lib/puppet/pops/adapters.rb +14 -0
  346. data/lib/puppet/pops/evaluator/access_operator.rb +49 -8
  347. data/lib/puppet/pops/evaluator/closure.rb +12 -4
  348. data/lib/puppet/pops/evaluator/collector_transformer.rb +4 -3
  349. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +1 -1
  350. data/lib/puppet/pops/evaluator/compare_operator.rb +7 -5
  351. data/lib/puppet/pops/evaluator/deferred_resolver.rb +127 -0
  352. data/lib/puppet/pops/evaluator/epp_evaluator.rb +36 -10
  353. data/lib/puppet/pops/evaluator/evaluator_impl.rb +61 -17
  354. data/lib/puppet/pops/evaluator/external_syntax_support.rb +1 -1
  355. data/lib/puppet/pops/evaluator/literal_evaluator.rb +1 -1
  356. data/lib/puppet/pops/evaluator/relationship_operator.rb +1 -1
  357. data/lib/puppet/pops/evaluator/runtime3_converter.rb +29 -8
  358. data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +4 -4
  359. data/lib/puppet/pops/evaluator/runtime3_support.rb +17 -20
  360. data/lib/puppet/pops/functions/dispatch.rb +13 -6
  361. data/lib/puppet/pops/functions/function.rb +10 -4
  362. data/lib/puppet/pops/issue_reporter.rb +25 -3
  363. data/lib/puppet/pops/issues.rb +82 -15
  364. data/lib/puppet/pops/label_provider.rb +1 -1
  365. data/lib/puppet/pops/loader/base_loader.rb +10 -0
  366. data/lib/puppet/pops/loader/dependency_loader.rb +7 -0
  367. data/lib/puppet/pops/loader/loader.rb +22 -3
  368. data/lib/puppet/pops/loader/loader_paths.rb +183 -31
  369. data/lib/puppet/pops/loader/module_loaders.rb +239 -41
  370. data/lib/puppet/pops/loader/puppet_plan_instantiator.rb +84 -0
  371. data/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +10 -10
  372. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +39 -0
  373. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -2
  374. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +54 -0
  375. data/lib/puppet/pops/loader/runtime3_type_loader.rb +6 -1
  376. data/lib/puppet/pops/loader/static_loader.rb +23 -45
  377. data/lib/puppet/pops/loader/task_instantiator.rb +97 -0
  378. data/lib/puppet/pops/loader/type_definition_instantiator.rb +8 -1
  379. data/lib/puppet/pops/loaders.rb +158 -45
  380. data/lib/puppet/pops/lookup/context.rb +1 -1
  381. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  382. data/lib/puppet/pops/lookup/explainer.rb +2 -1
  383. data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
  384. data/lib/puppet/pops/lookup/hiera_config.rb +4 -4
  385. data/lib/puppet/pops/lookup/interpolation.rb +1 -1
  386. data/lib/puppet/pops/lookup/lookup_adapter.rb +61 -12
  387. data/lib/puppet/pops/merge_strategy.rb +7 -4
  388. data/lib/puppet/pops/migration/migration_checker.rb +8 -8
  389. data/lib/puppet/pops/model/ast.pp +19 -0
  390. data/lib/puppet/pops/model/ast.rb +567 -436
  391. data/lib/puppet/pops/model/ast_transformer.rb +1 -1
  392. data/lib/puppet/pops/model/factory.rb +232 -147
  393. data/lib/puppet/pops/model/model_label_provider.rb +9 -1
  394. data/lib/puppet/pops/model/model_tree_dumper.rb +17 -2
  395. data/lib/puppet/pops/model/pn_transformer.rb +400 -0
  396. data/lib/puppet/pops/model/tree_dumper.rb +1 -1
  397. data/lib/puppet/pops/parser/code_merger.rb +2 -2
  398. data/lib/puppet/pops/parser/egrammar.ra +85 -24
  399. data/lib/puppet/pops/parser/eparser.rb +1791 -1578
  400. data/lib/puppet/pops/parser/epp_parser.rb +1 -1
  401. data/lib/puppet/pops/parser/epp_support.rb +7 -5
  402. data/lib/puppet/pops/parser/evaluating_parser.rb +1 -1
  403. data/lib/puppet/pops/parser/heredoc_support.rb +2 -2
  404. data/lib/puppet/pops/parser/interpolation_support.rb +2 -2
  405. data/lib/puppet/pops/parser/lexer2.rb +5 -5
  406. data/lib/puppet/pops/parser/lexer_support.rb +5 -4
  407. data/lib/puppet/pops/parser/locatable.rb +1 -1
  408. data/lib/puppet/pops/parser/locator.rb +7 -15
  409. data/lib/puppet/pops/parser/parser_support.rb +3 -3
  410. data/lib/puppet/pops/parser/pn_parser.rb +316 -0
  411. data/lib/puppet/pops/parser/slurp_support.rb +0 -3
  412. data/lib/puppet/pops/patterns.rb +2 -1
  413. data/lib/puppet/pops/pcore.rb +67 -12
  414. data/lib/puppet/pops/pn.rb +236 -0
  415. data/lib/puppet/pops/puppet_stack.rb +15 -1
  416. data/lib/puppet/pops/resource/param.rb +2 -2
  417. data/lib/puppet/pops/resource/resource_type_impl.rb +4 -4
  418. data/lib/puppet/pops/serialization/abstract_reader.rb +4 -0
  419. data/lib/puppet/pops/serialization/abstract_writer.rb +8 -1
  420. data/lib/puppet/pops/serialization/extension.rb +1 -0
  421. data/lib/puppet/pops/serialization/from_data_converter.rb +69 -26
  422. data/lib/puppet/pops/serialization/json.rb +7 -7
  423. data/lib/puppet/pops/serialization/json_path.rb +3 -2
  424. data/lib/puppet/pops/serialization/object.rb +3 -4
  425. data/lib/puppet/pops/serialization/serializer.rb +2 -1
  426. data/lib/puppet/pops/serialization/to_data_converter.rb +27 -14
  427. data/lib/puppet/pops/serialization/to_stringified_converter.rb +226 -0
  428. data/lib/puppet/pops/serialization.rb +3 -2
  429. data/lib/puppet/pops/time/timespan.rb +1 -1
  430. data/lib/puppet/pops/time/timestamp.rb +31 -19
  431. data/lib/puppet/pops/types/annotatable.rb +2 -2
  432. data/lib/puppet/pops/types/annotation.rb +8 -8
  433. data/lib/puppet/pops/types/class_loader.rb +9 -6
  434. data/lib/puppet/pops/types/implementation_registry.rb +29 -36
  435. data/lib/puppet/pops/types/iterable.rb +42 -11
  436. data/lib/puppet/pops/types/p_binary_type.rb +12 -6
  437. data/lib/puppet/pops/types/p_init_type.rb +238 -0
  438. data/lib/puppet/pops/types/p_meta_type.rb +18 -11
  439. data/lib/puppet/pops/types/p_object_type.rb +240 -48
  440. data/lib/puppet/pops/types/p_object_type_extension.rb +218 -0
  441. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +5 -6
  442. data/lib/puppet/pops/types/p_sem_ver_type.rb +12 -4
  443. data/lib/puppet/pops/types/p_sensitive_type.rb +2 -2
  444. data/lib/puppet/pops/types/p_timespan_type.rb +9 -9
  445. data/lib/puppet/pops/types/p_timestamp_type.rb +7 -3
  446. data/lib/puppet/pops/types/p_type_set_type.rb +33 -10
  447. data/lib/puppet/pops/types/p_uri_type.rb +190 -0
  448. data/lib/puppet/pops/types/puppet_object.rb +16 -2
  449. data/lib/puppet/pops/types/ruby_generator.rb +111 -78
  450. data/lib/puppet/pops/types/ruby_method.rb +2 -2
  451. data/lib/puppet/pops/types/string_converter.rb +38 -14
  452. data/lib/puppet/pops/types/tree_iterators.rb +254 -0
  453. data/lib/puppet/pops/types/type_acceptor.rb +1 -1
  454. data/lib/puppet/pops/types/type_calculator.rb +31 -20
  455. data/lib/puppet/pops/types/type_factory.rb +82 -17
  456. data/lib/puppet/pops/types/type_formatter.rb +77 -9
  457. data/lib/puppet/pops/types/type_mismatch_describer.rb +106 -137
  458. data/lib/puppet/pops/types/type_parser.rb +130 -24
  459. data/lib/puppet/pops/types/type_set_reference.rb +2 -2
  460. data/lib/puppet/pops/types/type_with_members.rb +43 -0
  461. data/lib/puppet/pops/types/types.rb +456 -219
  462. data/lib/puppet/pops/utils.rb +2 -2
  463. data/lib/puppet/pops/validation/checker4_0.rb +145 -8
  464. data/lib/puppet/pops/validation/tasks_checker.rb +101 -0
  465. data/lib/puppet/pops/validation/validator_factory_4_0.rb +13 -8
  466. data/lib/puppet/pops/validation.rb +14 -12
  467. data/lib/puppet/pops.rb +2 -1
  468. data/lib/puppet/property/ensure.rb +2 -2
  469. data/lib/puppet/property/keyvalue.rb +70 -8
  470. data/lib/puppet/property.rb +15 -7
  471. data/lib/puppet/provider/aix_object.rb +483 -0
  472. data/lib/puppet/provider/exec.rb +0 -2
  473. data/lib/puppet/provider/file/windows.rb +1 -1
  474. data/lib/puppet/provider/group/aix.rb +51 -110
  475. data/lib/puppet/provider/group/groupadd.rb +27 -1
  476. data/lib/puppet/provider/group/windows_adsi.rb +4 -7
  477. data/lib/puppet/provider/ldap.rb +2 -2
  478. data/lib/puppet/provider/nameservice/directoryservice.rb +7 -6
  479. data/lib/puppet/provider/nameservice/objectadd.rb +13 -24
  480. data/lib/puppet/provider/nameservice/pw.rb +14 -14
  481. data/lib/puppet/provider/nameservice.rb +20 -10
  482. data/lib/puppet/provider/package/aix.rb +5 -5
  483. data/lib/puppet/provider/package/appdmg.rb +0 -1
  484. data/lib/puppet/provider/package/apple.rb +0 -1
  485. data/lib/puppet/provider/package/dnf.rb +2 -1
  486. data/lib/puppet/provider/package/gem.rb +13 -12
  487. data/lib/puppet/provider/package/macports.rb +2 -2
  488. data/lib/puppet/provider/package/nim.rb +7 -8
  489. data/lib/puppet/provider/package/opkg.rb +1 -1
  490. data/lib/puppet/provider/package/pacman.rb +4 -4
  491. data/lib/puppet/provider/package/pip.rb +15 -6
  492. data/lib/puppet/provider/package/pkg.rb +12 -6
  493. data/lib/puppet/provider/package/pkgdmg.rb +3 -4
  494. data/lib/puppet/provider/package/pkgutil.rb +5 -5
  495. data/lib/puppet/provider/package/portage.rb +9 -10
  496. data/lib/puppet/provider/package/puppet_gem.rb +1 -1
  497. data/lib/puppet/provider/package/rpm.rb +1 -1
  498. data/lib/puppet/provider/package/windows/package.rb +1 -1
  499. data/lib/puppet/provider/package/yum.rb +34 -10
  500. data/lib/puppet/provider/package/zypper.rb +5 -5
  501. data/lib/puppet/provider/parsedfile.rb +4 -4
  502. data/lib/puppet/provider/service/base.rb +23 -10
  503. data/lib/puppet/provider/service/debian.rb +1 -0
  504. data/lib/puppet/provider/service/init.rb +2 -1
  505. data/lib/puppet/provider/service/launchd.rb +7 -8
  506. data/lib/puppet/provider/service/redhat.rb +3 -2
  507. data/lib/puppet/provider/service/runit.rb +2 -1
  508. data/lib/puppet/provider/service/smf.rb +5 -3
  509. data/lib/puppet/provider/service/systemd.rb +6 -3
  510. data/lib/puppet/provider/service/upstart.rb +11 -1
  511. data/lib/puppet/provider/service/windows.rb +37 -40
  512. data/lib/puppet/provider/user/aix.rb +143 -247
  513. data/lib/puppet/provider/user/openbsd.rb +3 -2
  514. data/lib/puppet/provider/user/pw.rb +1 -1
  515. data/lib/puppet/provider/user/user_role_add.rb +7 -1
  516. data/lib/puppet/provider/user/useradd.rb +40 -6
  517. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  518. data/lib/puppet/provider.rb +34 -13
  519. data/lib/puppet/reference/configuration.rb +12 -2
  520. data/lib/puppet/reference/providers.rb +1 -1
  521. data/lib/puppet/reference/report.rb +1 -1
  522. data/lib/puppet/reference/type.rb +11 -12
  523. data/lib/puppet/relationship.rb +2 -1
  524. data/lib/puppet/reports/http.rb +4 -2
  525. data/lib/puppet/reports/store.rb +1 -1
  526. data/lib/puppet/reports.rb +2 -2
  527. data/lib/puppet/resource/capability_finder.rb +49 -27
  528. data/lib/puppet/resource/catalog.rb +42 -34
  529. data/lib/puppet/resource/status.rb +11 -3
  530. data/lib/puppet/resource/type.rb +16 -12
  531. data/lib/puppet/resource/type_collection.rb +2 -2
  532. data/lib/puppet/resource.rb +30 -12
  533. data/lib/puppet/rest/client.rb +83 -0
  534. data/lib/puppet/rest/errors.rb +14 -0
  535. data/lib/puppet/rest/response.rb +34 -0
  536. data/lib/puppet/rest/route.rb +84 -0
  537. data/lib/puppet/rest/routes.rb +154 -0
  538. data/lib/puppet/rest/ssl_context.rb +13 -0
  539. data/lib/puppet/settings/base_setting.rb +29 -9
  540. data/lib/puppet/settings/certificate_revocation_setting.rb +21 -0
  541. data/lib/puppet/settings/config_file.rb +16 -7
  542. data/lib/puppet/settings/environment_conf.rb +29 -11
  543. data/lib/puppet/settings/file_setting.rb +1 -1
  544. data/lib/puppet/settings/ini_file.rb +66 -12
  545. data/lib/puppet/settings/ttl_setting.rb +5 -0
  546. data/lib/puppet/settings.rb +68 -38
  547. data/lib/puppet/ssl/base.rb +10 -13
  548. data/lib/puppet/ssl/certificate.rb +6 -2
  549. data/lib/puppet/ssl/certificate_request.rb +19 -21
  550. data/lib/puppet/ssl/certificate_request_attributes.rb +1 -1
  551. data/lib/puppet/ssl/certificate_signer.rb +11 -0
  552. data/lib/puppet/ssl/host.rb +413 -174
  553. data/lib/puppet/ssl/key.rb +1 -5
  554. data/lib/puppet/ssl/oids.rb +10 -4
  555. data/lib/puppet/ssl/validator/default_validator.rb +33 -19
  556. data/lib/puppet/ssl.rb +0 -1
  557. data/lib/puppet/syntax_checkers/base64.rb +6 -7
  558. data/lib/puppet/syntax_checkers/json.rb +1 -1
  559. data/lib/puppet/test/test_helper.rb +2 -3
  560. data/lib/puppet/transaction/additional_resource_generator.rb +2 -2
  561. data/lib/puppet/transaction/event.rb +38 -15
  562. data/lib/puppet/transaction/event_manager.rb +3 -1
  563. data/lib/puppet/transaction/persistence.rb +17 -2
  564. data/lib/puppet/transaction/report.rb +33 -16
  565. data/lib/puppet/transaction.rb +43 -16
  566. data/lib/puppet/type/exec.rb +23 -20
  567. data/lib/puppet/type/file/checksum.rb +7 -1
  568. data/lib/puppet/type/file/checksum_value.rb +4 -3
  569. data/lib/puppet/type/file/content.rb +17 -5
  570. data/lib/puppet/type/file/data_sync.rb +2 -1
  571. data/lib/puppet/type/file/ensure.rb +1 -1
  572. data/lib/puppet/type/file/mode.rb +1 -1
  573. data/lib/puppet/type/file/source.rb +21 -8
  574. data/lib/puppet/type/file.rb +36 -25
  575. data/lib/puppet/type/group.rb +7 -6
  576. data/lib/puppet/type/notify.rb +1 -1
  577. data/lib/puppet/type/package.rb +5 -8
  578. data/lib/puppet/type/resources.rb +1 -1
  579. data/lib/puppet/type/schedule.rb +73 -112
  580. data/lib/puppet/type/service.rb +3 -6
  581. data/lib/puppet/type/stage.rb +1 -1
  582. data/lib/puppet/type/tidy.rb +21 -8
  583. data/lib/puppet/type/user.rb +98 -50
  584. data/lib/puppet/type.rb +76 -67
  585. data/lib/puppet/util/at_fork/solaris.rb +6 -4
  586. data/lib/puppet/util/autoload.rb +62 -54
  587. data/lib/puppet/util/backups.rb +1 -1
  588. data/lib/puppet/util/character_encoding.rb +2 -24
  589. data/lib/puppet/util/checksums.rb +82 -3
  590. data/lib/puppet/util/classgen.rb +0 -6
  591. data/lib/puppet/util/command_line/trollop.rb +6 -5
  592. data/lib/puppet/util/command_line.rb +5 -1
  593. data/lib/puppet/util/connection.rb +74 -0
  594. data/lib/puppet/util/errors.rb +59 -8
  595. data/lib/puppet/util/execution.rb +70 -17
  596. data/lib/puppet/util/feature.rb +63 -41
  597. data/lib/puppet/util/fileparsing.rb +30 -10
  598. data/lib/puppet/util/filetype.rb +2 -2
  599. data/lib/puppet/util/http_proxy.rb +18 -8
  600. data/lib/puppet/util/inifile.rb +3 -4
  601. data/lib/puppet/util/instance_loader.rb +4 -24
  602. data/lib/puppet/util/json.rb +69 -0
  603. data/lib/puppet/util/json_lockfile.rb +3 -3
  604. data/lib/puppet/util/ldap/connection.rb +7 -7
  605. data/lib/puppet/util/ldap/manager.rb +6 -3
  606. data/lib/puppet/util/log/destinations.rb +13 -4
  607. data/lib/puppet/util/log.rb +30 -33
  608. data/lib/puppet/util/logging.rb +26 -29
  609. data/lib/puppet/util/monkey_patches.rb +1 -1
  610. data/lib/puppet/util/network_device/base.rb +1 -1
  611. data/lib/puppet/util/network_device/config.rb +22 -15
  612. data/lib/puppet/util/platform.rb +16 -0
  613. data/lib/puppet/util/plist.rb +7 -5
  614. data/lib/puppet/util/posix.rb +1 -1
  615. data/lib/puppet/util/provider_features.rb +3 -6
  616. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +3 -3
  617. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
  618. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  619. data/lib/puppet/util/rdoc.rb +1 -1
  620. data/lib/puppet/util/reference.rb +8 -15
  621. data/lib/puppet/util/rubygems.rb +1 -13
  622. data/lib/puppet/util/run_mode.rb +1 -1
  623. data/lib/puppet/util/selinux.rb +1 -1
  624. data/lib/puppet/util/ssl.rb +40 -1
  625. data/lib/puppet/util/storage.rb +3 -3
  626. data/lib/puppet/util/suidmanager.rb +8 -5
  627. data/lib/puppet/util/tag_set.rb +1 -1
  628. data/lib/puppet/util/tagging.rb +18 -5
  629. data/lib/puppet/util/warnings.rb +0 -2
  630. data/lib/puppet/util/windows/adsi.rb +160 -214
  631. data/lib/puppet/util/windows/api_types.rb +9 -5
  632. data/lib/puppet/util/windows/com.rb +2 -1
  633. data/lib/puppet/util/windows/eventlog.rb +10 -5
  634. data/lib/puppet/util/windows/file.rb +113 -12
  635. data/lib/puppet/util/windows/principal.rb +7 -6
  636. data/lib/puppet/util/windows/process.rb +10 -2
  637. data/lib/puppet/util/windows/registry.rb +2 -2
  638. data/lib/puppet/util/windows/security.rb +26 -14
  639. data/lib/puppet/util/windows/service.rb +770 -0
  640. data/lib/puppet/util/windows/sid.rb +60 -9
  641. data/lib/puppet/util/windows.rb +19 -2
  642. data/lib/puppet/util/yaml.rb +41 -5
  643. data/lib/puppet/util.rb +50 -50
  644. data/lib/puppet/vendor/deep_merge/README.md +2 -2
  645. data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +18 -18
  646. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +1 -1
  647. data/lib/puppet/version.rb +1 -1
  648. data/lib/puppet.rb +12 -68
  649. data/lib/puppet_pal.rb +1102 -0
  650. data/locales/en/puppet.po +19 -0
  651. data/locales/ja/puppet.po +11128 -0
  652. data/locales/puppet.pot +3723 -2251
  653. data/man/man5/puppet.conf.5 +342 -187
  654. data/man/man8/puppet-agent.8 +36 -10
  655. data/man/man8/puppet-apply.8 +21 -6
  656. data/man/man8/puppet-catalog.8 +12 -15
  657. data/man/man8/puppet-config.8 +40 -6
  658. data/man/man8/puppet-describe.8 +3 -3
  659. data/man/man8/puppet-device.8 +48 -14
  660. data/man/man8/puppet-doc.8 +5 -5
  661. data/man/man8/puppet-epp.8 +49 -21
  662. data/man/man8/puppet-facts.8 +58 -9
  663. data/man/man8/puppet-filebucket.8 +76 -10
  664. data/man/man8/puppet-generate.8 +84 -0
  665. data/man/man8/puppet-help.8 +4 -4
  666. data/man/man8/puppet-key.8 +11 -17
  667. data/man/man8/puppet-lookup.8 +104 -0
  668. data/man/man8/puppet-man.8 +13 -7
  669. data/man/man8/puppet-module.8 +29 -98
  670. data/man/man8/puppet-node.8 +12 -15
  671. data/man/man8/puppet-parser.8 +34 -11
  672. data/man/man8/puppet-plugin.8 +4 -4
  673. data/man/man8/puppet-report.8 +9 -9
  674. data/man/man8/puppet-resource.8 +4 -8
  675. data/man/man8/puppet-script.8 +67 -0
  676. data/man/man8/puppet-ssl.8 +28 -0
  677. data/man/man8/puppet-status.8 +9 -9
  678. data/man/man8/puppet.8 +21 -3
  679. data/spec/fixtures/unit/application/environments/production/data/common.yaml +2 -0
  680. data/spec/fixtures/unit/functions/hiera/hiera/backend/hieraspec_backend.rb +22 -0
  681. data/spec/fixtures/unit/functions/lookup/hiera/backend/custom_backend.rb +18 -0
  682. data/spec/fixtures/unit/functions/lookup/hiera/backend/other_backend.rb +7 -0
  683. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet_x/awesome2/echo_scheme_handler.rb +1 -1
  684. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +6 -6
  685. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_input.out +1 -0
  686. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_output.out +1 -0
  687. data/spec/fixtures/unit/provider/package/pkgng/pkg.info +0 -1
  688. data/spec/fixtures/unit/provider/package/yum/yum-check-update-plugin-output.txt +36 -0
  689. data/spec/fixtures/unit/provider/package/yum/yum-check-update-simple.txt +1 -0
  690. data/spec/fixtures/unit/provider/service/base/ps_ef.mixed_encoding +3 -0
  691. data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +32 -0
  692. data/spec/integration/agent/logging_spec.rb +4 -2
  693. data/spec/integration/application/apply_spec.rb +33 -26
  694. data/spec/integration/application/lookup_spec.rb +21 -0
  695. data/spec/integration/configurer_spec.rb +2 -5
  696. data/spec/integration/data_binding_spec.rb +1 -0
  697. data/spec/integration/defaults_spec.rb +5 -10
  698. data/spec/integration/faces/config_spec.rb +16 -4
  699. data/spec/integration/faces/plugin_spec.rb +3 -0
  700. data/spec/integration/file_bucket/file_spec.rb +20 -22
  701. data/spec/integration/file_system/uniquefile_spec.rb +26 -29
  702. data/spec/integration/indirector/facts/facter_spec.rb +4 -14
  703. data/spec/integration/indirector/file_content/file_server_spec.rb +17 -0
  704. data/spec/integration/indirector/file_metadata/file_server_spec.rb +10 -0
  705. data/spec/integration/network/authconfig_spec.rb +2 -2
  706. data/spec/integration/network/http/api/indirected_routes_spec.rb +9 -38
  707. data/spec/integration/node/environment_spec.rb +1 -1
  708. data/spec/integration/node_spec.rb +0 -4
  709. data/spec/integration/parser/catalog_spec.rb +10 -6
  710. data/spec/integration/parser/collection_spec.rb +42 -3
  711. data/spec/integration/parser/compiler_spec.rb +43 -24
  712. data/spec/integration/parser/pcore_resource_spec.rb +3 -3
  713. data/spec/integration/parser/scope_spec.rb +18 -5
  714. data/spec/integration/parser/script_compiler_spec.rb +113 -0
  715. data/spec/integration/provider/service/init_spec.rb +4 -2
  716. data/spec/integration/provider/service/systemd_spec.rb +8 -4
  717. data/spec/integration/provider/service/windows_spec.rb +5 -3
  718. data/spec/integration/reference/providers_spec.rb +6 -0
  719. data/spec/integration/ssl/certificate_request_spec.rb +0 -2
  720. data/spec/integration/ssl/host_spec.rb +16 -24
  721. data/spec/integration/ssl/key_spec.rb +3 -3
  722. data/spec/integration/test/test_helper_spec.rb +32 -32
  723. data/spec/integration/transaction/report_spec.rb +11 -6
  724. data/spec/integration/type/exec_spec.rb +1 -1
  725. data/spec/integration/type/file_spec.rb +72 -18
  726. data/spec/integration/type/package_spec.rb +1 -1
  727. data/spec/integration/type_spec.rb +1 -2
  728. data/spec/integration/util/autoload_spec.rb +9 -6
  729. data/spec/integration/util/execution_spec.rb +13 -5
  730. data/spec/integration/util/rdoc/parser_spec.rb +13 -23
  731. data/spec/integration/util/settings_spec.rb +2 -1
  732. data/spec/integration/util/windows/adsi_spec.rb +89 -4
  733. data/spec/integration/util/windows/principal_spec.rb +12 -3
  734. data/spec/integration/util/windows/process_spec.rb +48 -3
  735. data/spec/integration/util/windows/registry_spec.rb +1 -1
  736. data/spec/integration/util/windows/security_spec.rb +98 -8
  737. data/spec/integration/util/windows/user_spec.rb +1 -1
  738. data/spec/integration/util_spec.rb +3 -3
  739. data/spec/lib/matchers/json.rb +27 -32
  740. data/{lib/puppet/ssl → spec/lib/puppet}/certificate_factory.rb +5 -6
  741. data/spec/lib/puppet/test_ca.rb +109 -0
  742. data/spec/lib/puppet_spec/compiler.rb +27 -0
  743. data/spec/lib/puppet_spec/files.rb +28 -23
  744. data/spec/lib/puppet_spec/language.rb +34 -35
  745. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +2 -2
  746. data/spec/lib/puppet_spec/modules.rb +20 -0
  747. data/spec/lib/puppet_spec/ssl.rb +265 -0
  748. data/spec/lib/puppet_spec/validators.rb +37 -0
  749. data/spec/shared_behaviours/file_server_terminus.rb +0 -2
  750. data/spec/shared_behaviours/file_serving_model.rb +0 -19
  751. data/spec/shared_behaviours/path_parameters.rb +1 -1
  752. data/spec/shared_behaviours/things_that_declare_options.rb +2 -2
  753. data/spec/shared_contexts/checksum.rb +4 -1
  754. data/spec/shared_contexts/digests.rb +46 -1
  755. data/spec/shared_contexts/types_setup.rb +66 -7
  756. data/spec/shared_examples/rhel_package_provider.rb +2 -2
  757. data/spec/spec_helper.rb +7 -14
  758. data/spec/unit/agent_spec.rb +48 -4
  759. data/spec/unit/application/agent_spec.rb +5 -20
  760. data/spec/unit/application/apply_spec.rb +4 -12
  761. data/spec/unit/application/config_spec.rb +4 -0
  762. data/spec/unit/application/device_spec.rb +141 -10
  763. data/spec/unit/application/face_base_spec.rb +2 -2
  764. data/spec/unit/application/filebucket_spec.rb +18 -4
  765. data/spec/unit/application/lookup_spec.rb +46 -9
  766. data/spec/unit/application/ssl_spec.rb +322 -0
  767. data/spec/unit/application_spec.rb +46 -4
  768. data/spec/unit/capability_spec.rb +11 -9
  769. data/spec/unit/{ssl/certificate_factory_spec.rb → certificate_factory_spec.rb} +9 -18
  770. data/spec/unit/configurer/downloader_spec.rb +6 -1
  771. data/spec/unit/configurer/plugin_handler_spec.rb +46 -18
  772. data/spec/unit/configurer_spec.rb +90 -33
  773. data/spec/unit/confine_spec.rb +16 -0
  774. data/spec/unit/context/trusted_information_spec.rb +3 -2
  775. data/spec/unit/daemon_spec.rb +3 -2
  776. data/spec/unit/data_providers/hiera_data_provider_spec.rb +4 -4
  777. data/spec/unit/datatypes_spec.rb +353 -0
  778. data/spec/unit/defaults_spec.rb +108 -6
  779. data/spec/unit/environments_spec.rb +62 -0
  780. data/spec/unit/etc_spec.rb +1 -1
  781. data/spec/unit/face/config_spec.rb +185 -21
  782. data/spec/unit/face/epp_face_spec.rb +70 -6
  783. data/spec/unit/face/facts_spec.rb +53 -0
  784. data/spec/unit/face/help_spec.rb +64 -70
  785. data/spec/unit/face/man_spec.rb +26 -0
  786. data/spec/unit/face/module/list_spec.rb +0 -61
  787. data/spec/unit/face/module/search_spec.rb +12 -1
  788. data/spec/unit/face/node_spec.rb +9 -32
  789. data/spec/unit/face/parser_spec.rb +80 -2
  790. data/spec/unit/face/plugin_spec.rb +50 -4
  791. data/spec/unit/file_bucket/dipper_spec.rb +29 -13
  792. data/spec/unit/file_serving/base_spec.rb +6 -9
  793. data/spec/unit/file_serving/configuration/parser_spec.rb +2 -2
  794. data/spec/unit/file_serving/configuration_spec.rb +14 -4
  795. data/spec/unit/file_serving/content_spec.rb +0 -1
  796. data/spec/unit/file_serving/fileset_spec.rb +0 -1
  797. data/spec/unit/file_serving/metadata_spec.rb +4 -5
  798. data/spec/unit/file_serving/mount/locales_spec.rb +73 -0
  799. data/spec/unit/file_serving/mount/modules_spec.rb +1 -1
  800. data/spec/unit/file_serving/mount/tasks_spec.rb +72 -0
  801. data/spec/unit/file_serving/terminus_selector_spec.rb +0 -2
  802. data/spec/unit/file_system/path_pattern_spec.rb +1 -1
  803. data/spec/unit/file_system/uniquefile_spec.rb +2 -2
  804. data/spec/unit/file_system_spec.rb +7 -4
  805. data/spec/unit/forge/forge_spec.rb +2 -2
  806. data/spec/unit/forge/module_release_spec.rb +70 -0
  807. data/spec/unit/forge_spec.rb +106 -2
  808. data/spec/unit/functions/abs_spec.rb +70 -0
  809. data/spec/unit/functions/all_spec.rb +97 -0
  810. data/spec/unit/functions/any_spec.rb +109 -0
  811. data/spec/unit/functions/assert_type_spec.rb +1 -1
  812. data/spec/unit/functions/break_spec.rb +144 -54
  813. data/spec/unit/functions/call_spec.rb +59 -5
  814. data/spec/unit/functions/camelcase_spec.rb +34 -0
  815. data/spec/unit/functions/capitalize_spec.rb +34 -0
  816. data/spec/unit/functions/ceiling_spec.rb +65 -0
  817. data/spec/unit/functions/chomp_spec.rb +46 -0
  818. data/spec/unit/functions/chop_spec.rb +38 -0
  819. data/spec/unit/functions/compare_spec.rb +147 -0
  820. data/spec/unit/functions/contain_spec.rb +1 -0
  821. data/spec/unit/functions/convert_to_spec.rb +25 -0
  822. data/spec/unit/functions/defined_spec.rb +2 -2
  823. data/spec/unit/functions/downcase_spec.rb +34 -0
  824. data/spec/unit/functions/empty_spec.rb +77 -0
  825. data/spec/unit/functions/epp_spec.rb +21 -3
  826. data/spec/unit/functions/filter_spec.rb +4 -4
  827. data/spec/unit/functions/flatten_spec.rb +31 -0
  828. data/spec/unit/functions/floor_spec.rb +65 -0
  829. data/spec/unit/functions/get_spec.rb +135 -0
  830. data/spec/unit/functions/getvar_spec.rb +121 -0
  831. data/spec/unit/functions/hiera_spec.rb +19 -49
  832. data/spec/unit/functions/include_spec.rb +16 -1
  833. data/spec/unit/functions/inline_epp_spec.rb +1 -1
  834. data/spec/unit/functions/join_spec.rb +33 -0
  835. data/spec/unit/functions/keys_spec.rb +31 -0
  836. data/spec/unit/functions/length_spec.rb +50 -0
  837. data/spec/unit/functions/lookup_fixture_spec.rb +1 -1
  838. data/spec/unit/functions/lookup_spec.rb +198 -80
  839. data/spec/unit/functions/lstrip_spec.rb +30 -0
  840. data/spec/unit/functions/match_spec.rb +21 -4
  841. data/spec/unit/functions/max_spec.rb +129 -0
  842. data/spec/unit/functions/min_spec.rb +129 -0
  843. data/spec/unit/functions/module_directory_spec.rb +43 -0
  844. data/spec/unit/functions/new_spec.rb +81 -14
  845. data/spec/unit/functions/next_spec.rb +1 -1
  846. data/spec/unit/functions/regsubst_spec.rb +4 -5
  847. data/spec/unit/functions/require_spec.rb +2 -0
  848. data/spec/unit/functions/return_spec.rb +2 -2
  849. data/spec/unit/functions/round_spec.rb +41 -0
  850. data/spec/unit/functions/rstrip_spec.rb +30 -0
  851. data/spec/unit/functions/shared.rb +12 -0
  852. data/spec/unit/functions/size_spec.rb +50 -0
  853. data/spec/unit/functions/sort_spec.rb +79 -0
  854. data/spec/unit/functions/split_spec.rb +3 -4
  855. data/spec/unit/functions/step_spec.rb +1 -1
  856. data/spec/unit/functions/strftime_spec.rb +2 -2
  857. data/spec/unit/functions/strip_spec.rb +30 -0
  858. data/spec/unit/functions/tree_each_spec.rb +493 -0
  859. data/spec/unit/functions/upcase_spec.rb +34 -0
  860. data/spec/unit/functions/values_spec.rb +30 -0
  861. data/spec/unit/functions/versioncmp_spec.rb +3 -4
  862. data/spec/unit/functions4_spec.rb +146 -76
  863. data/spec/unit/gettext/config_spec.rb +144 -0
  864. data/spec/unit/gettext/module_loading_spec.rb +53 -0
  865. data/spec/unit/graph/relationship_graph_spec.rb +15 -0
  866. data/spec/unit/graph/simple_graph_spec.rb +43 -3
  867. data/spec/unit/indirector/catalog/compiler_spec.rb +3 -18
  868. data/spec/unit/indirector/certificate/file_spec.rb +0 -8
  869. data/spec/unit/indirector/direct_file_server_spec.rb +44 -46
  870. data/spec/unit/indirector/exec_spec.rb +29 -23
  871. data/spec/unit/indirector/facts/rest_spec.rb +45 -0
  872. data/spec/unit/indirector/facts/yaml_spec.rb +95 -78
  873. data/spec/unit/indirector/file_bucket_file/file_spec.rb +156 -99
  874. data/spec/unit/indirector/file_server_spec.rb +122 -116
  875. data/spec/unit/indirector/indirection_spec.rb +25 -10
  876. data/spec/unit/indirector/json_spec.rb +0 -11
  877. data/spec/unit/indirector/key/file_spec.rb +0 -17
  878. data/spec/unit/indirector/node/exec_spec.rb +43 -22
  879. data/spec/unit/indirector/request_spec.rb +47 -6
  880. data/spec/unit/indirector/resource/ral_spec.rb +1 -0
  881. data/spec/unit/indirector/rest_spec.rb +45 -2
  882. data/spec/unit/indirector/ssl_file_spec.rb +37 -59
  883. data/spec/unit/indirector/terminus_spec.rb +3 -3
  884. data/spec/unit/indirector/yaml_spec.rb +87 -64
  885. data/spec/unit/indirector_spec.rb +0 -1
  886. data/spec/unit/info_service_spec.rb +203 -3
  887. data/spec/unit/interface/action_manager_spec.rb +1 -1
  888. data/spec/unit/interface/action_spec.rb +34 -1
  889. data/spec/unit/interface_spec.rb +12 -0
  890. data/spec/unit/module_spec.rb +89 -4
  891. data/spec/unit/module_tool/applications/installer_spec.rb +10 -2
  892. data/spec/unit/module_tool/applications/uninstaller_spec.rb +8 -0
  893. data/spec/unit/module_tool/applications/unpacker_spec.rb +4 -4
  894. data/spec/unit/module_tool/applications/upgrader_spec.rb +7 -1
  895. data/spec/unit/module_tool/tar/mini_spec.rb +34 -5
  896. data/spec/unit/network/formats_spec.rb +31 -13
  897. data/spec/unit/network/http/api/indirected_routes_spec.rb +9 -5
  898. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +5 -7
  899. data/spec/unit/network/http/api/master/v3/environment_spec.rb +0 -1
  900. data/spec/unit/network/http/api_spec.rb +0 -26
  901. data/spec/unit/network/http/compression_spec.rb +6 -3
  902. data/spec/unit/network/http/connection_spec.rb +99 -47
  903. data/spec/unit/network/http/factory_spec.rb +32 -11
  904. data/spec/unit/network/http/handler_spec.rb +3 -2
  905. data/spec/unit/network/resolver_spec.rb +87 -12
  906. data/spec/unit/node/environment_spec.rb +38 -6
  907. data/spec/unit/node/facts_spec.rb +14 -1
  908. data/spec/unit/node_spec.rb +121 -23
  909. data/spec/unit/other/selinux_spec.rb +0 -71
  910. data/spec/unit/parser/ast/leaf_spec.rb +3 -4
  911. data/spec/unit/parser/compiler_spec.rb +9 -2
  912. data/spec/unit/parser/environment_compiler_spec.rb +55 -17
  913. data/spec/unit/parser/functions/create_resources_spec.rb +10 -1
  914. data/spec/unit/parser/functions/digest_spec.rb +1 -5
  915. data/spec/unit/parser/functions/fail_spec.rb +1 -5
  916. data/spec/unit/parser/functions/file_spec.rb +0 -4
  917. data/spec/unit/parser/functions/fqdn_rand_spec.rb +24 -0
  918. data/spec/unit/parser/functions/generate_spec.rb +29 -31
  919. data/spec/unit/parser/functions/inline_template_spec.rb +7 -4
  920. data/spec/unit/parser/functions/realize_spec.rb +9 -0
  921. data/spec/unit/parser/functions/regsubst_spec.rb +0 -4
  922. data/spec/unit/parser/functions/scanf_spec.rb +0 -4
  923. data/spec/unit/parser/functions/split_spec.rb +0 -4
  924. data/spec/unit/parser/functions/sprintf_spec.rb +26 -4
  925. data/spec/unit/parser/functions/tag_spec.rb +7 -4
  926. data/spec/unit/parser/functions/tagged_spec.rb +37 -0
  927. data/spec/unit/parser/functions/template_spec.rb +8 -4
  928. data/spec/unit/parser/functions/versioncmp_spec.rb +0 -4
  929. data/spec/unit/parser/functions_spec.rb +27 -2
  930. data/spec/unit/parser/resource/param_spec.rb +2 -2
  931. data/spec/unit/parser/resource_spec.rb +0 -1
  932. data/spec/unit/parser/scope_spec.rb +23 -4
  933. data/spec/unit/parser/type_loader_spec.rb +1 -1
  934. data/spec/unit/pops/adaptable_spec.rb +0 -1
  935. data/spec/unit/pops/evaluator/access_ops_spec.rb +5 -0
  936. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +10 -0
  937. data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -1
  938. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +78 -16
  939. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +4 -8
  940. data/spec/unit/pops/factory_rspec_helper.rb +1 -1
  941. data/spec/unit/pops/factory_spec.rb +10 -6
  942. data/spec/unit/pops/issues_spec.rb +23 -8
  943. data/spec/unit/pops/loaders/dependency_loader_spec.rb +2 -2
  944. data/spec/unit/pops/loaders/loader_spec.rb +495 -0
  945. data/spec/unit/pops/loaders/loaders_spec.rb +64 -19
  946. data/spec/unit/pops/loaders/module_loaders_spec.rb +75 -0
  947. data/spec/unit/pops/loaders/static_loader_spec.rb +16 -44
  948. data/spec/unit/pops/lookup/interpolation_spec.rb +5 -0
  949. data/spec/unit/pops/lookup/lookup_spec.rb +56 -0
  950. data/spec/unit/pops/model/model_spec.rb +5 -0
  951. data/spec/unit/pops/model/pn_transformer_spec.rb +53 -0
  952. data/spec/unit/pops/parser/lexer2_spec.rb +119 -26
  953. data/spec/unit/pops/parser/locator_spec.rb +20 -0
  954. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +67 -4
  955. data/spec/unit/pops/parser/parse_calls_spec.rb +28 -0
  956. data/spec/unit/pops/parser/parse_conditionals_spec.rb +12 -0
  957. data/spec/unit/pops/parser/parse_containers_spec.rb +1 -1
  958. data/spec/unit/pops/parser/parse_functions_spec.rb +1 -1
  959. data/spec/unit/pops/parser/parse_heredoc_spec.rb +3 -3
  960. data/spec/unit/pops/parser/parse_lambda_spec.rb +1 -1
  961. data/spec/unit/pops/parser/parse_plan_spec.rb +48 -0
  962. data/spec/unit/pops/parser/parse_resource_spec.rb +35 -35
  963. data/spec/unit/pops/parser/parser_spec.rb +138 -0
  964. data/spec/unit/pops/parser/pn_parser_spec.rb +101 -0
  965. data/spec/unit/pops/pn_spec.rb +148 -0
  966. data/spec/unit/pops/puppet_stack_spec.rb +38 -9
  967. data/spec/unit/pops/serialization/packer_spec.rb +8 -0
  968. data/spec/unit/pops/serialization/serialization_spec.rb +38 -6
  969. data/spec/unit/pops/serialization/to_from_hr_spec.rb +134 -5
  970. data/spec/unit/pops/serialization/to_stringified_spec.rb +157 -0
  971. data/spec/unit/pops/types/deferred_spec.rb +87 -0
  972. data/spec/unit/pops/types/error_spec.rb +207 -0
  973. data/spec/unit/pops/types/iterable_spec.rb +10 -10
  974. data/spec/unit/pops/types/p_init_type_spec.rb +383 -0
  975. data/spec/unit/pops/types/p_object_type_spec.rb +531 -54
  976. data/spec/unit/pops/types/p_sensitive_type_spec.rb +4 -0
  977. data/spec/unit/pops/types/p_timespan_type_spec.rb +32 -4
  978. data/spec/unit/pops/types/p_timestamp_type_spec.rb +64 -3
  979. data/spec/unit/pops/types/p_type_set_type_spec.rb +108 -4
  980. data/spec/unit/pops/types/p_uri_type_spec.rb +191 -0
  981. data/spec/unit/pops/types/ruby_generator_spec.rb +285 -73
  982. data/spec/unit/pops/types/string_converter_spec.rb +63 -17
  983. data/spec/unit/pops/types/task_spec.rb +485 -0
  984. data/spec/unit/pops/types/type_acceptor_spec.rb +2 -2
  985. data/spec/unit/pops/types/type_calculator_spec.rb +224 -63
  986. data/spec/unit/pops/types/type_factory_spec.rb +6 -6
  987. data/spec/unit/pops/types/type_formatter_spec.rb +37 -19
  988. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +21 -0
  989. data/spec/unit/pops/types/type_parser_spec.rb +39 -2
  990. data/spec/unit/pops/types/types_spec.rb +88 -10
  991. data/spec/unit/pops/validator/validator_spec.rb +435 -7
  992. data/spec/unit/property/keyvalue_spec.rb +97 -6
  993. data/spec/unit/property_spec.rb +14 -5
  994. data/spec/unit/provider/aix_object_spec.rb +805 -0
  995. data/spec/unit/provider/exec/posix_spec.rb +8 -8
  996. data/spec/unit/provider/exec/shell_spec.rb +2 -1
  997. data/spec/unit/provider/exec/windows_spec.rb +2 -2
  998. data/spec/unit/provider/file/windows_spec.rb +2 -2
  999. data/spec/unit/provider/group/aix_spec.rb +76 -0
  1000. data/spec/unit/provider/group/groupadd_spec.rb +77 -1
  1001. data/spec/unit/provider/group/pw_spec.rb +4 -4
  1002. data/spec/unit/provider/group/windows_adsi_spec.rb +80 -23
  1003. data/spec/unit/provider/ldap_spec.rb +0 -1
  1004. data/spec/unit/provider/nameservice_spec.rb +11 -11
  1005. data/spec/unit/provider/package/aix_spec.rb +26 -1
  1006. data/spec/unit/provider/package/aptitude_spec.rb +1 -1
  1007. data/spec/unit/provider/package/aptrpm_spec.rb +1 -1
  1008. data/spec/unit/provider/package/dnf_spec.rb +9 -2
  1009. data/spec/unit/provider/package/dpkg_spec.rb +2 -2
  1010. data/spec/unit/provider/package/gem_spec.rb +17 -7
  1011. data/spec/unit/provider/package/nim_spec.rb +2 -11
  1012. data/spec/unit/provider/package/opkg_spec.rb +2 -2
  1013. data/spec/unit/provider/package/pip_spec.rb +38 -41
  1014. data/spec/unit/provider/package/pkg_spec.rb +64 -24
  1015. data/spec/unit/provider/package/pkgng_spec.rb +1 -1
  1016. data/spec/unit/provider/package/puppet_gem_spec.rb +2 -2
  1017. data/spec/unit/provider/package/rpm_spec.rb +33 -14
  1018. data/spec/unit/provider/package/urpmi_spec.rb +9 -3
  1019. data/spec/unit/provider/package/windows/msi_package_spec.rb +1 -1
  1020. data/spec/unit/provider/package/windows/package_spec.rb +1 -1
  1021. data/spec/unit/provider/package/windows_spec.rb +3 -3
  1022. data/spec/unit/provider/package/yum_spec.rb +69 -0
  1023. data/spec/unit/provider/parsedfile_spec.rb +1 -1
  1024. data/spec/unit/provider/service/base_spec.rb +23 -5
  1025. data/spec/unit/provider/service/bsd_spec.rb +17 -16
  1026. data/spec/unit/provider/service/daemontools_spec.rb +2 -3
  1027. data/spec/unit/provider/service/debian_spec.rb +8 -4
  1028. data/spec/unit/provider/service/freebsd_spec.rb +2 -2
  1029. data/spec/unit/provider/service/gentoo_spec.rb +27 -26
  1030. data/spec/unit/provider/service/init_spec.rb +17 -16
  1031. data/spec/unit/provider/service/launchd_spec.rb +6 -3
  1032. data/spec/unit/provider/service/openbsd_spec.rb +43 -42
  1033. data/spec/unit/provider/service/openrc_spec.rb +35 -34
  1034. data/spec/unit/provider/service/openwrt_spec.rb +7 -5
  1035. data/spec/unit/provider/service/rcng_spec.rb +7 -6
  1036. data/spec/unit/provider/service/redhat_spec.rb +11 -6
  1037. data/spec/unit/provider/service/runit_spec.rb +2 -3
  1038. data/spec/unit/provider/service/smf_spec.rb +7 -7
  1039. data/spec/unit/provider/service/src_spec.rb +3 -4
  1040. data/spec/unit/provider/service/systemd_spec.rb +73 -51
  1041. data/spec/unit/provider/service/upstart_spec.rb +53 -14
  1042. data/spec/unit/provider/service/windows_spec.rb +49 -86
  1043. data/spec/unit/provider/user/aix_spec.rb +126 -121
  1044. data/spec/unit/provider/user/hpux_spec.rb +4 -3
  1045. data/spec/unit/provider/user/openbsd_spec.rb +2 -2
  1046. data/spec/unit/provider/user/pw_spec.rb +14 -14
  1047. data/spec/unit/provider/user/user_role_add_spec.rb +20 -3
  1048. data/spec/unit/provider/user/useradd_spec.rb +194 -22
  1049. data/spec/unit/provider/user/windows_adsi_spec.rb +5 -5
  1050. data/spec/unit/provider_spec.rb +210 -14
  1051. data/spec/unit/puppet_pal_2pec.rb +1020 -0
  1052. data/spec/unit/puppet_pal_catalog_spec.rb +801 -0
  1053. data/spec/unit/puppet_pal_spec.rb +4 -0
  1054. data/spec/unit/puppet_spec.rb +31 -19
  1055. data/spec/unit/resource/capability_finder_spec.rb +16 -18
  1056. data/spec/unit/resource/catalog_spec.rb +27 -12
  1057. data/spec/unit/resource/status_spec.rb +17 -4
  1058. data/spec/unit/resource/type_collection_spec.rb +4 -1
  1059. data/spec/unit/resource/type_spec.rb +24 -9
  1060. data/spec/unit/resource_spec.rb +46 -5
  1061. data/spec/unit/rest/client_spec.rb +135 -0
  1062. data/spec/unit/rest/route_spec.rb +132 -0
  1063. data/spec/unit/settings/autosign_setting_spec.rb +2 -2
  1064. data/spec/unit/settings/certificate_revocation_setting_spec.rb +37 -0
  1065. data/spec/unit/settings/config_file_spec.rb +10 -1
  1066. data/spec/unit/settings/file_setting_spec.rb +17 -9
  1067. data/spec/unit/settings/ini_file_spec.rb +314 -5
  1068. data/spec/unit/settings/path_setting_spec.rb +1 -1
  1069. data/spec/unit/settings_spec.rb +57 -7
  1070. data/spec/unit/ssl/certificate_request_attributes_spec.rb +21 -8
  1071. data/spec/unit/ssl/certificate_request_spec.rb +62 -41
  1072. data/spec/unit/ssl/certificate_spec.rb +4 -7
  1073. data/spec/unit/ssl/host_spec.rb +248 -579
  1074. data/spec/unit/ssl/key_spec.rb +0 -15
  1075. data/spec/unit/ssl/validator_spec.rb +36 -167
  1076. data/spec/unit/task_spec.rb +247 -0
  1077. data/spec/unit/transaction/additional_resource_generator_spec.rb +64 -62
  1078. data/spec/unit/transaction/event_manager_spec.rb +12 -0
  1079. data/spec/unit/transaction/persistence_spec.rb +43 -1
  1080. data/spec/unit/transaction/report_spec.rb +62 -19
  1081. data/spec/unit/transaction/resource_harness_spec.rb +2 -2
  1082. data/spec/unit/transaction_spec.rb +134 -16
  1083. data/spec/unit/type/exec_spec.rb +11 -13
  1084. data/spec/unit/type/file/checksum_spec.rb +21 -1
  1085. data/spec/unit/type/file/content_spec.rb +13 -1
  1086. data/spec/unit/type/file/selinux_spec.rb +0 -1
  1087. data/spec/unit/type/file/source_spec.rb +15 -9
  1088. data/spec/unit/type/file_spec.rb +37 -22
  1089. data/spec/unit/type/group_spec.rb +8 -0
  1090. data/spec/unit/type/package_spec.rb +10 -0
  1091. data/spec/unit/type/resources_spec.rb +26 -12
  1092. data/spec/unit/type/schedule_spec.rb +15 -1
  1093. data/spec/unit/type/service_spec.rb +36 -10
  1094. data/spec/unit/type/tidy_spec.rb +17 -1
  1095. data/spec/unit/type/user_spec.rb +24 -115
  1096. data/spec/unit/type_spec.rb +177 -98
  1097. data/spec/unit/util/autoload_spec.rb +71 -43
  1098. data/spec/unit/util/character_encoding_spec.rb +0 -43
  1099. data/spec/unit/util/checksums_spec.rb +3 -3
  1100. data/spec/unit/util/diff_spec.rb +11 -3
  1101. data/spec/unit/util/docs_spec.rb +1 -1
  1102. data/spec/unit/util/errors_spec.rb +1 -1
  1103. data/spec/unit/util/execution_spec.rb +229 -95
  1104. data/spec/unit/util/execution_stub_spec.rb +2 -2
  1105. data/spec/unit/util/feature_spec.rb +35 -17
  1106. data/spec/unit/util/filetype_spec.rb +8 -4
  1107. data/spec/unit/util/http_proxy_spec.rb +57 -0
  1108. data/spec/unit/util/inifile_spec.rb +35 -4
  1109. data/spec/unit/util/ldap/manager_spec.rb +1 -16
  1110. data/spec/unit/util/lockfile_spec.rb +1 -1
  1111. data/spec/unit/util/log/destinations_spec.rb +45 -15
  1112. data/spec/unit/util/log_spec.rb +42 -12
  1113. data/spec/unit/util/logging_spec.rb +37 -15
  1114. data/spec/unit/util/monkey_patches_spec.rb +6 -3
  1115. data/spec/unit/util/plist_spec.rb +12 -6
  1116. data/spec/unit/util/profiler/object_counts_spec.rb +2 -1
  1117. data/spec/unit/util/rubygems_spec.rb +0 -34
  1118. data/spec/unit/util/run_mode_spec.rb +7 -7
  1119. data/spec/unit/util/selinux_spec.rb +3 -3
  1120. data/spec/unit/util/storage_spec.rb +13 -1
  1121. data/spec/unit/util/suidmanager_spec.rb +5 -5
  1122. data/spec/unit/util/tag_set_spec.rb +8 -1
  1123. data/spec/unit/util/tagging_spec.rb +27 -8
  1124. data/spec/unit/util/windows/access_control_entry_spec.rb +1 -1
  1125. data/spec/unit/util/windows/access_control_list_spec.rb +1 -1
  1126. data/spec/unit/util/windows/adsi_spec.rb +39 -35
  1127. data/spec/unit/util/windows/api_types_spec.rb +52 -1
  1128. data/spec/unit/util/windows/eventlog_spec.rb +1 -1
  1129. data/spec/unit/util/windows/security_descriptor_spec.rb +1 -1
  1130. data/spec/unit/util/windows/service_spec.rb +424 -0
  1131. data/spec/unit/util/windows/sid_spec.rb +88 -17
  1132. data/spec/unit/util/windows/string_spec.rb +1 -1
  1133. data/spec/unit/util/yaml_spec.rb +162 -28
  1134. data/spec/unit/util_spec.rb +41 -76
  1135. data/spec/watchr.rb +0 -1
  1136. data/tasks/benchmark.rake +41 -0
  1137. data/tasks/ci.rake +0 -5
  1138. data/tasks/generate_ast_model.rake +55 -43
  1139. data/tasks/manpages.rake +19 -3
  1140. data/tasks/parallel.rake +12 -7
  1141. data/tasks/parser.rake +11 -3
  1142. metadata +3262 -3438
  1143. data/ext/rack/config.ru +0 -44
  1144. data/ext/rack/example-passenger-vhost.conf +0 -57
  1145. data/lib/puppet/application/ca.rb +0 -11
  1146. data/lib/puppet/application/certificate.rb +0 -17
  1147. data/lib/puppet/application/certificate_request.rb +0 -7
  1148. data/lib/puppet/application/certificate_revocation_list.rb +0 -7
  1149. data/lib/puppet/application/master.rb +0 -313
  1150. data/lib/puppet/bindings.rb +0 -147
  1151. data/lib/puppet/configurer/downloader_factory.rb +0 -34
  1152. data/lib/puppet/external/nagios/base.rb +0 -472
  1153. data/lib/puppet/external/nagios/grammar.ry +0 -248
  1154. data/lib/puppet/external/nagios/makefile +0 -9
  1155. data/lib/puppet/external/nagios/parser.rb +0 -400
  1156. data/lib/puppet/external/nagios.rb +0 -46
  1157. data/lib/puppet/face/ca.rb +0 -266
  1158. data/lib/puppet/face/certificate.rb +0 -165
  1159. data/lib/puppet/face/certificate_request.rb +0 -56
  1160. data/lib/puppet/face/certificate_revocation_list.rb +0 -56
  1161. data/lib/puppet/feature/rack.rb +0 -19
  1162. data/lib/puppet/graph/random_prioritizer.rb +0 -16
  1163. data/lib/puppet/graph/title_hash_prioritizer.rb +0 -16
  1164. data/lib/puppet/indirector/certificate/ca.rb +0 -9
  1165. data/lib/puppet/indirector/certificate/disabled_ca.rb +0 -22
  1166. data/lib/puppet/indirector/certificate_request/ca.rb +0 -22
  1167. data/lib/puppet/indirector/certificate_request/disabled_ca.rb +0 -22
  1168. data/lib/puppet/indirector/certificate_revocation_list/ca.rb +0 -8
  1169. data/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +0 -22
  1170. data/lib/puppet/indirector/certificate_revocation_list/file.rb +0 -8
  1171. data/lib/puppet/indirector/certificate_revocation_list/rest.rb +0 -10
  1172. data/lib/puppet/indirector/certificate_status/file.rb +0 -91
  1173. data/lib/puppet/indirector/certificate_status/rest.rb +0 -11
  1174. data/lib/puppet/indirector/certificate_status.rb +0 -4
  1175. data/lib/puppet/indirector/key/ca.rb +0 -16
  1176. data/lib/puppet/indirector/key/disabled_ca.rb +0 -22
  1177. data/lib/puppet/indirector/ldap.rb +0 -80
  1178. data/lib/puppet/indirector/node/ldap.rb +0 -259
  1179. data/lib/puppet/indirector/node/write_only_yaml.rb +0 -37
  1180. data/lib/puppet/module_tool/applications/builder.rb +0 -148
  1181. data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +0 -18
  1182. data/lib/puppet/module_tool/skeleton/templates/generator/README.md.erb +0 -89
  1183. data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +0 -32
  1184. data/lib/puppet/module_tool/skeleton/templates/generator/examples/init.pp.erb +0 -12
  1185. data/lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +0 -48
  1186. data/lib/puppet/module_tool/skeleton/templates/generator/metadata.json.erb +0 -1
  1187. data/lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb +0 -6
  1188. data/lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +0 -1
  1189. data/lib/puppet/network/http/api/ca/v1.rb +0 -11
  1190. data/lib/puppet/network/http/api/ca.rb +0 -2
  1191. data/lib/puppet/network/http/rack/rest.rb +0 -162
  1192. data/lib/puppet/network/http/rack.rb +0 -33
  1193. data/lib/puppet/network/http/webrick/rest.rb +0 -114
  1194. data/lib/puppet/network/http/webrick.rb +0 -125
  1195. data/lib/puppet/network/server.rb +0 -39
  1196. data/lib/puppet/provider/aixobject.rb +0 -392
  1197. data/lib/puppet/provider/augeas/augeas.rb +0 -567
  1198. data/lib/puppet/provider/cisco.rb +0 -9
  1199. data/lib/puppet/provider/computer/computer.rb +0 -20
  1200. data/lib/puppet/provider/cron/crontab.rb +0 -297
  1201. data/lib/puppet/provider/host/parsed.rb +0 -46
  1202. data/lib/puppet/provider/interface/cisco.rb +0 -27
  1203. data/lib/puppet/provider/macauthorization/macauthorization.rb +0 -298
  1204. data/lib/puppet/provider/mailalias/aliases.rb +0 -50
  1205. data/lib/puppet/provider/maillist/mailman.rb +0 -108
  1206. data/lib/puppet/provider/mcx/mcxcontent.rb +0 -173
  1207. data/lib/puppet/provider/mount/parsed.rb +0 -282
  1208. data/lib/puppet/provider/mount.rb +0 -59
  1209. data/lib/puppet/provider/naginator.rb +0 -63
  1210. data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +0 -590
  1211. data/lib/puppet/provider/selboolean/getsetsebool.rb +0 -47
  1212. data/lib/puppet/provider/selmodule/semodule.rb +0 -138
  1213. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +0 -105
  1214. data/lib/puppet/provider/sshkey/parsed.rb +0 -50
  1215. data/lib/puppet/provider/vlan/cisco.rb +0 -28
  1216. data/lib/puppet/provider/yumrepo/inifile.rb +0 -304
  1217. data/lib/puppet/provider/zfs/zfs.rb +0 -84
  1218. data/lib/puppet/provider/zone/solaris.rb +0 -364
  1219. data/lib/puppet/provider/zpool/zpool.rb +0 -125
  1220. data/lib/puppet/ssl/certificate_authority/autosign_command.rb +0 -45
  1221. data/lib/puppet/ssl/certificate_authority/interface.rb +0 -324
  1222. data/lib/puppet/ssl/certificate_authority.rb +0 -553
  1223. data/lib/puppet/ssl/certificate_revocation_list.rb +0 -110
  1224. data/lib/puppet/ssl/configuration.rb +0 -61
  1225. data/lib/puppet/ssl/inventory.rb +0 -55
  1226. data/lib/puppet/type/augeas.rb +0 -211
  1227. data/lib/puppet/type/computer.rb +0 -66
  1228. data/lib/puppet/type/cron.rb +0 -475
  1229. data/lib/puppet/type/host.rb +0 -95
  1230. data/lib/puppet/type/interface.rb +0 -121
  1231. data/lib/puppet/type/k5login.rb +0 -88
  1232. data/lib/puppet/type/macauthorization.rb +0 -167
  1233. data/lib/puppet/type/mailalias.rb +0 -46
  1234. data/lib/puppet/type/maillist.rb +0 -62
  1235. data/lib/puppet/type/mcx.rb +0 -98
  1236. data/lib/puppet/type/mount.rb +0 -310
  1237. data/lib/puppet/type/nagios_command.rb +0 -3
  1238. data/lib/puppet/type/nagios_contact.rb +0 -3
  1239. data/lib/puppet/type/nagios_contactgroup.rb +0 -3
  1240. data/lib/puppet/type/nagios_host.rb +0 -3
  1241. data/lib/puppet/type/nagios_hostdependency.rb +0 -3
  1242. data/lib/puppet/type/nagios_hostescalation.rb +0 -3
  1243. data/lib/puppet/type/nagios_hostextinfo.rb +0 -3
  1244. data/lib/puppet/type/nagios_hostgroup.rb +0 -3
  1245. data/lib/puppet/type/nagios_service.rb +0 -3
  1246. data/lib/puppet/type/nagios_servicedependency.rb +0 -3
  1247. data/lib/puppet/type/nagios_serviceescalation.rb +0 -3
  1248. data/lib/puppet/type/nagios_serviceextinfo.rb +0 -3
  1249. data/lib/puppet/type/nagios_servicegroup.rb +0 -3
  1250. data/lib/puppet/type/nagios_timeperiod.rb +0 -3
  1251. data/lib/puppet/type/router.rb +0 -17
  1252. data/lib/puppet/type/scheduled_task.rb +0 -184
  1253. data/lib/puppet/type/selboolean.rb +0 -26
  1254. data/lib/puppet/type/selmodule.rb +0 -59
  1255. data/lib/puppet/type/ssh_authorized_key.rb +0 -143
  1256. data/lib/puppet/type/sshkey.rb +0 -75
  1257. data/lib/puppet/type/vlan.rb +0 -26
  1258. data/lib/puppet/type/yumrepo.rb +0 -409
  1259. data/lib/puppet/type/zfs.rb +0 -150
  1260. data/lib/puppet/type/zone.rb +0 -382
  1261. data/lib/puppet/type/zpool.rb +0 -91
  1262. data/lib/puppet/util/methodhelper.rb +0 -32
  1263. data/lib/puppet/util/nagios_maker.rb +0 -85
  1264. data/lib/puppet/util/network_device/cisco/device.rb +0 -285
  1265. data/lib/puppet/util/network_device/cisco/facts.rb +0 -72
  1266. data/lib/puppet/util/network_device/cisco/interface.rb +0 -94
  1267. data/lib/puppet/util/network_device/cisco.rb +0 -4
  1268. data/lib/puppet/util/network_device/ipcalc.rb +0 -68
  1269. data/lib/puppet/util/network_device/transport/ssh.rb +0 -126
  1270. data/lib/puppet/util/network_device/transport/telnet.rb +0 -47
  1271. data/lib/puppet/util/windows/taskscheduler.rb +0 -1276
  1272. data/lib/puppet/vendor/load_semantic.rb +0 -1
  1273. data/lib/puppet/vendor/load_semantic_puppet.rb +0 -1
  1274. data/lib/puppet/vendor/semantic/lib/semantic.rb +0 -5
  1275. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph.rb +0 -60
  1276. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph_node.rb +0 -117
  1277. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/module_release.rb +0 -58
  1278. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/source.rb +0 -25
  1279. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/unsatisfiable_graph.rb +0 -31
  1280. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency.rb +0 -181
  1281. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +0 -3
  1282. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +0 -203
  1283. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +0 -758
  1284. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +0 -9
  1285. data/lib/puppet/vendor/semantic_puppet/locales/config.yaml +0 -21
  1286. data/man/man8/puppet-ca.8 +0 -182
  1287. data/man/man8/puppet-cert.8 +0 -101
  1288. data/man/man8/puppet-certificate.8 +0 -224
  1289. data/man/man8/puppet-certificate_request.8 +0 -161
  1290. data/man/man8/puppet-certificate_revocation_list.8 +0 -139
  1291. data/man/man8/puppet-inspect.8 +0 -36
  1292. data/man/man8/puppet-master.8 +0 -85
  1293. data/spec/fixtures/integration/provider/cron/crontab/create_normal_entry +0 -19
  1294. data/spec/fixtures/integration/provider/cron/crontab/create_special_entry +0 -18
  1295. data/spec/fixtures/integration/provider/cron/crontab/crontab_user1 +0 -15
  1296. data/spec/fixtures/integration/provider/cron/crontab/crontab_user2 +0 -4
  1297. data/spec/fixtures/integration/provider/cron/crontab/modify_entry +0 -13
  1298. data/spec/fixtures/integration/provider/cron/crontab/moved_cronjob_input1 +0 -15
  1299. data/spec/fixtures/integration/provider/cron/crontab/moved_cronjob_input2 +0 -6
  1300. data/spec/fixtures/integration/provider/cron/crontab/purged +0 -8
  1301. data/spec/fixtures/integration/provider/cron/crontab/remove_named_resource +0 -12
  1302. data/spec/fixtures/integration/provider/cron/crontab/remove_unnamed_resource +0 -14
  1303. data/spec/fixtures/integration/provider/cron/crontab/unspecialized +0 -15
  1304. data/spec/fixtures/integration/provider/mailalias/aliases/test1 +0 -31
  1305. data/spec/fixtures/integration/provider/sshkey/sample +0 -21
  1306. data/spec/fixtures/unit/provider/augeas/augeas/augeas/lenses/test.aug +0 -13
  1307. data/spec/fixtures/unit/provider/augeas/augeas/etc/fstab +0 -10
  1308. data/spec/fixtures/unit/provider/augeas/augeas/etc/hosts +0 -6
  1309. data/spec/fixtures/unit/provider/augeas/augeas/etc/test +0 -3
  1310. data/spec/fixtures/unit/provider/augeas/augeas/test.aug +0 -13
  1311. data/spec/fixtures/unit/provider/host/parsed/valid_hosts +0 -19
  1312. data/spec/fixtures/unit/provider/mount/mount-output.aix.txt +0 -7
  1313. data/spec/fixtures/unit/provider/mount/parsed/aix.filesystems +0 -152
  1314. data/spec/fixtures/unit/provider/mount/parsed/aix.mount +0 -11
  1315. data/spec/fixtures/unit/provider/mount/parsed/darwin.mount +0 -6
  1316. data/spec/fixtures/unit/provider/mount/parsed/freebsd.fstab +0 -8
  1317. data/spec/fixtures/unit/provider/mount/parsed/freebsd.mount +0 -3
  1318. data/spec/fixtures/unit/provider/mount/parsed/hpux.mount +0 -17
  1319. data/spec/fixtures/unit/provider/mount/parsed/linux.fstab +0 -11
  1320. data/spec/fixtures/unit/provider/mount/parsed/linux.mount +0 -5
  1321. data/spec/fixtures/unit/provider/mount/parsed/netbsd.fstab +0 -9
  1322. data/spec/fixtures/unit/provider/mount/parsed/netbsd.mount +0 -8
  1323. data/spec/fixtures/unit/provider/mount/parsed/openbsd.fstab +0 -4
  1324. data/spec/fixtures/unit/provider/mount/parsed/openbsd.mount +0 -4
  1325. data/spec/fixtures/unit/provider/mount/parsed/solaris.fstab +0 -11
  1326. data/spec/fixtures/unit/provider/mount/parsed/solaris.mount +0 -6
  1327. data/spec/fixtures/unit/provider/naginator/define_empty_param +0 -6
  1328. data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys +0 -7
  1329. data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys1 +0 -3
  1330. data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys2 +0 -1
  1331. data/spec/fixtures/unit/provider/sshkey/parsed/sample +0 -21
  1332. data/spec/fixtures/unit/provider/sshkey/parsed/sample_with_blank_lines +0 -8
  1333. data/spec/fixtures/unit/provider/zfs/zfs/zfs-list.out +0 -2
  1334. data/spec/fixtures/unit/provider/zpool/zpool/zpool-list.out +0 -2
  1335. data/spec/integration/faces/ca_spec.rb +0 -354
  1336. data/spec/integration/indirector/node/ldap_spec.rb +0 -14
  1337. data/spec/integration/provider/cron/crontab_spec.rb +0 -241
  1338. data/spec/integration/provider/mailalias/aliases_spec.rb +0 -10
  1339. data/spec/integration/provider/mount_spec.rb +0 -161
  1340. data/spec/integration/provider/ssh_authorized_key_spec.rb +0 -219
  1341. data/spec/integration/provider/sshkey_spec.rb +0 -159
  1342. data/spec/integration/provider/yumrepo_spec.rb +0 -130
  1343. data/spec/integration/ssl/autosign_spec.rb +0 -145
  1344. data/spec/integration/ssl/certificate_authority_spec.rb +0 -162
  1345. data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -34
  1346. data/spec/integration/transaction_spec.rb +0 -522
  1347. data/spec/integration/type/nagios_spec.rb +0 -71
  1348. data/spec/integration/type/user_spec.rb +0 -64
  1349. data/spec/unit/application/cert_spec.rb +0 -240
  1350. data/spec/unit/application/certificate_spec.rb +0 -22
  1351. data/spec/unit/application/master_spec.rb +0 -404
  1352. data/spec/unit/configurer/downloader_factory_spec.rb +0 -96
  1353. data/spec/unit/face/ca_spec.rb +0 -10
  1354. data/spec/unit/face/certificate_request_spec.rb +0 -10
  1355. data/spec/unit/face/certificate_revocation_list_spec.rb +0 -10
  1356. data/spec/unit/face/certificate_spec.rb +0 -231
  1357. data/spec/unit/face/module/build_spec.rb +0 -69
  1358. data/spec/unit/graph/title_hash_prioritizer_spec.rb +0 -49
  1359. data/spec/unit/indirector/certificate/ca_spec.rb +0 -23
  1360. data/spec/unit/indirector/certificate/disabled_ca_spec.rb +0 -33
  1361. data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -57
  1362. data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +0 -33
  1363. data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +0 -16
  1364. data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +0 -33
  1365. data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +0 -17
  1366. data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +0 -26
  1367. data/spec/unit/indirector/certificate_status/file_spec.rb +0 -191
  1368. data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -18
  1369. data/spec/unit/indirector/code_spec.rb +0 -31
  1370. data/spec/unit/indirector/key/ca_spec.rb +0 -23
  1371. data/spec/unit/indirector/key/disabled_ca_spec.rb +0 -33
  1372. data/spec/unit/indirector/ldap_spec.rb +0 -137
  1373. data/spec/unit/indirector/node/ldap_spec.rb +0 -462
  1374. data/spec/unit/indirector/node/write_only_yaml_spec.rb +0 -12
  1375. data/spec/unit/module_tool/applications/builder_spec.rb +0 -432
  1376. data/spec/unit/network/http/api/ca/v1_spec.rb +0 -26
  1377. data/spec/unit/network/http/rack/rest_spec.rb +0 -325
  1378. data/spec/unit/network/http/rack_spec.rb +0 -43
  1379. data/spec/unit/network/http/webrick/rest_spec.rb +0 -231
  1380. data/spec/unit/network/http/webrick_spec.rb +0 -279
  1381. data/spec/unit/network/server_spec.rb +0 -95
  1382. data/spec/unit/provider/aixobject_spec.rb +0 -101
  1383. data/spec/unit/provider/augeas/augeas_spec.rb +0 -1025
  1384. data/spec/unit/provider/cisco_spec.rb +0 -15
  1385. data/spec/unit/provider/cron/crontab_spec.rb +0 -207
  1386. data/spec/unit/provider/cron/parsed_spec.rb +0 -358
  1387. data/spec/unit/provider/host/parsed_spec.rb +0 -233
  1388. data/spec/unit/provider/interface/cisco_spec.rb +0 -57
  1389. data/spec/unit/provider/macauthorization_spec.rb +0 -155
  1390. data/spec/unit/provider/mcx/mcxcontent_spec.rb +0 -192
  1391. data/spec/unit/provider/mount/parsed_spec.rb +0 -317
  1392. data/spec/unit/provider/mount_spec.rb +0 -165
  1393. data/spec/unit/provider/naginator_spec.rb +0 -79
  1394. data/spec/unit/provider/network_device_spec.rb +0 -152
  1395. data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +0 -2060
  1396. data/spec/unit/provider/selboolean_spec.rb +0 -36
  1397. data/spec/unit/provider/selmodule-example.pp +0 -0
  1398. data/spec/unit/provider/selmodule_spec.rb +0 -73
  1399. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +0 -277
  1400. data/spec/unit/provider/sshkey/parsed_spec.rb +0 -95
  1401. data/spec/unit/provider/vlan/cisco_spec.rb +0 -55
  1402. data/spec/unit/provider/yumrepo/inifile_spec.rb +0 -326
  1403. data/spec/unit/provider/zfs/zfs_spec.rb +0 -106
  1404. data/spec/unit/provider/zone/solaris_spec.rb +0 -247
  1405. data/spec/unit/provider/zpool/zpool_spec.rb +0 -251
  1406. data/spec/unit/ssl/certificate_authority/autosign_command_spec.rb +0 -30
  1407. data/spec/unit/ssl/certificate_authority/interface_spec.rb +0 -560
  1408. data/spec/unit/ssl/certificate_authority_spec.rb +0 -1184
  1409. data/spec/unit/ssl/certificate_revocation_list_spec.rb +0 -196
  1410. data/spec/unit/ssl/configuration_spec.rb +0 -141
  1411. data/spec/unit/ssl/inventory_spec.rb +0 -151
  1412. data/spec/unit/type/augeas_spec.rb +0 -119
  1413. data/spec/unit/type/computer_spec.rb +0 -80
  1414. data/spec/unit/type/cron_spec.rb +0 -543
  1415. data/spec/unit/type/host_spec.rb +0 -681
  1416. data/spec/unit/type/interface_spec.rb +0 -129
  1417. data/spec/unit/type/k5login_spec.rb +0 -115
  1418. data/spec/unit/type/macauthorization_spec.rb +0 -113
  1419. data/spec/unit/type/mailalias_spec.rb +0 -49
  1420. data/spec/unit/type/maillist_spec.rb +0 -41
  1421. data/spec/unit/type/mcx_spec.rb +0 -79
  1422. data/spec/unit/type/mount_spec.rb +0 -634
  1423. data/spec/unit/type/nagios_spec.rb +0 -293
  1424. data/spec/unit/type/scheduled_task_spec.rb +0 -103
  1425. data/spec/unit/type/selboolean_spec.rb +0 -44
  1426. data/spec/unit/type/selmodule_spec.rb +0 -17
  1427. data/spec/unit/type/ssh_authorized_key_spec.rb +0 -258
  1428. data/spec/unit/type/sshkey_spec.rb +0 -77
  1429. data/spec/unit/type/vlan_spec.rb +0 -44
  1430. data/spec/unit/type/yumrepo_spec.rb +0 -398
  1431. data/spec/unit/type/zfs_spec.rb +0 -46
  1432. data/spec/unit/type/zone_spec.rb +0 -172
  1433. data/spec/unit/type/zpool_spec.rb +0 -109
  1434. data/spec/unit/util/nagios_maker_spec.rb +0 -122
  1435. data/spec/unit/util/network_device/cisco/device_spec.rb +0 -482
  1436. data/spec/unit/util/network_device/cisco/facts_spec.rb +0 -64
  1437. data/spec/unit/util/network_device/cisco/interface_spec.rb +0 -88
  1438. data/spec/unit/util/network_device/ipcalc_spec.rb +0 -62
  1439. data/spec/unit/util/network_device/transport/ssh_spec.rb +0 -218
  1440. data/spec/unit/util/network_device/transport/telnet_spec.rb +0 -86
@@ -11,11 +11,11 @@ class PopsObject
11
11
 
12
12
  include Types::PuppetObject
13
13
 
14
- def self.from_hash(i12n)
15
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::PopsObject initializer', _pcore_type.i12n_type, i12n))
14
+ def self.from_hash(init_hash)
15
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::PopsObject initializer', _pcore_type.init_hash_type, init_hash))
16
16
  end
17
17
 
18
- def self.from_asserted_hash(i12n)
18
+ def self.from_asserted_hash(init_hash)
19
19
  new
20
20
  end
21
21
 
@@ -25,7 +25,7 @@ class PopsObject
25
25
  attr_reader :hash
26
26
 
27
27
  def initialize
28
- @hash = -1052386662549381418
28
+ @hash = 2270595461303489901
29
29
  end
30
30
  def _pcore_init_hash
31
31
  {}
@@ -75,15 +75,15 @@ class Positioned < PopsObject
75
75
  })
76
76
  end
77
77
 
78
- def self.from_hash(i12n)
79
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::Positioned initializer', _pcore_type.i12n_type, i12n))
78
+ def self.from_hash(init_hash)
79
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::Positioned initializer', _pcore_type.init_hash_type, init_hash))
80
80
  end
81
81
 
82
- def self.from_asserted_hash(i12n)
82
+ def self.from_asserted_hash(init_hash)
83
83
  new(
84
- i12n['locator'],
85
- i12n['offset'],
86
- i12n['length'])
84
+ init_hash['locator'],
85
+ init_hash['offset'],
86
+ init_hash['length'])
87
87
  end
88
88
 
89
89
  def self.create(locator, offset, length)
@@ -154,17 +154,17 @@ class BinaryExpression < Expression
154
154
  })
155
155
  end
156
156
 
157
- def self.from_hash(i12n)
158
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::BinaryExpression initializer', _pcore_type.i12n_type, i12n))
157
+ def self.from_hash(init_hash)
158
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::BinaryExpression initializer', _pcore_type.init_hash_type, init_hash))
159
159
  end
160
160
 
161
- def self.from_asserted_hash(i12n)
161
+ def self.from_asserted_hash(init_hash)
162
162
  new(
163
- i12n['locator'],
164
- i12n['offset'],
165
- i12n['length'],
166
- i12n['left_expr'],
167
- i12n['right_expr'])
163
+ init_hash['locator'],
164
+ init_hash['offset'],
165
+ init_hash['length'],
166
+ init_hash['left_expr'],
167
+ init_hash['right_expr'])
168
168
  end
169
169
 
170
170
  def self.create(locator, offset, length, left_expr, right_expr)
@@ -231,16 +231,16 @@ class UnaryExpression < Expression
231
231
  })
232
232
  end
233
233
 
234
- def self.from_hash(i12n)
235
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::UnaryExpression initializer', _pcore_type.i12n_type, i12n))
234
+ def self.from_hash(init_hash)
235
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::UnaryExpression initializer', _pcore_type.init_hash_type, init_hash))
236
236
  end
237
237
 
238
- def self.from_asserted_hash(i12n)
238
+ def self.from_asserted_hash(init_hash)
239
239
  new(
240
- i12n['locator'],
241
- i12n['offset'],
242
- i12n['length'],
243
- i12n['expr'])
240
+ init_hash['locator'],
241
+ init_hash['offset'],
242
+ init_hash['length'],
243
+ init_hash['expr'])
244
244
  end
245
245
 
246
246
  def self.create(locator, offset, length, expr)
@@ -381,18 +381,18 @@ class AssignmentExpression < BinaryExpression
381
381
  })
382
382
  end
383
383
 
384
- def self.from_hash(i12n)
385
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AssignmentExpression initializer', _pcore_type.i12n_type, i12n))
384
+ def self.from_hash(init_hash)
385
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AssignmentExpression initializer', _pcore_type.init_hash_type, init_hash))
386
386
  end
387
387
 
388
- def self.from_asserted_hash(i12n)
388
+ def self.from_asserted_hash(init_hash)
389
389
  new(
390
- i12n['locator'],
391
- i12n['offset'],
392
- i12n['length'],
393
- i12n['left_expr'],
394
- i12n['right_expr'],
395
- i12n['operator'])
390
+ init_hash['locator'],
391
+ init_hash['offset'],
392
+ init_hash['length'],
393
+ init_hash['left_expr'],
394
+ init_hash['right_expr'],
395
+ init_hash['operator'])
396
396
  end
397
397
 
398
398
  def self.create(locator, offset, length, left_expr, right_expr, operator)
@@ -456,18 +456,18 @@ class ArithmeticExpression < BinaryExpression
456
456
  })
457
457
  end
458
458
 
459
- def self.from_hash(i12n)
460
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ArithmeticExpression initializer', _pcore_type.i12n_type, i12n))
459
+ def self.from_hash(init_hash)
460
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ArithmeticExpression initializer', _pcore_type.init_hash_type, init_hash))
461
461
  end
462
462
 
463
- def self.from_asserted_hash(i12n)
463
+ def self.from_asserted_hash(init_hash)
464
464
  new(
465
- i12n['locator'],
466
- i12n['offset'],
467
- i12n['length'],
468
- i12n['left_expr'],
469
- i12n['right_expr'],
470
- i12n['operator'])
465
+ init_hash['locator'],
466
+ init_hash['offset'],
467
+ init_hash['length'],
468
+ init_hash['left_expr'],
469
+ init_hash['right_expr'],
470
+ init_hash['operator'])
471
471
  end
472
472
 
473
473
  def self.create(locator, offset, length, left_expr, right_expr, operator)
@@ -531,18 +531,18 @@ class RelationshipExpression < BinaryExpression
531
531
  })
532
532
  end
533
533
 
534
- def self.from_hash(i12n)
535
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::RelationshipExpression initializer', _pcore_type.i12n_type, i12n))
534
+ def self.from_hash(init_hash)
535
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::RelationshipExpression initializer', _pcore_type.init_hash_type, init_hash))
536
536
  end
537
537
 
538
- def self.from_asserted_hash(i12n)
538
+ def self.from_asserted_hash(init_hash)
539
539
  new(
540
- i12n['locator'],
541
- i12n['offset'],
542
- i12n['length'],
543
- i12n['left_expr'],
544
- i12n['right_expr'],
545
- i12n['operator'])
540
+ init_hash['locator'],
541
+ init_hash['offset'],
542
+ init_hash['length'],
543
+ init_hash['left_expr'],
544
+ init_hash['right_expr'],
545
+ init_hash['operator'])
546
546
  end
547
547
 
548
548
  def self.create(locator, offset, length, left_expr, right_expr, operator)
@@ -610,17 +610,17 @@ class AccessExpression < Expression
610
610
  })
611
611
  end
612
612
 
613
- def self.from_hash(i12n)
614
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AccessExpression initializer', _pcore_type.i12n_type, i12n))
613
+ def self.from_hash(init_hash)
614
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AccessExpression initializer', _pcore_type.init_hash_type, init_hash))
615
615
  end
616
616
 
617
- def self.from_asserted_hash(i12n)
617
+ def self.from_asserted_hash(init_hash)
618
618
  new(
619
- i12n['locator'],
620
- i12n['offset'],
621
- i12n['length'],
622
- i12n['left_expr'],
623
- i12n.fetch('keys') { _pcore_type['keys'].value })
619
+ init_hash['locator'],
620
+ init_hash['offset'],
621
+ init_hash['length'],
622
+ init_hash['left_expr'],
623
+ init_hash.fetch('keys') { _pcore_type['keys'].value })
624
624
  end
625
625
 
626
626
  def self.create(locator, offset, length, left_expr, keys = _pcore_type['keys'].value)
@@ -687,18 +687,18 @@ class ComparisonExpression < BinaryExpression
687
687
  })
688
688
  end
689
689
 
690
- def self.from_hash(i12n)
691
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ComparisonExpression initializer', _pcore_type.i12n_type, i12n))
690
+ def self.from_hash(init_hash)
691
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ComparisonExpression initializer', _pcore_type.init_hash_type, init_hash))
692
692
  end
693
693
 
694
- def self.from_asserted_hash(i12n)
694
+ def self.from_asserted_hash(init_hash)
695
695
  new(
696
- i12n['locator'],
697
- i12n['offset'],
698
- i12n['length'],
699
- i12n['left_expr'],
700
- i12n['right_expr'],
701
- i12n['operator'])
696
+ init_hash['locator'],
697
+ init_hash['offset'],
698
+ init_hash['length'],
699
+ init_hash['left_expr'],
700
+ init_hash['right_expr'],
701
+ init_hash['operator'])
702
702
  end
703
703
 
704
704
  def self.create(locator, offset, length, left_expr, right_expr, operator)
@@ -762,18 +762,18 @@ class MatchExpression < BinaryExpression
762
762
  })
763
763
  end
764
764
 
765
- def self.from_hash(i12n)
766
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::MatchExpression initializer', _pcore_type.i12n_type, i12n))
765
+ def self.from_hash(init_hash)
766
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::MatchExpression initializer', _pcore_type.init_hash_type, init_hash))
767
767
  end
768
768
 
769
- def self.from_asserted_hash(i12n)
769
+ def self.from_asserted_hash(init_hash)
770
770
  new(
771
- i12n['locator'],
772
- i12n['offset'],
773
- i12n['length'],
774
- i12n['left_expr'],
775
- i12n['right_expr'],
776
- i12n['operator'])
771
+ init_hash['locator'],
772
+ init_hash['offset'],
773
+ init_hash['length'],
774
+ init_hash['left_expr'],
775
+ init_hash['right_expr'],
776
+ init_hash['operator'])
777
777
  end
778
778
 
779
779
  def self.create(locator, offset, length, left_expr, right_expr, operator)
@@ -944,16 +944,16 @@ class LiteralList < Expression
944
944
  })
945
945
  end
946
946
 
947
- def self.from_hash(i12n)
948
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralList initializer', _pcore_type.i12n_type, i12n))
947
+ def self.from_hash(init_hash)
948
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralList initializer', _pcore_type.init_hash_type, init_hash))
949
949
  end
950
950
 
951
- def self.from_asserted_hash(i12n)
951
+ def self.from_asserted_hash(init_hash)
952
952
  new(
953
- i12n['locator'],
954
- i12n['offset'],
955
- i12n['length'],
956
- i12n.fetch('values') { _pcore_type['values'].value })
953
+ init_hash['locator'],
954
+ init_hash['offset'],
955
+ init_hash['length'],
956
+ init_hash.fetch('values') { _pcore_type['values'].value })
957
957
  end
958
958
 
959
959
  def self.create(locator, offset, length, values = _pcore_type['values'].value)
@@ -1011,17 +1011,17 @@ class KeyedEntry < Positioned
1011
1011
  })
1012
1012
  end
1013
1013
 
1014
- def self.from_hash(i12n)
1015
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::KeyedEntry initializer', _pcore_type.i12n_type, i12n))
1014
+ def self.from_hash(init_hash)
1015
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::KeyedEntry initializer', _pcore_type.init_hash_type, init_hash))
1016
1016
  end
1017
1017
 
1018
- def self.from_asserted_hash(i12n)
1018
+ def self.from_asserted_hash(init_hash)
1019
1019
  new(
1020
- i12n['locator'],
1021
- i12n['offset'],
1022
- i12n['length'],
1023
- i12n['key'],
1024
- i12n['value'])
1020
+ init_hash['locator'],
1021
+ init_hash['offset'],
1022
+ init_hash['length'],
1023
+ init_hash['key'],
1024
+ init_hash['value'])
1025
1025
  end
1026
1026
 
1027
1027
  def self.create(locator, offset, length, key, value)
@@ -1091,16 +1091,16 @@ class LiteralHash < Expression
1091
1091
  })
1092
1092
  end
1093
1093
 
1094
- def self.from_hash(i12n)
1095
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralHash initializer', _pcore_type.i12n_type, i12n))
1094
+ def self.from_hash(init_hash)
1095
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralHash initializer', _pcore_type.init_hash_type, init_hash))
1096
1096
  end
1097
1097
 
1098
- def self.from_asserted_hash(i12n)
1098
+ def self.from_asserted_hash(init_hash)
1099
1099
  new(
1100
- i12n['locator'],
1101
- i12n['offset'],
1102
- i12n['length'],
1103
- i12n.fetch('entries') { _pcore_type['entries'].value })
1100
+ init_hash['locator'],
1101
+ init_hash['offset'],
1102
+ init_hash['length'],
1103
+ init_hash.fetch('entries') { _pcore_type['entries'].value })
1104
1104
  end
1105
1105
 
1106
1106
  def self.create(locator, offset, length, entries = _pcore_type['entries'].value)
@@ -1160,16 +1160,16 @@ class BlockExpression < Expression
1160
1160
  })
1161
1161
  end
1162
1162
 
1163
- def self.from_hash(i12n)
1164
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::BlockExpression initializer', _pcore_type.i12n_type, i12n))
1163
+ def self.from_hash(init_hash)
1164
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::BlockExpression initializer', _pcore_type.init_hash_type, init_hash))
1165
1165
  end
1166
1166
 
1167
- def self.from_asserted_hash(i12n)
1167
+ def self.from_asserted_hash(init_hash)
1168
1168
  new(
1169
- i12n['locator'],
1170
- i12n['offset'],
1171
- i12n['length'],
1172
- i12n.fetch('statements') { _pcore_type['statements'].value })
1169
+ init_hash['locator'],
1170
+ init_hash['offset'],
1171
+ init_hash['length'],
1172
+ init_hash.fetch('statements') { _pcore_type['statements'].value })
1173
1173
  end
1174
1174
 
1175
1175
  def self.create(locator, offset, length, statements = _pcore_type['statements'].value)
@@ -1216,6 +1216,14 @@ class BlockExpression < Expression
1216
1216
  alias == eql?
1217
1217
  end
1218
1218
 
1219
+ class ApplyBlockExpression < BlockExpression
1220
+ def self._pcore_type
1221
+ @_pcore_type ||= Types::PObjectType.new('Puppet::AST::ApplyBlockExpression', {
1222
+ 'parent' => BlockExpression._pcore_type,
1223
+ })
1224
+ end
1225
+ end
1226
+
1219
1227
  class CaseOption < Expression
1220
1228
  def self._pcore_type
1221
1229
  @_pcore_type ||= Types::PObjectType.new('Puppet::AST::CaseOption', {
@@ -1230,17 +1238,17 @@ class CaseOption < Expression
1230
1238
  })
1231
1239
  end
1232
1240
 
1233
- def self.from_hash(i12n)
1234
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CaseOption initializer', _pcore_type.i12n_type, i12n))
1241
+ def self.from_hash(init_hash)
1242
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CaseOption initializer', _pcore_type.init_hash_type, init_hash))
1235
1243
  end
1236
1244
 
1237
- def self.from_asserted_hash(i12n)
1245
+ def self.from_asserted_hash(init_hash)
1238
1246
  new(
1239
- i12n['locator'],
1240
- i12n['offset'],
1241
- i12n['length'],
1242
- i12n['values'],
1243
- i12n['then_expr'])
1247
+ init_hash['locator'],
1248
+ init_hash['offset'],
1249
+ init_hash['length'],
1250
+ init_hash['values'],
1251
+ init_hash['then_expr'])
1244
1252
  end
1245
1253
 
1246
1254
  def self.create(locator, offset, length, values, then_expr = nil)
@@ -1311,17 +1319,17 @@ class CaseExpression < Expression
1311
1319
  })
1312
1320
  end
1313
1321
 
1314
- def self.from_hash(i12n)
1315
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CaseExpression initializer', _pcore_type.i12n_type, i12n))
1322
+ def self.from_hash(init_hash)
1323
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CaseExpression initializer', _pcore_type.init_hash_type, init_hash))
1316
1324
  end
1317
1325
 
1318
- def self.from_asserted_hash(i12n)
1326
+ def self.from_asserted_hash(init_hash)
1319
1327
  new(
1320
- i12n['locator'],
1321
- i12n['offset'],
1322
- i12n['length'],
1323
- i12n['test'],
1324
- i12n.fetch('options') { _pcore_type['options'].value })
1328
+ init_hash['locator'],
1329
+ init_hash['offset'],
1330
+ init_hash['length'],
1331
+ init_hash['test'],
1332
+ init_hash.fetch('options') { _pcore_type['options'].value })
1325
1333
  end
1326
1334
 
1327
1335
  def self.create(locator, offset, length, test, options = _pcore_type['options'].value)
@@ -1391,16 +1399,16 @@ class QueryExpression < Expression
1391
1399
  })
1392
1400
  end
1393
1401
 
1394
- def self.from_hash(i12n)
1395
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QueryExpression initializer', _pcore_type.i12n_type, i12n))
1402
+ def self.from_hash(init_hash)
1403
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QueryExpression initializer', _pcore_type.init_hash_type, init_hash))
1396
1404
  end
1397
1405
 
1398
- def self.from_asserted_hash(i12n)
1406
+ def self.from_asserted_hash(init_hash)
1399
1407
  new(
1400
- i12n['locator'],
1401
- i12n['offset'],
1402
- i12n['length'],
1403
- i12n['expr'])
1408
+ init_hash['locator'],
1409
+ init_hash['offset'],
1410
+ init_hash['length'],
1411
+ init_hash['expr'])
1404
1412
  end
1405
1413
 
1406
1414
  def self.create(locator, offset, length, expr = nil)
@@ -1509,18 +1517,18 @@ class AttributeOperation < AbstractAttributeOperation
1509
1517
  })
1510
1518
  end
1511
1519
 
1512
- def self.from_hash(i12n)
1513
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AttributeOperation initializer', _pcore_type.i12n_type, i12n))
1520
+ def self.from_hash(init_hash)
1521
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AttributeOperation initializer', _pcore_type.init_hash_type, init_hash))
1514
1522
  end
1515
1523
 
1516
- def self.from_asserted_hash(i12n)
1524
+ def self.from_asserted_hash(init_hash)
1517
1525
  new(
1518
- i12n['locator'],
1519
- i12n['offset'],
1520
- i12n['length'],
1521
- i12n['attribute_name'],
1522
- i12n['operator'],
1523
- i12n['value_expr'])
1526
+ init_hash['locator'],
1527
+ init_hash['offset'],
1528
+ init_hash['length'],
1529
+ init_hash['attribute_name'],
1530
+ init_hash['operator'],
1531
+ init_hash['value_expr'])
1524
1532
  end
1525
1533
 
1526
1534
  def self.create(locator, offset, length, attribute_name, operator, value_expr)
@@ -1587,16 +1595,16 @@ class AttributesOperation < AbstractAttributeOperation
1587
1595
  })
1588
1596
  end
1589
1597
 
1590
- def self.from_hash(i12n)
1591
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AttributesOperation initializer', _pcore_type.i12n_type, i12n))
1598
+ def self.from_hash(init_hash)
1599
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AttributesOperation initializer', _pcore_type.init_hash_type, init_hash))
1592
1600
  end
1593
1601
 
1594
- def self.from_asserted_hash(i12n)
1602
+ def self.from_asserted_hash(init_hash)
1595
1603
  new(
1596
- i12n['locator'],
1597
- i12n['offset'],
1598
- i12n['length'],
1599
- i12n['expr'])
1604
+ init_hash['locator'],
1605
+ init_hash['offset'],
1606
+ init_hash['length'],
1607
+ init_hash['expr'])
1600
1608
  end
1601
1609
 
1602
1610
  def self.create(locator, offset, length, expr)
@@ -1658,18 +1666,18 @@ class CollectExpression < Expression
1658
1666
  })
1659
1667
  end
1660
1668
 
1661
- def self.from_hash(i12n)
1662
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CollectExpression initializer', _pcore_type.i12n_type, i12n))
1669
+ def self.from_hash(init_hash)
1670
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CollectExpression initializer', _pcore_type.init_hash_type, init_hash))
1663
1671
  end
1664
1672
 
1665
- def self.from_asserted_hash(i12n)
1673
+ def self.from_asserted_hash(init_hash)
1666
1674
  new(
1667
- i12n['locator'],
1668
- i12n['offset'],
1669
- i12n['length'],
1670
- i12n['type_expr'],
1671
- i12n['query'],
1672
- i12n.fetch('operations') { _pcore_type['operations'].value })
1675
+ init_hash['locator'],
1676
+ init_hash['offset'],
1677
+ init_hash['length'],
1678
+ init_hash['type_expr'],
1679
+ init_hash['query'],
1680
+ init_hash.fetch('operations') { _pcore_type['operations'].value })
1673
1681
  end
1674
1682
 
1675
1683
  def self.create(locator, offset, length, type_expr, query, operations = _pcore_type['operations'].value)
@@ -1758,19 +1766,19 @@ class Parameter < Positioned
1758
1766
  })
1759
1767
  end
1760
1768
 
1761
- def self.from_hash(i12n)
1762
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::Parameter initializer', _pcore_type.i12n_type, i12n))
1769
+ def self.from_hash(init_hash)
1770
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::Parameter initializer', _pcore_type.init_hash_type, init_hash))
1763
1771
  end
1764
1772
 
1765
- def self.from_asserted_hash(i12n)
1773
+ def self.from_asserted_hash(init_hash)
1766
1774
  new(
1767
- i12n['locator'],
1768
- i12n['offset'],
1769
- i12n['length'],
1770
- i12n['name'],
1771
- i12n['value'],
1772
- i12n['type_expr'],
1773
- i12n['captures_rest'])
1775
+ init_hash['locator'],
1776
+ init_hash['offset'],
1777
+ init_hash['length'],
1778
+ init_hash['name'],
1779
+ init_hash['value'],
1780
+ init_hash['type_expr'],
1781
+ init_hash['captures_rest'])
1774
1782
  end
1775
1783
 
1776
1784
  def self.create(locator, offset, length, name, value = nil, type_expr = nil, captures_rest = nil)
@@ -1863,18 +1871,18 @@ class NamedDefinition < Definition
1863
1871
  })
1864
1872
  end
1865
1873
 
1866
- def self.from_hash(i12n)
1867
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::NamedDefinition initializer', _pcore_type.i12n_type, i12n))
1874
+ def self.from_hash(init_hash)
1875
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::NamedDefinition initializer', _pcore_type.init_hash_type, init_hash))
1868
1876
  end
1869
1877
 
1870
- def self.from_asserted_hash(i12n)
1878
+ def self.from_asserted_hash(init_hash)
1871
1879
  new(
1872
- i12n['locator'],
1873
- i12n['offset'],
1874
- i12n['length'],
1875
- i12n['name'],
1876
- i12n.fetch('parameters') { _pcore_type['parameters'].value },
1877
- i12n['body'])
1880
+ init_hash['locator'],
1881
+ init_hash['offset'],
1882
+ init_hash['length'],
1883
+ init_hash['name'],
1884
+ init_hash.fetch('parameters') { _pcore_type['parameters'].value },
1885
+ init_hash['body'])
1878
1886
  end
1879
1887
 
1880
1888
  def self.create(locator, offset, length, name, parameters = _pcore_type['parameters'].value, body = nil)
@@ -1949,19 +1957,19 @@ class FunctionDefinition < NamedDefinition
1949
1957
  })
1950
1958
  end
1951
1959
 
1952
- def self.from_hash(i12n)
1953
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::FunctionDefinition initializer', _pcore_type.i12n_type, i12n))
1960
+ def self.from_hash(init_hash)
1961
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::FunctionDefinition initializer', _pcore_type.init_hash_type, init_hash))
1954
1962
  end
1955
1963
 
1956
- def self.from_asserted_hash(i12n)
1964
+ def self.from_asserted_hash(init_hash)
1957
1965
  new(
1958
- i12n['locator'],
1959
- i12n['offset'],
1960
- i12n['length'],
1961
- i12n['name'],
1962
- i12n.fetch('parameters') { _pcore_type['parameters'].value },
1963
- i12n['body'],
1964
- i12n['return_type'])
1966
+ init_hash['locator'],
1967
+ init_hash['offset'],
1968
+ init_hash['length'],
1969
+ init_hash['name'],
1970
+ init_hash.fetch('parameters') { _pcore_type['parameters'].value },
1971
+ init_hash['body'],
1972
+ init_hash['return_type'])
1965
1973
  end
1966
1974
 
1967
1975
  def self.create(locator, offset, length, name, parameters = _pcore_type['parameters'].value, body = nil, return_type = nil)
@@ -2083,16 +2091,16 @@ class QRefDefinition < Definition
2083
2091
  })
2084
2092
  end
2085
2093
 
2086
- def self.from_hash(i12n)
2087
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QRefDefinition initializer', _pcore_type.i12n_type, i12n))
2094
+ def self.from_hash(init_hash)
2095
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QRefDefinition initializer', _pcore_type.init_hash_type, init_hash))
2088
2096
  end
2089
2097
 
2090
- def self.from_asserted_hash(i12n)
2098
+ def self.from_asserted_hash(init_hash)
2091
2099
  new(
2092
- i12n['locator'],
2093
- i12n['offset'],
2094
- i12n['length'],
2095
- i12n['name'])
2100
+ init_hash['locator'],
2101
+ init_hash['offset'],
2102
+ init_hash['length'],
2103
+ init_hash['name'])
2096
2104
  end
2097
2105
 
2098
2106
  def self.create(locator, offset, length, name)
@@ -2139,17 +2147,17 @@ class TypeAlias < QRefDefinition
2139
2147
  })
2140
2148
  end
2141
2149
 
2142
- def self.from_hash(i12n)
2143
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::TypeAlias initializer', _pcore_type.i12n_type, i12n))
2150
+ def self.from_hash(init_hash)
2151
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::TypeAlias initializer', _pcore_type.init_hash_type, init_hash))
2144
2152
  end
2145
2153
 
2146
- def self.from_asserted_hash(i12n)
2154
+ def self.from_asserted_hash(init_hash)
2147
2155
  new(
2148
- i12n['locator'],
2149
- i12n['offset'],
2150
- i12n['length'],
2151
- i12n['name'],
2152
- i12n['type_expr'])
2156
+ init_hash['locator'],
2157
+ init_hash['offset'],
2158
+ init_hash['length'],
2159
+ init_hash['name'],
2160
+ init_hash['type_expr'])
2153
2161
  end
2154
2162
 
2155
2163
  def self.create(locator, offset, length, name, type_expr = nil)
@@ -2214,17 +2222,17 @@ class TypeMapping < Definition
2214
2222
  })
2215
2223
  end
2216
2224
 
2217
- def self.from_hash(i12n)
2218
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::TypeMapping initializer', _pcore_type.i12n_type, i12n))
2225
+ def self.from_hash(init_hash)
2226
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::TypeMapping initializer', _pcore_type.init_hash_type, init_hash))
2219
2227
  end
2220
2228
 
2221
- def self.from_asserted_hash(i12n)
2229
+ def self.from_asserted_hash(init_hash)
2222
2230
  new(
2223
- i12n['locator'],
2224
- i12n['offset'],
2225
- i12n['length'],
2226
- i12n['type_expr'],
2227
- i12n['mapping_expr'])
2231
+ init_hash['locator'],
2232
+ init_hash['offset'],
2233
+ init_hash['length'],
2234
+ init_hash['type_expr'],
2235
+ init_hash['mapping_expr'])
2228
2236
  end
2229
2237
 
2230
2238
  def self.create(locator, offset, length, type_expr = nil, mapping_expr = nil)
@@ -2298,18 +2306,18 @@ class TypeDefinition < QRefDefinition
2298
2306
  })
2299
2307
  end
2300
2308
 
2301
- def self.from_hash(i12n)
2302
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::TypeDefinition initializer', _pcore_type.i12n_type, i12n))
2309
+ def self.from_hash(init_hash)
2310
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::TypeDefinition initializer', _pcore_type.init_hash_type, init_hash))
2303
2311
  end
2304
2312
 
2305
- def self.from_asserted_hash(i12n)
2313
+ def self.from_asserted_hash(init_hash)
2306
2314
  new(
2307
- i12n['locator'],
2308
- i12n['offset'],
2309
- i12n['length'],
2310
- i12n['name'],
2311
- i12n['parent'],
2312
- i12n['body'])
2315
+ init_hash['locator'],
2316
+ init_hash['offset'],
2317
+ init_hash['length'],
2318
+ init_hash['name'],
2319
+ init_hash['parent'],
2320
+ init_hash['body'])
2313
2321
  end
2314
2322
 
2315
2323
  def self.create(locator, offset, length, name, parent = nil, body = nil)
@@ -2380,18 +2388,18 @@ class NodeDefinition < Definition
2380
2388
  })
2381
2389
  end
2382
2390
 
2383
- def self.from_hash(i12n)
2384
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::NodeDefinition initializer', _pcore_type.i12n_type, i12n))
2391
+ def self.from_hash(init_hash)
2392
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::NodeDefinition initializer', _pcore_type.init_hash_type, init_hash))
2385
2393
  end
2386
2394
 
2387
- def self.from_asserted_hash(i12n)
2395
+ def self.from_asserted_hash(init_hash)
2388
2396
  new(
2389
- i12n['locator'],
2390
- i12n['offset'],
2391
- i12n['length'],
2392
- i12n['host_matches'],
2393
- i12n['parent'],
2394
- i12n['body'])
2397
+ init_hash['locator'],
2398
+ init_hash['offset'],
2399
+ init_hash['length'],
2400
+ init_hash['host_matches'],
2401
+ init_hash['parent'],
2402
+ init_hash['body'])
2395
2403
  end
2396
2404
 
2397
2405
  def self.create(locator, offset, length, host_matches, parent = nil, body = nil)
@@ -2471,16 +2479,16 @@ class SiteDefinition < Definition
2471
2479
  })
2472
2480
  end
2473
2481
 
2474
- def self.from_hash(i12n)
2475
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SiteDefinition initializer', _pcore_type.i12n_type, i12n))
2482
+ def self.from_hash(init_hash)
2483
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SiteDefinition initializer', _pcore_type.init_hash_type, init_hash))
2476
2484
  end
2477
2485
 
2478
- def self.from_asserted_hash(i12n)
2486
+ def self.from_asserted_hash(init_hash)
2479
2487
  new(
2480
- i12n['locator'],
2481
- i12n['offset'],
2482
- i12n['length'],
2483
- i12n['body'])
2488
+ init_hash['locator'],
2489
+ init_hash['offset'],
2490
+ init_hash['length'],
2491
+ init_hash['body'])
2484
2492
  end
2485
2493
 
2486
2494
  def self.create(locator, offset, length, body = nil)
@@ -2549,19 +2557,19 @@ class SubLocatedExpression < Expression
2549
2557
  })
2550
2558
  end
2551
2559
 
2552
- def self.from_hash(i12n)
2553
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SubLocatedExpression initializer', _pcore_type.i12n_type, i12n))
2560
+ def self.from_hash(init_hash)
2561
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SubLocatedExpression initializer', _pcore_type.init_hash_type, init_hash))
2554
2562
  end
2555
2563
 
2556
- def self.from_asserted_hash(i12n)
2564
+ def self.from_asserted_hash(init_hash)
2557
2565
  new(
2558
- i12n['locator'],
2559
- i12n['offset'],
2560
- i12n['length'],
2561
- i12n['expr'],
2562
- i12n.fetch('line_offsets') { _pcore_type['line_offsets'].value },
2563
- i12n['leading_line_count'],
2564
- i12n['leading_line_offset'])
2566
+ init_hash['locator'],
2567
+ init_hash['offset'],
2568
+ init_hash['length'],
2569
+ init_hash['expr'],
2570
+ init_hash.fetch('line_offsets') { _pcore_type['line_offsets'].value },
2571
+ init_hash['leading_line_count'],
2572
+ init_hash['leading_line_offset'])
2565
2573
  end
2566
2574
 
2567
2575
  def self.create(locator, offset, length, expr, line_offsets = _pcore_type['line_offsets'].value, leading_line_count = nil, leading_line_offset = nil)
@@ -2637,17 +2645,17 @@ class HeredocExpression < Expression
2637
2645
  })
2638
2646
  end
2639
2647
 
2640
- def self.from_hash(i12n)
2641
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::HeredocExpression initializer', _pcore_type.i12n_type, i12n))
2648
+ def self.from_hash(init_hash)
2649
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::HeredocExpression initializer', _pcore_type.init_hash_type, init_hash))
2642
2650
  end
2643
2651
 
2644
- def self.from_asserted_hash(i12n)
2652
+ def self.from_asserted_hash(init_hash)
2645
2653
  new(
2646
- i12n['locator'],
2647
- i12n['offset'],
2648
- i12n['length'],
2649
- i12n['text_expr'],
2650
- i12n['syntax'])
2654
+ init_hash['locator'],
2655
+ init_hash['offset'],
2656
+ init_hash['length'],
2657
+ init_hash['text_expr'],
2658
+ init_hash['syntax'])
2651
2659
  end
2652
2660
 
2653
2661
  def self.create(locator, offset, length, text_expr, syntax = nil)
@@ -2712,19 +2720,19 @@ class HostClassDefinition < NamedDefinition
2712
2720
  })
2713
2721
  end
2714
2722
 
2715
- def self.from_hash(i12n)
2716
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::HostClassDefinition initializer', _pcore_type.i12n_type, i12n))
2723
+ def self.from_hash(init_hash)
2724
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::HostClassDefinition initializer', _pcore_type.init_hash_type, init_hash))
2717
2725
  end
2718
2726
 
2719
- def self.from_asserted_hash(i12n)
2727
+ def self.from_asserted_hash(init_hash)
2720
2728
  new(
2721
- i12n['locator'],
2722
- i12n['offset'],
2723
- i12n['length'],
2724
- i12n['name'],
2725
- i12n.fetch('parameters') { _pcore_type['parameters'].value },
2726
- i12n['body'],
2727
- i12n['parent_class'])
2729
+ init_hash['locator'],
2730
+ init_hash['offset'],
2731
+ init_hash['length'],
2732
+ init_hash['name'],
2733
+ init_hash.fetch('parameters') { _pcore_type['parameters'].value },
2734
+ init_hash['body'],
2735
+ init_hash['parent_class'])
2728
2736
  end
2729
2737
 
2730
2738
  def self.create(locator, offset, length, name, parameters = _pcore_type['parameters'].value, body = nil, parent_class = nil)
@@ -2779,6 +2787,37 @@ class HostClassDefinition < NamedDefinition
2779
2787
  alias == eql?
2780
2788
  end
2781
2789
 
2790
+ class PlanDefinition < FunctionDefinition
2791
+ def self._pcore_type
2792
+ @_pcore_type ||= Types::PObjectType.new('Puppet::AST::PlanDefinition', {
2793
+ 'parent' => FunctionDefinition._pcore_type
2794
+ })
2795
+ end
2796
+
2797
+ def _pcore_contents
2798
+ @parameters.each { |value| yield(value) }
2799
+ yield(@body) unless @body.nil?
2800
+ yield(@return_type) unless @return_type.nil?
2801
+ end
2802
+
2803
+ def _pcore_all_contents(path, &block)
2804
+ path << self
2805
+ @parameters.each do |value|
2806
+ block.call(value, path)
2807
+ value._pcore_all_contents(path, &block)
2808
+ end
2809
+ unless @body.nil?
2810
+ block.call(@body, path)
2811
+ @body._pcore_all_contents(path, &block)
2812
+ end
2813
+ unless @return_type.nil?
2814
+ block.call(@return_type, path)
2815
+ @return_type._pcore_all_contents(path, &block)
2816
+ end
2817
+ path.pop
2818
+ end
2819
+ end
2820
+
2782
2821
  class LambdaExpression < Expression
2783
2822
  def self._pcore_type
2784
2823
  @_pcore_type ||= Types::PObjectType.new('Puppet::AST::LambdaExpression', {
@@ -2800,18 +2839,18 @@ class LambdaExpression < Expression
2800
2839
  })
2801
2840
  end
2802
2841
 
2803
- def self.from_hash(i12n)
2804
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LambdaExpression initializer', _pcore_type.i12n_type, i12n))
2842
+ def self.from_hash(init_hash)
2843
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LambdaExpression initializer', _pcore_type.init_hash_type, init_hash))
2805
2844
  end
2806
2845
 
2807
- def self.from_asserted_hash(i12n)
2846
+ def self.from_asserted_hash(init_hash)
2808
2847
  new(
2809
- i12n['locator'],
2810
- i12n['offset'],
2811
- i12n['length'],
2812
- i12n.fetch('parameters') { _pcore_type['parameters'].value },
2813
- i12n['body'],
2814
- i12n['return_type'])
2848
+ init_hash['locator'],
2849
+ init_hash['offset'],
2850
+ init_hash['length'],
2851
+ init_hash.fetch('parameters') { _pcore_type['parameters'].value },
2852
+ init_hash['body'],
2853
+ init_hash['return_type'])
2815
2854
  end
2816
2855
 
2817
2856
  def self.create(locator, offset, length, parameters = _pcore_type['parameters'].value, body = nil, return_type = nil)
@@ -2878,6 +2917,90 @@ class LambdaExpression < Expression
2878
2917
  alias == eql?
2879
2918
  end
2880
2919
 
2920
+ class ApplyExpression < Expression
2921
+ def self._pcore_type
2922
+ @_pcore_type ||= Types::PObjectType.new('Puppet::AST::ApplyExpression', {
2923
+ 'parent' => Expression._pcore_type,
2924
+ 'attributes' => {
2925
+ 'arguments' => {
2926
+ 'type' => Types::PArrayType.new(Expression._pcore_type),
2927
+ 'value' => []
2928
+ },
2929
+ 'body' => {
2930
+ 'type' => Types::POptionalType.new(Expression._pcore_type),
2931
+ 'value' => nil
2932
+ }
2933
+ }
2934
+ })
2935
+ end
2936
+
2937
+ def self.from_hash(init_hash)
2938
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ApplyExpression initializer', _pcore_type.init_hash_type, init_hash))
2939
+ end
2940
+
2941
+ def self.from_asserted_hash(init_hash)
2942
+ new(
2943
+ init_hash['locator'],
2944
+ init_hash['offset'],
2945
+ init_hash['length'],
2946
+ init_hash.fetch('arguments') { _pcore_type['arguments'].value },
2947
+ init_hash['body'])
2948
+ end
2949
+
2950
+ def self.create(locator, offset, length, arguments = _pcore_type['arguments'].value, body = nil)
2951
+ ta = Types::TypeAsserter
2952
+ attrs = _pcore_type.attributes(true)
2953
+ ta.assert_instance_of('Puppet::AST::Positioned[locator]', attrs['locator'].type, locator)
2954
+ ta.assert_instance_of('Puppet::AST::Positioned[offset]', attrs['offset'].type, offset)
2955
+ ta.assert_instance_of('Puppet::AST::Positioned[length]', attrs['length'].type, length)
2956
+ ta.assert_instance_of('Puppet::AST::ApplyExpression[arguments]', attrs['arguments'].type, arguments)
2957
+ ta.assert_instance_of('Puppet::AST::ApplyExpression[body]', attrs['body'].type, body)
2958
+ new(locator, offset, length, arguments, body)
2959
+ end
2960
+
2961
+ attr_reader :arguments
2962
+ attr_reader :body
2963
+
2964
+ def initialize(locator, offset, length, arguments = _pcore_type['arguments'].value, body = nil)
2965
+ super(locator, offset, length)
2966
+ @hash = @hash ^ arguments.hash ^ body.hash
2967
+ @arguments = arguments
2968
+ @body = body
2969
+ end
2970
+
2971
+ def _pcore_init_hash
2972
+ result = super
2973
+ result['arguments'] = @arguments unless _pcore_type['arguments'].default_value?(@arguments)
2974
+ result['body'] = @body unless @body == nil
2975
+ result
2976
+ end
2977
+
2978
+ def _pcore_contents
2979
+ @arguments.each { |value| yield(value) }
2980
+ yield(@body) unless @body.nil?
2981
+ end
2982
+
2983
+ def _pcore_all_contents(path, &block)
2984
+ path << self
2985
+ @arguments.each do |value|
2986
+ block.call(value, path)
2987
+ value._pcore_all_contents(path, &block)
2988
+ end
2989
+ unless @body.nil?
2990
+ block.call(@body, path)
2991
+ @body._pcore_all_contents(path, &block)
2992
+ end
2993
+ path.pop
2994
+ end
2995
+
2996
+ def eql?(o)
2997
+ super &&
2998
+ @arguments.eql?(o.arguments) &&
2999
+ @body.eql?(o.body)
3000
+ end
3001
+ alias == eql?
3002
+ end
3003
+
2881
3004
  class IfExpression < Expression
2882
3005
  def self._pcore_type
2883
3006
  @_pcore_type ||= Types::PObjectType.new('Puppet::AST::IfExpression', {
@@ -2896,18 +3019,18 @@ class IfExpression < Expression
2896
3019
  })
2897
3020
  end
2898
3021
 
2899
- def self.from_hash(i12n)
2900
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::IfExpression initializer', _pcore_type.i12n_type, i12n))
3022
+ def self.from_hash(init_hash)
3023
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::IfExpression initializer', _pcore_type.init_hash_type, init_hash))
2901
3024
  end
2902
3025
 
2903
- def self.from_asserted_hash(i12n)
3026
+ def self.from_asserted_hash(init_hash)
2904
3027
  new(
2905
- i12n['locator'],
2906
- i12n['offset'],
2907
- i12n['length'],
2908
- i12n['test'],
2909
- i12n['then_expr'],
2910
- i12n['else_expr'])
3028
+ init_hash['locator'],
3029
+ init_hash['offset'],
3030
+ init_hash['length'],
3031
+ init_hash['test'],
3032
+ init_hash['then_expr'],
3033
+ init_hash['else_expr'])
2911
3034
  end
2912
3035
 
2913
3036
  def self.create(locator, offset, length, test, then_expr = nil, else_expr = nil)
@@ -3027,19 +3150,19 @@ class CallExpression < Expression
3027
3150
  })
3028
3151
  end
3029
3152
 
3030
- def self.from_hash(i12n)
3031
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CallExpression initializer', _pcore_type.i12n_type, i12n))
3153
+ def self.from_hash(init_hash)
3154
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CallExpression initializer', _pcore_type.init_hash_type, init_hash))
3032
3155
  end
3033
3156
 
3034
- def self.from_asserted_hash(i12n)
3157
+ def self.from_asserted_hash(init_hash)
3035
3158
  new(
3036
- i12n['locator'],
3037
- i12n['offset'],
3038
- i12n['length'],
3039
- i12n['functor_expr'],
3040
- i12n.fetch('rval_required') { false },
3041
- i12n.fetch('arguments') { _pcore_type['arguments'].value },
3042
- i12n['lambda'])
3159
+ init_hash['locator'],
3160
+ init_hash['offset'],
3161
+ init_hash['length'],
3162
+ init_hash['functor_expr'],
3163
+ init_hash.fetch('rval_required') { false },
3164
+ init_hash.fetch('arguments') { _pcore_type['arguments'].value },
3165
+ init_hash['lambda'])
3043
3166
  end
3044
3167
 
3045
3168
  def self.create(locator, offset, length, functor_expr, rval_required = false, arguments = _pcore_type['arguments'].value, lambda = nil)
@@ -3231,17 +3354,17 @@ class LiteralRegularExpression < LiteralValue
3231
3354
  })
3232
3355
  end
3233
3356
 
3234
- def self.from_hash(i12n)
3235
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralRegularExpression initializer', _pcore_type.i12n_type, i12n))
3357
+ def self.from_hash(init_hash)
3358
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralRegularExpression initializer', _pcore_type.init_hash_type, init_hash))
3236
3359
  end
3237
3360
 
3238
- def self.from_asserted_hash(i12n)
3361
+ def self.from_asserted_hash(init_hash)
3239
3362
  new(
3240
- i12n['locator'],
3241
- i12n['offset'],
3242
- i12n['length'],
3243
- i12n['value'],
3244
- i12n['pattern'])
3363
+ init_hash['locator'],
3364
+ init_hash['offset'],
3365
+ init_hash['length'],
3366
+ init_hash['value'],
3367
+ init_hash['pattern'])
3245
3368
  end
3246
3369
 
3247
3370
  def self.create(locator, offset, length, value, pattern)
@@ -3290,16 +3413,16 @@ class LiteralString < LiteralValue
3290
3413
  })
3291
3414
  end
3292
3415
 
3293
- def self.from_hash(i12n)
3294
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralString initializer', _pcore_type.i12n_type, i12n))
3416
+ def self.from_hash(init_hash)
3417
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralString initializer', _pcore_type.init_hash_type, init_hash))
3295
3418
  end
3296
3419
 
3297
- def self.from_asserted_hash(i12n)
3420
+ def self.from_asserted_hash(init_hash)
3298
3421
  new(
3299
- i12n['locator'],
3300
- i12n['offset'],
3301
- i12n['length'],
3302
- i12n['value'])
3422
+ init_hash['locator'],
3423
+ init_hash['offset'],
3424
+ init_hash['length'],
3425
+ init_hash['value'])
3303
3426
  end
3304
3427
 
3305
3428
  def self.create(locator, offset, length, value)
@@ -3355,17 +3478,17 @@ class LiteralInteger < LiteralNumber
3355
3478
  })
3356
3479
  end
3357
3480
 
3358
- def self.from_hash(i12n)
3359
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralInteger initializer', _pcore_type.i12n_type, i12n))
3481
+ def self.from_hash(init_hash)
3482
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralInteger initializer', _pcore_type.init_hash_type, init_hash))
3360
3483
  end
3361
3484
 
3362
- def self.from_asserted_hash(i12n)
3485
+ def self.from_asserted_hash(init_hash)
3363
3486
  new(
3364
- i12n['locator'],
3365
- i12n['offset'],
3366
- i12n['length'],
3367
- i12n['value'],
3368
- i12n.fetch('radix') { 10 })
3487
+ init_hash['locator'],
3488
+ init_hash['offset'],
3489
+ init_hash['length'],
3490
+ init_hash['value'],
3491
+ init_hash.fetch('radix') { 10 })
3369
3492
  end
3370
3493
 
3371
3494
  def self.create(locator, offset, length, value, radix = 10)
@@ -3414,16 +3537,16 @@ class LiteralFloat < LiteralNumber
3414
3537
  })
3415
3538
  end
3416
3539
 
3417
- def self.from_hash(i12n)
3418
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralFloat initializer', _pcore_type.i12n_type, i12n))
3540
+ def self.from_hash(init_hash)
3541
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralFloat initializer', _pcore_type.init_hash_type, init_hash))
3419
3542
  end
3420
3543
 
3421
- def self.from_asserted_hash(i12n)
3544
+ def self.from_asserted_hash(init_hash)
3422
3545
  new(
3423
- i12n['locator'],
3424
- i12n['offset'],
3425
- i12n['length'],
3426
- i12n['value'])
3546
+ init_hash['locator'],
3547
+ init_hash['offset'],
3548
+ init_hash['length'],
3549
+ init_hash['value'])
3427
3550
  end
3428
3551
 
3429
3552
  def self.create(locator, offset, length, value)
@@ -3483,16 +3606,16 @@ class LiteralBoolean < LiteralValue
3483
3606
  })
3484
3607
  end
3485
3608
 
3486
- def self.from_hash(i12n)
3487
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralBoolean initializer', _pcore_type.i12n_type, i12n))
3609
+ def self.from_hash(init_hash)
3610
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::LiteralBoolean initializer', _pcore_type.init_hash_type, init_hash))
3488
3611
  end
3489
3612
 
3490
- def self.from_asserted_hash(i12n)
3613
+ def self.from_asserted_hash(init_hash)
3491
3614
  new(
3492
- i12n['locator'],
3493
- i12n['offset'],
3494
- i12n['length'],
3495
- i12n['value'])
3615
+ init_hash['locator'],
3616
+ init_hash['offset'],
3617
+ init_hash['length'],
3618
+ init_hash['value'])
3496
3619
  end
3497
3620
 
3498
3621
  def self.create(locator, offset, length, value)
@@ -3560,16 +3683,16 @@ class ConcatenatedString < Expression
3560
3683
  })
3561
3684
  end
3562
3685
 
3563
- def self.from_hash(i12n)
3564
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ConcatenatedString initializer', _pcore_type.i12n_type, i12n))
3686
+ def self.from_hash(init_hash)
3687
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ConcatenatedString initializer', _pcore_type.init_hash_type, init_hash))
3565
3688
  end
3566
3689
 
3567
- def self.from_asserted_hash(i12n)
3690
+ def self.from_asserted_hash(init_hash)
3568
3691
  new(
3569
- i12n['locator'],
3570
- i12n['offset'],
3571
- i12n['length'],
3572
- i12n.fetch('segments') { _pcore_type['segments'].value })
3692
+ init_hash['locator'],
3693
+ init_hash['offset'],
3694
+ init_hash['length'],
3695
+ init_hash.fetch('segments') { _pcore_type['segments'].value })
3573
3696
  end
3574
3697
 
3575
3698
  def self.create(locator, offset, length, segments = _pcore_type['segments'].value)
@@ -3626,16 +3749,16 @@ class QualifiedName < LiteralValue
3626
3749
  })
3627
3750
  end
3628
3751
 
3629
- def self.from_hash(i12n)
3630
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QualifiedName initializer', _pcore_type.i12n_type, i12n))
3752
+ def self.from_hash(init_hash)
3753
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QualifiedName initializer', _pcore_type.init_hash_type, init_hash))
3631
3754
  end
3632
3755
 
3633
- def self.from_asserted_hash(i12n)
3756
+ def self.from_asserted_hash(init_hash)
3634
3757
  new(
3635
- i12n['locator'],
3636
- i12n['offset'],
3637
- i12n['length'],
3638
- i12n['value'])
3758
+ init_hash['locator'],
3759
+ init_hash['offset'],
3760
+ init_hash['length'],
3761
+ init_hash['value'])
3639
3762
  end
3640
3763
 
3641
3764
  def self.create(locator, offset, length, value)
@@ -3683,17 +3806,17 @@ class ReservedWord < LiteralValue
3683
3806
  })
3684
3807
  end
3685
3808
 
3686
- def self.from_hash(i12n)
3687
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ReservedWord initializer', _pcore_type.i12n_type, i12n))
3809
+ def self.from_hash(init_hash)
3810
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ReservedWord initializer', _pcore_type.init_hash_type, init_hash))
3688
3811
  end
3689
3812
 
3690
- def self.from_asserted_hash(i12n)
3813
+ def self.from_asserted_hash(init_hash)
3691
3814
  new(
3692
- i12n['locator'],
3693
- i12n['offset'],
3694
- i12n['length'],
3695
- i12n['word'],
3696
- i12n['future'])
3815
+ init_hash['locator'],
3816
+ init_hash['offset'],
3817
+ init_hash['length'],
3818
+ init_hash['word'],
3819
+ init_hash['future'])
3697
3820
  end
3698
3821
 
3699
3822
  def self.create(locator, offset, length, word, future = nil)
@@ -3746,16 +3869,16 @@ class QualifiedReference < LiteralValue
3746
3869
  })
3747
3870
  end
3748
3871
 
3749
- def self.from_hash(i12n)
3750
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QualifiedReference initializer', _pcore_type.i12n_type, i12n))
3872
+ def self.from_hash(init_hash)
3873
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::QualifiedReference initializer', _pcore_type.init_hash_type, init_hash))
3751
3874
  end
3752
3875
 
3753
- def self.from_asserted_hash(i12n)
3876
+ def self.from_asserted_hash(init_hash)
3754
3877
  new(
3755
- i12n['locator'],
3756
- i12n['offset'],
3757
- i12n['length'],
3758
- i12n['cased_value'])
3878
+ init_hash['locator'],
3879
+ init_hash['offset'],
3880
+ init_hash['length'],
3881
+ init_hash['cased_value'])
3759
3882
  end
3760
3883
 
3761
3884
  def self.create(locator, offset, length, cased_value)
@@ -3831,17 +3954,17 @@ class EppExpression < Expression
3831
3954
  })
3832
3955
  end
3833
3956
 
3834
- def self.from_hash(i12n)
3835
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::EppExpression initializer', _pcore_type.i12n_type, i12n))
3957
+ def self.from_hash(init_hash)
3958
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::EppExpression initializer', _pcore_type.init_hash_type, init_hash))
3836
3959
  end
3837
3960
 
3838
- def self.from_asserted_hash(i12n)
3961
+ def self.from_asserted_hash(init_hash)
3839
3962
  new(
3840
- i12n['locator'],
3841
- i12n['offset'],
3842
- i12n['length'],
3843
- i12n['parameters_specified'],
3844
- i12n['body'])
3963
+ init_hash['locator'],
3964
+ init_hash['offset'],
3965
+ init_hash['length'],
3966
+ init_hash['parameters_specified'],
3967
+ init_hash['body'])
3845
3968
  end
3846
3969
 
3847
3970
  def self.create(locator, offset, length, parameters_specified = nil, body = nil)
@@ -3939,17 +4062,17 @@ class ResourceBody < Positioned
3939
4062
  })
3940
4063
  end
3941
4064
 
3942
- def self.from_hash(i12n)
3943
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceBody initializer', _pcore_type.i12n_type, i12n))
4065
+ def self.from_hash(init_hash)
4066
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceBody initializer', _pcore_type.init_hash_type, init_hash))
3944
4067
  end
3945
4068
 
3946
- def self.from_asserted_hash(i12n)
4069
+ def self.from_asserted_hash(init_hash)
3947
4070
  new(
3948
- i12n['locator'],
3949
- i12n['offset'],
3950
- i12n['length'],
3951
- i12n['title'],
3952
- i12n.fetch('operations') { _pcore_type['operations'].value })
4071
+ init_hash['locator'],
4072
+ init_hash['offset'],
4073
+ init_hash['length'],
4074
+ init_hash['title'],
4075
+ init_hash.fetch('operations') { _pcore_type['operations'].value })
3953
4076
  end
3954
4077
 
3955
4078
  def self.create(locator, offset, length, title = nil, operations = _pcore_type['operations'].value)
@@ -4027,16 +4150,16 @@ class AbstractResource < Expression
4027
4150
  })
4028
4151
  end
4029
4152
 
4030
- def self.from_hash(i12n)
4031
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AbstractResource initializer', _pcore_type.i12n_type, i12n))
4153
+ def self.from_hash(init_hash)
4154
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::AbstractResource initializer', _pcore_type.init_hash_type, init_hash))
4032
4155
  end
4033
4156
 
4034
- def self.from_asserted_hash(i12n)
4157
+ def self.from_asserted_hash(init_hash)
4035
4158
  new(
4036
- i12n['locator'],
4037
- i12n['offset'],
4038
- i12n['length'],
4039
- i12n.fetch('form') { "regular" })
4159
+ init_hash['locator'],
4160
+ init_hash['offset'],
4161
+ init_hash['length'],
4162
+ init_hash.fetch('form') { "regular" })
4040
4163
  end
4041
4164
 
4042
4165
  def self.create(locator, offset, length, form = "regular")
@@ -4092,18 +4215,18 @@ class ResourceExpression < AbstractResource
4092
4215
  })
4093
4216
  end
4094
4217
 
4095
- def self.from_hash(i12n)
4096
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceExpression initializer', _pcore_type.i12n_type, i12n))
4218
+ def self.from_hash(init_hash)
4219
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceExpression initializer', _pcore_type.init_hash_type, init_hash))
4097
4220
  end
4098
4221
 
4099
- def self.from_asserted_hash(i12n)
4222
+ def self.from_asserted_hash(init_hash)
4100
4223
  new(
4101
- i12n['locator'],
4102
- i12n['offset'],
4103
- i12n['length'],
4104
- i12n['type_name'],
4105
- i12n.fetch('form') { "regular" },
4106
- i12n.fetch('bodies') { _pcore_type['bodies'].value })
4224
+ init_hash['locator'],
4225
+ init_hash['offset'],
4226
+ init_hash['length'],
4227
+ init_hash['type_name'],
4228
+ init_hash.fetch('form') { "regular" },
4229
+ init_hash.fetch('bodies') { _pcore_type['bodies'].value })
4107
4230
  end
4108
4231
 
4109
4232
  def self.create(locator, offset, length, type_name, form = "regular", bodies = _pcore_type['bodies'].value)
@@ -4177,19 +4300,19 @@ class CapabilityMapping < Definition
4177
4300
  })
4178
4301
  end
4179
4302
 
4180
- def self.from_hash(i12n)
4181
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CapabilityMapping initializer', _pcore_type.i12n_type, i12n))
4303
+ def self.from_hash(init_hash)
4304
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::CapabilityMapping initializer', _pcore_type.init_hash_type, init_hash))
4182
4305
  end
4183
4306
 
4184
- def self.from_asserted_hash(i12n)
4307
+ def self.from_asserted_hash(init_hash)
4185
4308
  new(
4186
- i12n['locator'],
4187
- i12n['offset'],
4188
- i12n['length'],
4189
- i12n['kind'],
4190
- i12n['capability'],
4191
- i12n['component'],
4192
- i12n.fetch('mappings') { _pcore_type['mappings'].value })
4309
+ init_hash['locator'],
4310
+ init_hash['offset'],
4311
+ init_hash['length'],
4312
+ init_hash['kind'],
4313
+ init_hash['capability'],
4314
+ init_hash['component'],
4315
+ init_hash.fetch('mappings') { _pcore_type['mappings'].value })
4193
4316
  end
4194
4317
 
4195
4318
  def self.create(locator, offset, length, kind, capability, component, mappings = _pcore_type['mappings'].value)
@@ -4273,18 +4396,18 @@ class ResourceDefaultsExpression < AbstractResource
4273
4396
  })
4274
4397
  end
4275
4398
 
4276
- def self.from_hash(i12n)
4277
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceDefaultsExpression initializer', _pcore_type.i12n_type, i12n))
4399
+ def self.from_hash(init_hash)
4400
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceDefaultsExpression initializer', _pcore_type.init_hash_type, init_hash))
4278
4401
  end
4279
4402
 
4280
- def self.from_asserted_hash(i12n)
4403
+ def self.from_asserted_hash(init_hash)
4281
4404
  new(
4282
- i12n['locator'],
4283
- i12n['offset'],
4284
- i12n['length'],
4285
- i12n.fetch('form') { "regular" },
4286
- i12n['type_ref'],
4287
- i12n.fetch('operations') { _pcore_type['operations'].value })
4405
+ init_hash['locator'],
4406
+ init_hash['offset'],
4407
+ init_hash['length'],
4408
+ init_hash.fetch('form') { "regular" },
4409
+ init_hash['type_ref'],
4410
+ init_hash.fetch('operations') { _pcore_type['operations'].value })
4288
4411
  end
4289
4412
 
4290
4413
  def self.create(locator, offset, length, form = "regular", type_ref = nil, operations = _pcore_type['operations'].value)
@@ -4356,18 +4479,18 @@ class ResourceOverrideExpression < AbstractResource
4356
4479
  })
4357
4480
  end
4358
4481
 
4359
- def self.from_hash(i12n)
4360
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceOverrideExpression initializer', _pcore_type.i12n_type, i12n))
4482
+ def self.from_hash(init_hash)
4483
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::ResourceOverrideExpression initializer', _pcore_type.init_hash_type, init_hash))
4361
4484
  end
4362
4485
 
4363
- def self.from_asserted_hash(i12n)
4486
+ def self.from_asserted_hash(init_hash)
4364
4487
  new(
4365
- i12n['locator'],
4366
- i12n['offset'],
4367
- i12n['length'],
4368
- i12n['resources'],
4369
- i12n.fetch('form') { "regular" },
4370
- i12n.fetch('operations') { _pcore_type['operations'].value })
4488
+ init_hash['locator'],
4489
+ init_hash['offset'],
4490
+ init_hash['length'],
4491
+ init_hash['resources'],
4492
+ init_hash.fetch('form') { "regular" },
4493
+ init_hash.fetch('operations') { _pcore_type['operations'].value })
4371
4494
  end
4372
4495
 
4373
4496
  def self.create(locator, offset, length, resources, form = "regular", operations = _pcore_type['operations'].value)
@@ -4436,17 +4559,17 @@ class SelectorEntry < Positioned
4436
4559
  })
4437
4560
  end
4438
4561
 
4439
- def self.from_hash(i12n)
4440
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SelectorEntry initializer', _pcore_type.i12n_type, i12n))
4562
+ def self.from_hash(init_hash)
4563
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SelectorEntry initializer', _pcore_type.init_hash_type, init_hash))
4441
4564
  end
4442
4565
 
4443
- def self.from_asserted_hash(i12n)
4566
+ def self.from_asserted_hash(init_hash)
4444
4567
  new(
4445
- i12n['locator'],
4446
- i12n['offset'],
4447
- i12n['length'],
4448
- i12n['matching_expr'],
4449
- i12n['value_expr'])
4568
+ init_hash['locator'],
4569
+ init_hash['offset'],
4570
+ init_hash['length'],
4571
+ init_hash['matching_expr'],
4572
+ init_hash['value_expr'])
4450
4573
  end
4451
4574
 
4452
4575
  def self.create(locator, offset, length, matching_expr, value_expr)
@@ -4517,17 +4640,17 @@ class SelectorExpression < Expression
4517
4640
  })
4518
4641
  end
4519
4642
 
4520
- def self.from_hash(i12n)
4521
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SelectorExpression initializer', _pcore_type.i12n_type, i12n))
4643
+ def self.from_hash(init_hash)
4644
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::SelectorExpression initializer', _pcore_type.init_hash_type, init_hash))
4522
4645
  end
4523
4646
 
4524
- def self.from_asserted_hash(i12n)
4647
+ def self.from_asserted_hash(init_hash)
4525
4648
  new(
4526
- i12n['locator'],
4527
- i12n['offset'],
4528
- i12n['length'],
4529
- i12n['left_expr'],
4530
- i12n.fetch('selectors') { _pcore_type['selectors'].value })
4649
+ init_hash['locator'],
4650
+ init_hash['offset'],
4651
+ init_hash['length'],
4652
+ init_hash['left_expr'],
4653
+ init_hash.fetch('selectors') { _pcore_type['selectors'].value })
4531
4654
  end
4532
4655
 
4533
4656
  def self.create(locator, offset, length, left_expr, selectors = _pcore_type['selectors'].value)
@@ -4641,15 +4764,15 @@ class Program < PopsObject
4641
4764
  })
4642
4765
  end
4643
4766
 
4644
- def self.from_hash(i12n)
4645
- from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::Program initializer', _pcore_type.i12n_type, i12n))
4767
+ def self.from_hash(init_hash)
4768
+ from_asserted_hash(Types::TypeAsserter.assert_instance_of('Puppet::AST::Program initializer', _pcore_type.init_hash_type, init_hash))
4646
4769
  end
4647
4770
 
4648
- def self.from_asserted_hash(i12n)
4771
+ def self.from_asserted_hash(init_hash)
4649
4772
  new(
4650
- i12n['locator'],
4651
- i12n['body'],
4652
- i12n.fetch('definitions') { _pcore_type['definitions'].value })
4773
+ init_hash['locator'],
4774
+ init_hash['body'],
4775
+ init_hash.fetch('definitions') { _pcore_type['definitions'].value })
4653
4776
  end
4654
4777
 
4655
4778
  def self.create(locator, body = nil, definitions = _pcore_type['definitions'].value)
@@ -4665,6 +4788,10 @@ class Program < PopsObject
4665
4788
  attr_reader :definitions
4666
4789
  attr_reader :locator
4667
4790
 
4791
+ def current
4792
+ self
4793
+ end
4794
+
4668
4795
  def source_text
4669
4796
  @locator.string
4670
4797
  end
@@ -4721,6 +4848,7 @@ class Program < PopsObject
4721
4848
  end
4722
4849
 
4723
4850
  end
4851
+
4724
4852
  module Model
4725
4853
  @@pcore_ast_initialized = false
4726
4854
  def self.register_pcore_types
@@ -4752,6 +4880,7 @@ def self.register_pcore_types
4752
4880
  Model::KeyedEntry,
4753
4881
  Model::LiteralHash,
4754
4882
  Model::BlockExpression,
4883
+ Model::ApplyBlockExpression,
4755
4884
  Model::CaseOption,
4756
4885
  Model::CaseExpression,
4757
4886
  Model::QueryExpression,
@@ -4776,7 +4905,9 @@ def self.register_pcore_types
4776
4905
  Model::SubLocatedExpression,
4777
4906
  Model::HeredocExpression,
4778
4907
  Model::HostClassDefinition,
4908
+ Model::PlanDefinition,
4779
4909
  Model::LambdaExpression,
4910
+ Model::ApplyExpression,
4780
4911
  Model::IfExpression,
4781
4912
  Model::UnlessExpression,
4782
4913
  Model::CallExpression,