bolt 0.19.1 → 0.20.0

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

Potentially problematic release.


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

Files changed (1261) hide show
  1. checksums.yaml +4 -4
  2. data/bolt-modules/boltlib/lib/puppet/functions/puppetdb_query.rb +25 -0
  3. data/bolt-modules/boltlib/lib/puppet/functions/without_default_logging.rb +18 -0
  4. data/lib/bolt/cli.rb +1 -1
  5. data/lib/bolt/config.rb +1 -1
  6. data/lib/bolt/executor.rb +1 -1
  7. data/lib/bolt/puppetdb/client.rb +26 -19
  8. data/lib/bolt/transport/ssh/connection.rb +3 -1
  9. data/lib/bolt/version.rb +1 -1
  10. data/modules/canary/plans/init.pp +22 -1
  11. data/modules/facts/tasks/bash.sh +1 -1
  12. data/modules/facts/tasks/powershell.ps1 +1 -1
  13. data/modules/facts/tasks/ruby.rb +1 -1
  14. metadata +4 -1249
  15. data/modules/apply/tasks/resource.json +0 -18
  16. data/modules/apply/tasks/resource.rb +0 -98
  17. data/modules/package/tasks/init.json +0 -22
  18. data/modules/package/tasks/init.rb +0 -69
  19. data/modules/puppet_conf/tasks/init.json +0 -22
  20. data/modules/puppet_conf/tasks/init.rb +0 -43
  21. data/modules/service/tasks/init.json +0 -18
  22. data/modules/service/tasks/init.rb +0 -71
  23. data/modules/service/tasks/linux.json +0 -14
  24. data/modules/service/tasks/linux.sh +0 -45
  25. data/modules/service/tasks/windows.json +0 -14
  26. data/modules/service/tasks/windows.ps1 +0 -85
  27. data/vendored/facter/lib/facter.rb +0 -261
  28. data/vendored/facter/lib/facter/Cfkey.rb +0 -42
  29. data/vendored/facter/lib/facter/application.rb +0 -206
  30. data/vendored/facter/lib/facter/architecture.rb +0 -50
  31. data/vendored/facter/lib/facter/augeasversion.rb +0 -28
  32. data/vendored/facter/lib/facter/blockdevices.rb +0 -105
  33. data/vendored/facter/lib/facter/core/aggregate.rb +0 -220
  34. data/vendored/facter/lib/facter/core/directed_graph.rb +0 -46
  35. data/vendored/facter/lib/facter/core/execution.rb +0 -123
  36. data/vendored/facter/lib/facter/core/execution/base.rb +0 -81
  37. data/vendored/facter/lib/facter/core/execution/posix.rb +0 -50
  38. data/vendored/facter/lib/facter/core/execution/windows.rb +0 -57
  39. data/vendored/facter/lib/facter/core/logging.rb +0 -197
  40. data/vendored/facter/lib/facter/core/resolvable.rb +0 -94
  41. data/vendored/facter/lib/facter/core/suitable.rb +0 -113
  42. data/vendored/facter/lib/facter/dhcp_servers.rb +0 -45
  43. data/vendored/facter/lib/facter/domain.rb +0 -99
  44. data/vendored/facter/lib/facter/ec2.rb +0 -68
  45. data/vendored/facter/lib/facter/ec2/rest.rb +0 -137
  46. data/vendored/facter/lib/facter/facterversion.rb +0 -15
  47. data/vendored/facter/lib/facter/filesystems.rb +0 -45
  48. data/vendored/facter/lib/facter/fqdn.rb +0 -24
  49. data/vendored/facter/lib/facter/gce.rb +0 -16
  50. data/vendored/facter/lib/facter/gce/metadata.rb +0 -87
  51. data/vendored/facter/lib/facter/gid.rb +0 -25
  52. data/vendored/facter/lib/facter/hardwareisa.rb +0 -20
  53. data/vendored/facter/lib/facter/hardwaremodel.rb +0 -67
  54. data/vendored/facter/lib/facter/hostname.rb +0 -31
  55. data/vendored/facter/lib/facter/id.rb +0 -21
  56. data/vendored/facter/lib/facter/interfaces.rb +0 -58
  57. data/vendored/facter/lib/facter/ipaddress.rb +0 -169
  58. data/vendored/facter/lib/facter/ipaddress6.rb +0 -82
  59. data/vendored/facter/lib/facter/iphostnumber.rb +0 -29
  60. data/vendored/facter/lib/facter/kernel.rb +0 -22
  61. data/vendored/facter/lib/facter/kernelmajversion.rb +0 -23
  62. data/vendored/facter/lib/facter/kernelrelease.rb +0 -45
  63. data/vendored/facter/lib/facter/kernelversion.rb +0 -22
  64. data/vendored/facter/lib/facter/ldom.rb +0 -51
  65. data/vendored/facter/lib/facter/lsbdistcodename.rb +0 -20
  66. data/vendored/facter/lib/facter/lsbdistdescription.rb +0 -21
  67. data/vendored/facter/lib/facter/lsbdistid.rb +0 -20
  68. data/vendored/facter/lib/facter/lsbdistrelease.rb +0 -20
  69. data/vendored/facter/lib/facter/lsbmajdistrelease.rb +0 -22
  70. data/vendored/facter/lib/facter/lsbminordistrelease.rb +0 -22
  71. data/vendored/facter/lib/facter/lsbrelease.rb +0 -20
  72. data/vendored/facter/lib/facter/macaddress.rb +0 -99
  73. data/vendored/facter/lib/facter/macosx.rb +0 -56
  74. data/vendored/facter/lib/facter/manufacturer.rb +0 -68
  75. data/vendored/facter/lib/facter/memory.rb +0 -168
  76. data/vendored/facter/lib/facter/netmask.rb +0 -43
  77. data/vendored/facter/lib/facter/network.rb +0 -20
  78. data/vendored/facter/lib/facter/operatingsystem.rb +0 -24
  79. data/vendored/facter/lib/facter/operatingsystem/base.rb +0 -61
  80. data/vendored/facter/lib/facter/operatingsystem/cumuluslinux.rb +0 -27
  81. data/vendored/facter/lib/facter/operatingsystem/implementation.rb +0 -33
  82. data/vendored/facter/lib/facter/operatingsystem/linux.rb +0 -484
  83. data/vendored/facter/lib/facter/operatingsystem/osreleaselinux.rb +0 -28
  84. data/vendored/facter/lib/facter/operatingsystem/sunos.rb +0 -54
  85. data/vendored/facter/lib/facter/operatingsystem/vmkernel.rb +0 -11
  86. data/vendored/facter/lib/facter/operatingsystem/windows.rb +0 -43
  87. data/vendored/facter/lib/facter/operatingsystemmajrelease.rb +0 -31
  88. data/vendored/facter/lib/facter/operatingsystemrelease.rb +0 -29
  89. data/vendored/facter/lib/facter/os.rb +0 -98
  90. data/vendored/facter/lib/facter/osfamily.rb +0 -18
  91. data/vendored/facter/lib/facter/partitions.rb +0 -39
  92. data/vendored/facter/lib/facter/path.rb +0 -14
  93. data/vendored/facter/lib/facter/physicalprocessorcount.rb +0 -27
  94. data/vendored/facter/lib/facter/processor.rb +0 -52
  95. data/vendored/facter/lib/facter/processors.rb +0 -66
  96. data/vendored/facter/lib/facter/processors/os.rb +0 -244
  97. data/vendored/facter/lib/facter/ps.rb +0 -31
  98. data/vendored/facter/lib/facter/puppetversion.rb +0 -20
  99. data/vendored/facter/lib/facter/rackspace.rb +0 -37
  100. data/vendored/facter/lib/facter/rubyplatform.rb +0 -12
  101. data/vendored/facter/lib/facter/rubysitedir.rb +0 -15
  102. data/vendored/facter/lib/facter/rubyversion.rb +0 -12
  103. data/vendored/facter/lib/facter/selinux.rb +0 -154
  104. data/vendored/facter/lib/facter/ssh.rb +0 -73
  105. data/vendored/facter/lib/facter/system32.rb +0 -21
  106. data/vendored/facter/lib/facter/system_uptime.rb +0 -44
  107. data/vendored/facter/lib/facter/timezone.rb +0 -14
  108. data/vendored/facter/lib/facter/uniqueid.rb +0 -4
  109. data/vendored/facter/lib/facter/uptime.rb +0 -16
  110. data/vendored/facter/lib/facter/uptime_days.rb +0 -13
  111. data/vendored/facter/lib/facter/uptime_hours.rb +0 -13
  112. data/vendored/facter/lib/facter/uptime_seconds.rb +0 -20
  113. data/vendored/facter/lib/facter/util/architecture.rb +0 -19
  114. data/vendored/facter/lib/facter/util/collection.rb +0 -161
  115. data/vendored/facter/lib/facter/util/composite_loader.rb +0 -12
  116. data/vendored/facter/lib/facter/util/config.rb +0 -88
  117. data/vendored/facter/lib/facter/util/confine.rb +0 -66
  118. data/vendored/facter/lib/facter/util/dhcp_servers.rb +0 -58
  119. data/vendored/facter/lib/facter/util/directory_loader.rb +0 -88
  120. data/vendored/facter/lib/facter/util/ec2.rb +0 -106
  121. data/vendored/facter/lib/facter/util/fact.rb +0 -204
  122. data/vendored/facter/lib/facter/util/file_read.rb +0 -37
  123. data/vendored/facter/lib/facter/util/formatter.rb +0 -39
  124. data/vendored/facter/lib/facter/util/ip.rb +0 -340
  125. data/vendored/facter/lib/facter/util/ip/windows.rb +0 -215
  126. data/vendored/facter/lib/facter/util/loader.rb +0 -155
  127. data/vendored/facter/lib/facter/util/macaddress.rb +0 -43
  128. data/vendored/facter/lib/facter/util/macosx.rb +0 -73
  129. data/vendored/facter/lib/facter/util/manufacturer.rb +0 -99
  130. data/vendored/facter/lib/facter/util/memory.rb +0 -228
  131. data/vendored/facter/lib/facter/util/netmask.rb +0 -40
  132. data/vendored/facter/lib/facter/util/normalization.rb +0 -94
  133. data/vendored/facter/lib/facter/util/nothing_loader.rb +0 -12
  134. data/vendored/facter/lib/facter/util/operatingsystem.rb +0 -21
  135. data/vendored/facter/lib/facter/util/parser.rb +0 -168
  136. data/vendored/facter/lib/facter/util/partitions.rb +0 -47
  137. data/vendored/facter/lib/facter/util/partitions/linux.rb +0 -71
  138. data/vendored/facter/lib/facter/util/partitions/openbsd.rb +0 -40
  139. data/vendored/facter/lib/facter/util/plist.rb +0 -24
  140. data/vendored/facter/lib/facter/util/plist/generator.rb +0 -228
  141. data/vendored/facter/lib/facter/util/plist/parser.rb +0 -226
  142. data/vendored/facter/lib/facter/util/posix.rb +0 -16
  143. data/vendored/facter/lib/facter/util/processor.rb +0 -289
  144. data/vendored/facter/lib/facter/util/registry.rb +0 -11
  145. data/vendored/facter/lib/facter/util/resolution.rb +0 -160
  146. data/vendored/facter/lib/facter/util/solaris_zones.rb +0 -158
  147. data/vendored/facter/lib/facter/util/unix_root.rb +0 -5
  148. data/vendored/facter/lib/facter/util/uptime.rb +0 -83
  149. data/vendored/facter/lib/facter/util/values.rb +0 -109
  150. data/vendored/facter/lib/facter/util/virtual.rb +0 -212
  151. data/vendored/facter/lib/facter/util/vlans.rb +0 -21
  152. data/vendored/facter/lib/facter/util/windows.rb +0 -10
  153. data/vendored/facter/lib/facter/util/windows/api_types.rb +0 -135
  154. data/vendored/facter/lib/facter/util/windows/dir.rb +0 -43
  155. data/vendored/facter/lib/facter/util/windows/error.rb +0 -87
  156. data/vendored/facter/lib/facter/util/windows/process.rb +0 -294
  157. data/vendored/facter/lib/facter/util/windows/user.rb +0 -186
  158. data/vendored/facter/lib/facter/util/windows_root.rb +0 -7
  159. data/vendored/facter/lib/facter/util/wmi.rb +0 -49
  160. data/vendored/facter/lib/facter/util/xendomains.rb +0 -28
  161. data/vendored/facter/lib/facter/version.rb +0 -86
  162. data/vendored/facter/lib/facter/virtual.rb +0 -330
  163. data/vendored/facter/lib/facter/vlans.rb +0 -17
  164. data/vendored/facter/lib/facter/xendomains.rb +0 -20
  165. data/vendored/facter/lib/facter/zfs_version.rb +0 -14
  166. data/vendored/facter/lib/facter/zonename.rb +0 -6
  167. data/vendored/facter/lib/facter/zones.rb +0 -18
  168. data/vendored/facter/lib/facter/zpool_version.rb +0 -10
  169. data/vendored/hiera/lib/hiera.rb +0 -119
  170. data/vendored/hiera/lib/hiera/backend.rb +0 -360
  171. data/vendored/hiera/lib/hiera/backend/json_backend.rb +0 -58
  172. data/vendored/hiera/lib/hiera/backend/yaml_backend.rb +0 -63
  173. data/vendored/hiera/lib/hiera/config.rb +0 -97
  174. data/vendored/hiera/lib/hiera/console_logger.rb +0 -13
  175. data/vendored/hiera/lib/hiera/error.rb +0 -4
  176. data/vendored/hiera/lib/hiera/fallback_logger.rb +0 -41
  177. data/vendored/hiera/lib/hiera/filecache.rb +0 -86
  178. data/vendored/hiera/lib/hiera/interpolate.rb +0 -121
  179. data/vendored/hiera/lib/hiera/noop_logger.rb +0 -8
  180. data/vendored/hiera/lib/hiera/puppet_logger.rb +0 -17
  181. data/vendored/hiera/lib/hiera/recursive_guard.rb +0 -20
  182. data/vendored/hiera/lib/hiera/util.rb +0 -65
  183. data/vendored/hiera/lib/hiera/util/win32.rb +0 -40
  184. data/vendored/hiera/lib/hiera/version.rb +0 -89
  185. data/vendored/puppet/lib/hiera/puppet_function.rb +0 -84
  186. data/vendored/puppet/lib/hiera/scope.rb +0 -61
  187. data/vendored/puppet/lib/hiera_puppet.rb +0 -79
  188. data/vendored/puppet/lib/puppet.rb +0 -307
  189. data/vendored/puppet/lib/puppet/agent.rb +0 -134
  190. data/vendored/puppet/lib/puppet/agent/disabler.rb +0 -53
  191. data/vendored/puppet/lib/puppet/agent/locker.rb +0 -53
  192. data/vendored/puppet/lib/puppet/application.rb +0 -502
  193. data/vendored/puppet/lib/puppet/application/agent.rb +0 -473
  194. data/vendored/puppet/lib/puppet/application/apply.rb +0 -356
  195. data/vendored/puppet/lib/puppet/application/ca.rb +0 -11
  196. data/vendored/puppet/lib/puppet/application/catalog.rb +0 -4
  197. data/vendored/puppet/lib/puppet/application/cert.rb +0 -339
  198. data/vendored/puppet/lib/puppet/application/certificate.rb +0 -17
  199. data/vendored/puppet/lib/puppet/application/certificate_request.rb +0 -7
  200. data/vendored/puppet/lib/puppet/application/certificate_revocation_list.rb +0 -7
  201. data/vendored/puppet/lib/puppet/application/config.rb +0 -5
  202. data/vendored/puppet/lib/puppet/application/describe.rb +0 -257
  203. data/vendored/puppet/lib/puppet/application/device.rb +0 -378
  204. data/vendored/puppet/lib/puppet/application/doc.rb +0 -230
  205. data/vendored/puppet/lib/puppet/application/epp.rb +0 -5
  206. data/vendored/puppet/lib/puppet/application/face_base.rb +0 -268
  207. data/vendored/puppet/lib/puppet/application/facts.rb +0 -9
  208. data/vendored/puppet/lib/puppet/application/filebucket.rb +0 -300
  209. data/vendored/puppet/lib/puppet/application/generate.rb +0 -5
  210. data/vendored/puppet/lib/puppet/application/help.rb +0 -5
  211. data/vendored/puppet/lib/puppet/application/indirection_base.rb +0 -4
  212. data/vendored/puppet/lib/puppet/application/key.rb +0 -4
  213. data/vendored/puppet/lib/puppet/application/lookup.rb +0 -369
  214. data/vendored/puppet/lib/puppet/application/man.rb +0 -4
  215. data/vendored/puppet/lib/puppet/application/master.rb +0 -317
  216. data/vendored/puppet/lib/puppet/application/module.rb +0 -4
  217. data/vendored/puppet/lib/puppet/application/node.rb +0 -4
  218. data/vendored/puppet/lib/puppet/application/parser.rb +0 -5
  219. data/vendored/puppet/lib/puppet/application/plugin.rb +0 -3
  220. data/vendored/puppet/lib/puppet/application/report.rb +0 -4
  221. data/vendored/puppet/lib/puppet/application/resource.rb +0 -231
  222. data/vendored/puppet/lib/puppet/application/script.rb +0 -261
  223. data/vendored/puppet/lib/puppet/application/status.rb +0 -4
  224. data/vendored/puppet/lib/puppet/application_support.rb +0 -62
  225. data/vendored/puppet/lib/puppet/coercion.rb +0 -40
  226. data/vendored/puppet/lib/puppet/compilable_resource_type.rb +0 -15
  227. data/vendored/puppet/lib/puppet/configurer.rb +0 -464
  228. data/vendored/puppet/lib/puppet/configurer/downloader.rb +0 -67
  229. data/vendored/puppet/lib/puppet/configurer/fact_handler.rb +0 -46
  230. data/vendored/puppet/lib/puppet/configurer/plugin_handler.rb +0 -49
  231. data/vendored/puppet/lib/puppet/confine.rb +0 -80
  232. data/vendored/puppet/lib/puppet/confine/any.rb +0 -26
  233. data/vendored/puppet/lib/puppet/confine/exists.rb +0 -19
  234. data/vendored/puppet/lib/puppet/confine/false.rb +0 -19
  235. data/vendored/puppet/lib/puppet/confine/feature.rb +0 -17
  236. data/vendored/puppet/lib/puppet/confine/true.rb +0 -20
  237. data/vendored/puppet/lib/puppet/confine/variable.rb +0 -59
  238. data/vendored/puppet/lib/puppet/confine_collection.rb +0 -50
  239. data/vendored/puppet/lib/puppet/confiner.rb +0 -46
  240. data/vendored/puppet/lib/puppet/context.rb +0 -116
  241. data/vendored/puppet/lib/puppet/context/trusted_information.rb +0 -76
  242. data/vendored/puppet/lib/puppet/daemon.rb +0 -195
  243. data/vendored/puppet/lib/puppet/data_binding.rb +0 -14
  244. data/vendored/puppet/lib/puppet/datatypes.rb +0 -213
  245. data/vendored/puppet/lib/puppet/datatypes/error.rb +0 -21
  246. data/vendored/puppet/lib/puppet/datatypes/impl/error.rb +0 -40
  247. data/vendored/puppet/lib/puppet/defaults.rb +0 -2071
  248. data/vendored/puppet/lib/puppet/environments.rb +0 -511
  249. data/vendored/puppet/lib/puppet/error.rb +0 -110
  250. data/vendored/puppet/lib/puppet/etc.rb +0 -161
  251. data/vendored/puppet/lib/puppet/external/dot.rb +0 -319
  252. data/vendored/puppet/lib/puppet/external/nagios.rb +0 -46
  253. data/vendored/puppet/lib/puppet/external/nagios/base.rb +0 -472
  254. data/vendored/puppet/lib/puppet/external/nagios/parser.rb +0 -400
  255. data/vendored/puppet/lib/puppet/external/pson/common.rb +0 -374
  256. data/vendored/puppet/lib/puppet/external/pson/pure.rb +0 -15
  257. data/vendored/puppet/lib/puppet/external/pson/pure/generator.rb +0 -395
  258. data/vendored/puppet/lib/puppet/external/pson/pure/parser.rb +0 -307
  259. data/vendored/puppet/lib/puppet/external/pson/version.rb +0 -8
  260. data/vendored/puppet/lib/puppet/face.rb +0 -12
  261. data/vendored/puppet/lib/puppet/face/ca.rb +0 -266
  262. data/vendored/puppet/lib/puppet/face/catalog.rb +0 -130
  263. data/vendored/puppet/lib/puppet/face/catalog/select.rb +0 -49
  264. data/vendored/puppet/lib/puppet/face/certificate.rb +0 -165
  265. data/vendored/puppet/lib/puppet/face/certificate_request.rb +0 -56
  266. data/vendored/puppet/lib/puppet/face/certificate_revocation_list.rb +0 -56
  267. data/vendored/puppet/lib/puppet/face/config.rb +0 -210
  268. data/vendored/puppet/lib/puppet/face/epp.rb +0 -554
  269. data/vendored/puppet/lib/puppet/face/facts.rb +0 -87
  270. data/vendored/puppet/lib/puppet/face/generate.rb +0 -64
  271. data/vendored/puppet/lib/puppet/face/help.rb +0 -201
  272. data/vendored/puppet/lib/puppet/face/key.rb +0 -16
  273. data/vendored/puppet/lib/puppet/face/man.rb +0 -145
  274. data/vendored/puppet/lib/puppet/face/module.rb +0 -19
  275. data/vendored/puppet/lib/puppet/face/module/build.rb +0 -64
  276. data/vendored/puppet/lib/puppet/face/module/changes.rb +0 -42
  277. data/vendored/puppet/lib/puppet/face/module/generate.rb +0 -256
  278. data/vendored/puppet/lib/puppet/face/module/install.rb +0 -150
  279. data/vendored/puppet/lib/puppet/face/module/list.rb +0 -268
  280. data/vendored/puppet/lib/puppet/face/module/search.rb +0 -98
  281. data/vendored/puppet/lib/puppet/face/module/uninstall.rb +0 -93
  282. data/vendored/puppet/lib/puppet/face/module/upgrade.rb +0 -91
  283. data/vendored/puppet/lib/puppet/face/node.rb +0 -43
  284. data/vendored/puppet/lib/puppet/face/node/clean.rb +0 -96
  285. data/vendored/puppet/lib/puppet/face/parser.rb +0 -187
  286. data/vendored/puppet/lib/puppet/face/plugin.rb +0 -56
  287. data/vendored/puppet/lib/puppet/face/report.rb +0 -54
  288. data/vendored/puppet/lib/puppet/face/resource.rb +0 -53
  289. data/vendored/puppet/lib/puppet/face/status.rb +0 -51
  290. data/vendored/puppet/lib/puppet/feature/base.rb +0 -95
  291. data/vendored/puppet/lib/puppet/feature/bolt.rb +0 -3
  292. data/vendored/puppet/lib/puppet/feature/cfpropertylist.rb +0 -3
  293. data/vendored/puppet/lib/puppet/feature/eventlog.rb +0 -5
  294. data/vendored/puppet/lib/puppet/feature/hiera_eyaml.rb +0 -3
  295. data/vendored/puppet/lib/puppet/feature/hocon.rb +0 -3
  296. data/vendored/puppet/lib/puppet/feature/libuser.rb +0 -8
  297. data/vendored/puppet/lib/puppet/feature/msgpack.rb +0 -3
  298. data/vendored/puppet/lib/puppet/feature/pe_license.rb +0 -4
  299. data/vendored/puppet/lib/puppet/feature/rack.rb +0 -19
  300. data/vendored/puppet/lib/puppet/feature/selinux.rb +0 -3
  301. data/vendored/puppet/lib/puppet/feature/ssh.rb +0 -3
  302. data/vendored/puppet/lib/puppet/feature/telnet.rb +0 -9
  303. data/vendored/puppet/lib/puppet/feature/zlib.rb +0 -5
  304. data/vendored/puppet/lib/puppet/file_bucket.rb +0 -4
  305. data/vendored/puppet/lib/puppet/file_bucket/dipper.rb +0 -173
  306. data/vendored/puppet/lib/puppet/file_bucket/file.rb +0 -129
  307. data/vendored/puppet/lib/puppet/file_serving.rb +0 -3
  308. data/vendored/puppet/lib/puppet/file_serving/base.rb +0 -86
  309. data/vendored/puppet/lib/puppet/file_serving/configuration.rb +0 -115
  310. data/vendored/puppet/lib/puppet/file_serving/configuration/parser.rb +0 -137
  311. data/vendored/puppet/lib/puppet/file_serving/content.rb +0 -43
  312. data/vendored/puppet/lib/puppet/file_serving/fileset.rb +0 -174
  313. data/vendored/puppet/lib/puppet/file_serving/http_metadata.rb +0 -46
  314. data/vendored/puppet/lib/puppet/file_serving/metadata.rb +0 -163
  315. data/vendored/puppet/lib/puppet/file_serving/mount.rb +0 -39
  316. data/vendored/puppet/lib/puppet/file_serving/mount/file.rb +0 -121
  317. data/vendored/puppet/lib/puppet/file_serving/mount/locales.rb +0 -35
  318. data/vendored/puppet/lib/puppet/file_serving/mount/modules.rb +0 -24
  319. data/vendored/puppet/lib/puppet/file_serving/mount/pluginfacts.rb +0 -35
  320. data/vendored/puppet/lib/puppet/file_serving/mount/plugins.rb +0 -35
  321. data/vendored/puppet/lib/puppet/file_serving/mount/tasks.rb +0 -21
  322. data/vendored/puppet/lib/puppet/file_serving/terminus_helper.rb +0 -31
  323. data/vendored/puppet/lib/puppet/file_serving/terminus_selector.rb +0 -32
  324. data/vendored/puppet/lib/puppet/file_system.rb +0 -404
  325. data/vendored/puppet/lib/puppet/file_system/file_impl.rb +0 -154
  326. data/vendored/puppet/lib/puppet/file_system/memory_file.rb +0 -66
  327. data/vendored/puppet/lib/puppet/file_system/memory_impl.rb +0 -86
  328. data/vendored/puppet/lib/puppet/file_system/path_pattern.rb +0 -98
  329. data/vendored/puppet/lib/puppet/file_system/posix.rb +0 -46
  330. data/vendored/puppet/lib/puppet/file_system/uniquefile.rb +0 -190
  331. data/vendored/puppet/lib/puppet/file_system/windows.rb +0 -130
  332. data/vendored/puppet/lib/puppet/forge.rb +0 -242
  333. data/vendored/puppet/lib/puppet/forge/cache.rb +0 -60
  334. data/vendored/puppet/lib/puppet/forge/errors.rb +0 -114
  335. data/vendored/puppet/lib/puppet/forge/repository.rb +0 -155
  336. data/vendored/puppet/lib/puppet/functions.rb +0 -725
  337. data/vendored/puppet/lib/puppet/functions/alert.rb +0 -14
  338. data/vendored/puppet/lib/puppet/functions/all.rb +0 -104
  339. data/vendored/puppet/lib/puppet/functions/annotate.rb +0 -108
  340. data/vendored/puppet/lib/puppet/functions/any.rb +0 -109
  341. data/vendored/puppet/lib/puppet/functions/assert_type.rb +0 -93
  342. data/vendored/puppet/lib/puppet/functions/binary_file.rb +0 -32
  343. data/vendored/puppet/lib/puppet/functions/break.rb +0 -51
  344. data/vendored/puppet/lib/puppet/functions/call.rb +0 -42
  345. data/vendored/puppet/lib/puppet/functions/contain.rb +0 -55
  346. data/vendored/puppet/lib/puppet/functions/convert_to.rb +0 -33
  347. data/vendored/puppet/lib/puppet/functions/crit.rb +0 -14
  348. data/vendored/puppet/lib/puppet/functions/debug.rb +0 -14
  349. data/vendored/puppet/lib/puppet/functions/defined.rb +0 -159
  350. data/vendored/puppet/lib/puppet/functions/dig.rb +0 -47
  351. data/vendored/puppet/lib/puppet/functions/each.rb +0 -169
  352. data/vendored/puppet/lib/puppet/functions/emerg.rb +0 -14
  353. data/vendored/puppet/lib/puppet/functions/empty.rb +0 -79
  354. data/vendored/puppet/lib/puppet/functions/epp.rb +0 -48
  355. data/vendored/puppet/lib/puppet/functions/err.rb +0 -14
  356. data/vendored/puppet/lib/puppet/functions/eyaml_lookup_key.rb +0 -96
  357. data/vendored/puppet/lib/puppet/functions/filter.rb +0 -143
  358. data/vendored/puppet/lib/puppet/functions/find_file.rb +0 -44
  359. data/vendored/puppet/lib/puppet/functions/flatten.rb +0 -64
  360. data/vendored/puppet/lib/puppet/functions/hiera.rb +0 -88
  361. data/vendored/puppet/lib/puppet/functions/hiera_array.rb +0 -81
  362. data/vendored/puppet/lib/puppet/functions/hiera_hash.rb +0 -92
  363. data/vendored/puppet/lib/puppet/functions/hiera_include.rb +0 -104
  364. data/vendored/puppet/lib/puppet/functions/hocon_data.rb +0 -41
  365. data/vendored/puppet/lib/puppet/functions/import.rb +0 -7
  366. data/vendored/puppet/lib/puppet/functions/include.rb +0 -53
  367. data/vendored/puppet/lib/puppet/functions/info.rb +0 -14
  368. data/vendored/puppet/lib/puppet/functions/inline_epp.rb +0 -59
  369. data/vendored/puppet/lib/puppet/functions/join.rb +0 -56
  370. data/vendored/puppet/lib/puppet/functions/json_data.rb +0 -33
  371. data/vendored/puppet/lib/puppet/functions/keys.rb +0 -25
  372. data/vendored/puppet/lib/puppet/functions/length.rb +0 -44
  373. data/vendored/puppet/lib/puppet/functions/lest.rb +0 -55
  374. data/vendored/puppet/lib/puppet/functions/lookup.rb +0 -223
  375. data/vendored/puppet/lib/puppet/functions/map.rb +0 -136
  376. data/vendored/puppet/lib/puppet/functions/match.rb +0 -120
  377. data/vendored/puppet/lib/puppet/functions/module_directory.rb +0 -41
  378. data/vendored/puppet/lib/puppet/functions/new.rb +0 -1022
  379. data/vendored/puppet/lib/puppet/functions/next.rb +0 -23
  380. data/vendored/puppet/lib/puppet/functions/notice.rb +0 -14
  381. data/vendored/puppet/lib/puppet/functions/reduce.rb +0 -164
  382. data/vendored/puppet/lib/puppet/functions/regsubst.rb +0 -82
  383. data/vendored/puppet/lib/puppet/functions/require.rb +0 -77
  384. data/vendored/puppet/lib/puppet/functions/return.rb +0 -22
  385. data/vendored/puppet/lib/puppet/functions/reverse_each.rb +0 -94
  386. data/vendored/puppet/lib/puppet/functions/scanf.rb +0 -44
  387. data/vendored/puppet/lib/puppet/functions/slice.rb +0 -124
  388. data/vendored/puppet/lib/puppet/functions/split.rb +0 -49
  389. data/vendored/puppet/lib/puppet/functions/step.rb +0 -98
  390. data/vendored/puppet/lib/puppet/functions/strftime.rb +0 -217
  391. data/vendored/puppet/lib/puppet/functions/then.rb +0 -77
  392. data/vendored/puppet/lib/puppet/functions/tree_each.rb +0 -200
  393. data/vendored/puppet/lib/puppet/functions/type.rb +0 -72
  394. data/vendored/puppet/lib/puppet/functions/unique.rb +0 -132
  395. data/vendored/puppet/lib/puppet/functions/unwrap.rb +0 -44
  396. data/vendored/puppet/lib/puppet/functions/values.rb +0 -25
  397. data/vendored/puppet/lib/puppet/functions/versioncmp.rb +0 -36
  398. data/vendored/puppet/lib/puppet/functions/warning.rb +0 -14
  399. data/vendored/puppet/lib/puppet/functions/with.rb +0 -32
  400. data/vendored/puppet/lib/puppet/functions/yaml_data.rb +0 -42
  401. data/vendored/puppet/lib/puppet/generate/models/type/property.rb +0 -70
  402. data/vendored/puppet/lib/puppet/generate/models/type/type.rb +0 -62
  403. data/vendored/puppet/lib/puppet/generate/type.rb +0 -239
  404. data/vendored/puppet/lib/puppet/gettext/config.rb +0 -252
  405. data/vendored/puppet/lib/puppet/gettext/module_translations.rb +0 -42
  406. data/vendored/puppet/lib/puppet/gettext/stubs.rb +0 -11
  407. data/vendored/puppet/lib/puppet/graph.rb +0 -11
  408. data/vendored/puppet/lib/puppet/graph/key.rb +0 -26
  409. data/vendored/puppet/lib/puppet/graph/prioritizer.rb +0 -29
  410. data/vendored/puppet/lib/puppet/graph/random_prioritizer.rb +0 -16
  411. data/vendored/puppet/lib/puppet/graph/rb_tree_map.rb +0 -388
  412. data/vendored/puppet/lib/puppet/graph/relationship_graph.rb +0 -283
  413. data/vendored/puppet/lib/puppet/graph/sequential_prioritizer.rb +0 -31
  414. data/vendored/puppet/lib/puppet/graph/simple_graph.rb +0 -539
  415. data/vendored/puppet/lib/puppet/graph/title_hash_prioritizer.rb +0 -16
  416. data/vendored/puppet/lib/puppet/indirector.rb +0 -61
  417. data/vendored/puppet/lib/puppet/indirector/catalog/compiler.rb +0 -418
  418. data/vendored/puppet/lib/puppet/indirector/catalog/json.rb +0 -24
  419. data/vendored/puppet/lib/puppet/indirector/catalog/msgpack.rb +0 -6
  420. data/vendored/puppet/lib/puppet/indirector/catalog/rest.rb +0 -6
  421. data/vendored/puppet/lib/puppet/indirector/catalog/store_configs.rb +0 -8
  422. data/vendored/puppet/lib/puppet/indirector/catalog/yaml.rb +0 -22
  423. data/vendored/puppet/lib/puppet/indirector/certificate/ca.rb +0 -9
  424. data/vendored/puppet/lib/puppet/indirector/certificate/disabled_ca.rb +0 -22
  425. data/vendored/puppet/lib/puppet/indirector/certificate/file.rb +0 -9
  426. data/vendored/puppet/lib/puppet/indirector/certificate/rest.rb +0 -16
  427. data/vendored/puppet/lib/puppet/indirector/certificate_request/ca.rb +0 -22
  428. data/vendored/puppet/lib/puppet/indirector/certificate_request/disabled_ca.rb +0 -22
  429. data/vendored/puppet/lib/puppet/indirector/certificate_request/file.rb +0 -8
  430. data/vendored/puppet/lib/puppet/indirector/certificate_request/memory.rb +0 -6
  431. data/vendored/puppet/lib/puppet/indirector/certificate_request/rest.rb +0 -10
  432. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/ca.rb +0 -8
  433. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +0 -22
  434. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/file.rb +0 -8
  435. data/vendored/puppet/lib/puppet/indirector/certificate_revocation_list/rest.rb +0 -22
  436. data/vendored/puppet/lib/puppet/indirector/certificate_status.rb +0 -4
  437. data/vendored/puppet/lib/puppet/indirector/certificate_status/file.rb +0 -91
  438. data/vendored/puppet/lib/puppet/indirector/certificate_status/rest.rb +0 -11
  439. data/vendored/puppet/lib/puppet/indirector/code.rb +0 -6
  440. data/vendored/puppet/lib/puppet/indirector/data_binding/hiera.rb +0 -7
  441. data/vendored/puppet/lib/puppet/indirector/data_binding/none.rb +0 -8
  442. data/vendored/puppet/lib/puppet/indirector/direct_file_server.rb +0 -17
  443. data/vendored/puppet/lib/puppet/indirector/envelope.rb +0 -11
  444. data/vendored/puppet/lib/puppet/indirector/errors.rb +0 -5
  445. data/vendored/puppet/lib/puppet/indirector/exec.rb +0 -38
  446. data/vendored/puppet/lib/puppet/indirector/face.rb +0 -153
  447. data/vendored/puppet/lib/puppet/indirector/facts/facter.rb +0 -88
  448. data/vendored/puppet/lib/puppet/indirector/facts/memory.rb +0 -9
  449. data/vendored/puppet/lib/puppet/indirector/facts/network_device.rb +0 -27
  450. data/vendored/puppet/lib/puppet/indirector/facts/rest.rb +0 -21
  451. data/vendored/puppet/lib/puppet/indirector/facts/store_configs.rb +0 -11
  452. data/vendored/puppet/lib/puppet/indirector/facts/yaml.rb +0 -82
  453. data/vendored/puppet/lib/puppet/indirector/file_bucket_file/file.rb +0 -262
  454. data/vendored/puppet/lib/puppet/indirector/file_bucket_file/rest.rb +0 -8
  455. data/vendored/puppet/lib/puppet/indirector/file_bucket_file/selector.rb +0 -53
  456. data/vendored/puppet/lib/puppet/indirector/file_content.rb +0 -5
  457. data/vendored/puppet/lib/puppet/indirector/file_content/file.rb +0 -7
  458. data/vendored/puppet/lib/puppet/indirector/file_content/file_server.rb +0 -7
  459. data/vendored/puppet/lib/puppet/indirector/file_content/http.rb +0 -17
  460. data/vendored/puppet/lib/puppet/indirector/file_content/rest.rb +0 -9
  461. data/vendored/puppet/lib/puppet/indirector/file_content/selector.rb +0 -30
  462. data/vendored/puppet/lib/puppet/indirector/file_metadata.rb +0 -5
  463. data/vendored/puppet/lib/puppet/indirector/file_metadata/file.rb +0 -7
  464. data/vendored/puppet/lib/puppet/indirector/file_metadata/file_server.rb +0 -7
  465. data/vendored/puppet/lib/puppet/indirector/file_metadata/http.rb +0 -27
  466. data/vendored/puppet/lib/puppet/indirector/file_metadata/rest.rb +0 -9
  467. data/vendored/puppet/lib/puppet/indirector/file_metadata/selector.rb +0 -30
  468. data/vendored/puppet/lib/puppet/indirector/file_server.rb +0 -59
  469. data/vendored/puppet/lib/puppet/indirector/generic_http.rb +0 -16
  470. data/vendored/puppet/lib/puppet/indirector/hiera.rb +0 -94
  471. data/vendored/puppet/lib/puppet/indirector/indirection.rb +0 -344
  472. data/vendored/puppet/lib/puppet/indirector/json.rb +0 -75
  473. data/vendored/puppet/lib/puppet/indirector/key/ca.rb +0 -16
  474. data/vendored/puppet/lib/puppet/indirector/key/disabled_ca.rb +0 -22
  475. data/vendored/puppet/lib/puppet/indirector/key/file.rb +0 -50
  476. data/vendored/puppet/lib/puppet/indirector/key/memory.rb +0 -6
  477. data/vendored/puppet/lib/puppet/indirector/ldap.rb +0 -80
  478. data/vendored/puppet/lib/puppet/indirector/memory.rb +0 -34
  479. data/vendored/puppet/lib/puppet/indirector/msgpack.rb +0 -83
  480. data/vendored/puppet/lib/puppet/indirector/node/exec.rb +0 -71
  481. data/vendored/puppet/lib/puppet/indirector/node/ldap.rb +0 -275
  482. data/vendored/puppet/lib/puppet/indirector/node/memory.rb +0 -10
  483. data/vendored/puppet/lib/puppet/indirector/node/msgpack.rb +0 -7
  484. data/vendored/puppet/lib/puppet/indirector/node/plain.rb +0 -21
  485. data/vendored/puppet/lib/puppet/indirector/node/rest.rb +0 -7
  486. data/vendored/puppet/lib/puppet/indirector/node/store_configs.rb +0 -8
  487. data/vendored/puppet/lib/puppet/indirector/node/write_only_yaml.rb +0 -39
  488. data/vendored/puppet/lib/puppet/indirector/node/yaml.rb +0 -13
  489. data/vendored/puppet/lib/puppet/indirector/none.rb +0 -9
  490. data/vendored/puppet/lib/puppet/indirector/plain.rb +0 -9
  491. data/vendored/puppet/lib/puppet/indirector/report/msgpack.rb +0 -11
  492. data/vendored/puppet/lib/puppet/indirector/report/processor.rb +0 -59
  493. data/vendored/puppet/lib/puppet/indirector/report/rest.rb +0 -28
  494. data/vendored/puppet/lib/puppet/indirector/report/yaml.rb +0 -11
  495. data/vendored/puppet/lib/puppet/indirector/request.rb +0 -278
  496. data/vendored/puppet/lib/puppet/indirector/resource/ral.rb +0 -63
  497. data/vendored/puppet/lib/puppet/indirector/resource/store_configs.rb +0 -12
  498. data/vendored/puppet/lib/puppet/indirector/resource/validator.rb +0 -8
  499. data/vendored/puppet/lib/puppet/indirector/rest.rb +0 -350
  500. data/vendored/puppet/lib/puppet/indirector/ssl_file.rb +0 -201
  501. data/vendored/puppet/lib/puppet/indirector/status.rb +0 -3
  502. data/vendored/puppet/lib/puppet/indirector/status/local.rb +0 -12
  503. data/vendored/puppet/lib/puppet/indirector/status/rest.rb +0 -9
  504. data/vendored/puppet/lib/puppet/indirector/store_configs.rb +0 -30
  505. data/vendored/puppet/lib/puppet/indirector/terminus.rb +0 -169
  506. data/vendored/puppet/lib/puppet/indirector/yaml.rb +0 -63
  507. data/vendored/puppet/lib/puppet/info_service.rb +0 -17
  508. data/vendored/puppet/lib/puppet/info_service/class_information_service.rb +0 -110
  509. data/vendored/puppet/lib/puppet/info_service/task_information_service.rb +0 -32
  510. data/vendored/puppet/lib/puppet/interface.rb +0 -237
  511. data/vendored/puppet/lib/puppet/interface/action.rb +0 -402
  512. data/vendored/puppet/lib/puppet/interface/action_builder.rb +0 -166
  513. data/vendored/puppet/lib/puppet/interface/action_manager.rb +0 -97
  514. data/vendored/puppet/lib/puppet/interface/documentation.rb +0 -353
  515. data/vendored/puppet/lib/puppet/interface/face_collection.rb +0 -132
  516. data/vendored/puppet/lib/puppet/interface/option.rb +0 -171
  517. data/vendored/puppet/lib/puppet/interface/option_builder.rb +0 -105
  518. data/vendored/puppet/lib/puppet/interface/option_manager.rb +0 -104
  519. data/vendored/puppet/lib/puppet/loaders.rb +0 -27
  520. data/vendored/puppet/lib/puppet/metatype/manager.rb +0 -199
  521. data/vendored/puppet/lib/puppet/module.rb +0 -467
  522. data/vendored/puppet/lib/puppet/module/task.rb +0 -90
  523. data/vendored/puppet/lib/puppet/module_tool.rb +0 -196
  524. data/vendored/puppet/lib/puppet/module_tool/applications.rb +0 -14
  525. data/vendored/puppet/lib/puppet/module_tool/applications/application.rb +0 -90
  526. data/vendored/puppet/lib/puppet/module_tool/applications/builder.rb +0 -152
  527. data/vendored/puppet/lib/puppet/module_tool/applications/checksummer.rb +0 -62
  528. data/vendored/puppet/lib/puppet/module_tool/applications/installer.rb +0 -355
  529. data/vendored/puppet/lib/puppet/module_tool/applications/searcher.rb +0 -29
  530. data/vendored/puppet/lib/puppet/module_tool/applications/uninstaller.rb +0 -121
  531. data/vendored/puppet/lib/puppet/module_tool/applications/unpacker.rb +0 -100
  532. data/vendored/puppet/lib/puppet/module_tool/applications/upgrader.rb +0 -281
  533. data/vendored/puppet/lib/puppet/module_tool/checksums.rb +0 -49
  534. data/vendored/puppet/lib/puppet/module_tool/contents_description.rb +0 -88
  535. data/vendored/puppet/lib/puppet/module_tool/dependency.rb +0 -41
  536. data/vendored/puppet/lib/puppet/module_tool/errors.rb +0 -11
  537. data/vendored/puppet/lib/puppet/module_tool/errors/base.rb +0 -15
  538. data/vendored/puppet/lib/puppet/module_tool/errors/installer.rb +0 -93
  539. data/vendored/puppet/lib/puppet/module_tool/errors/shared.rb +0 -195
  540. data/vendored/puppet/lib/puppet/module_tool/errors/uninstaller.rb +0 -50
  541. data/vendored/puppet/lib/puppet/module_tool/errors/upgrader.rb +0 -63
  542. data/vendored/puppet/lib/puppet/module_tool/install_directory.rb +0 -45
  543. data/vendored/puppet/lib/puppet/module_tool/installed_modules.rb +0 -96
  544. data/vendored/puppet/lib/puppet/module_tool/local_tarball.rb +0 -90
  545. data/vendored/puppet/lib/puppet/module_tool/metadata.rb +0 -223
  546. data/vendored/puppet/lib/puppet/module_tool/shared_behaviors.rb +0 -180
  547. data/vendored/puppet/lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +0 -1
  548. data/vendored/puppet/lib/puppet/module_tool/tar.rb +0 -18
  549. data/vendored/puppet/lib/puppet/module_tool/tar/gnu.rb +0 -19
  550. data/vendored/puppet/lib/puppet/module_tool/tar/mini.rb +0 -106
  551. data/vendored/puppet/lib/puppet/network.rb +0 -3
  552. data/vendored/puppet/lib/puppet/network/auth_config_parser.rb +0 -90
  553. data/vendored/puppet/lib/puppet/network/authconfig.rb +0 -112
  554. data/vendored/puppet/lib/puppet/network/authorization.rb +0 -41
  555. data/vendored/puppet/lib/puppet/network/authstore.rb +0 -282
  556. data/vendored/puppet/lib/puppet/network/client_request.rb +0 -29
  557. data/vendored/puppet/lib/puppet/network/format.rb +0 -110
  558. data/vendored/puppet/lib/puppet/network/format_handler.rb +0 -108
  559. data/vendored/puppet/lib/puppet/network/format_support.rb +0 -134
  560. data/vendored/puppet/lib/puppet/network/formats.rb +0 -171
  561. data/vendored/puppet/lib/puppet/network/http.rb +0 -30
  562. data/vendored/puppet/lib/puppet/network/http/api.rb +0 -44
  563. data/vendored/puppet/lib/puppet/network/http/api/ca.rb +0 -2
  564. data/vendored/puppet/lib/puppet/network/http/api/ca/v1.rb +0 -11
  565. data/vendored/puppet/lib/puppet/network/http/api/indirected_routes.rb +0 -279
  566. data/vendored/puppet/lib/puppet/network/http/api/indirection_type.rb +0 -32
  567. data/vendored/puppet/lib/puppet/network/http/api/master.rb +0 -2
  568. data/vendored/puppet/lib/puppet/network/http/api/master/v3.rb +0 -28
  569. data/vendored/puppet/lib/puppet/network/http/api/master/v3/authorization.rb +0 -18
  570. data/vendored/puppet/lib/puppet/network/http/api/master/v3/environment.rb +0 -85
  571. data/vendored/puppet/lib/puppet/network/http/api/master/v3/environments.rb +0 -35
  572. data/vendored/puppet/lib/puppet/network/http/compression.rb +0 -120
  573. data/vendored/puppet/lib/puppet/network/http/connection.rb +0 -332
  574. data/vendored/puppet/lib/puppet/network/http/error.rb +0 -73
  575. data/vendored/puppet/lib/puppet/network/http/factory.rb +0 -56
  576. data/vendored/puppet/lib/puppet/network/http/handler.rb +0 -183
  577. data/vendored/puppet/lib/puppet/network/http/issues.rb +0 -12
  578. data/vendored/puppet/lib/puppet/network/http/memory_response.rb +0 -13
  579. data/vendored/puppet/lib/puppet/network/http/nocache_pool.rb +0 -21
  580. data/vendored/puppet/lib/puppet/network/http/pool.rb +0 -129
  581. data/vendored/puppet/lib/puppet/network/http/rack.rb +0 -33
  582. data/vendored/puppet/lib/puppet/network/http/rack/rest.rb +0 -162
  583. data/vendored/puppet/lib/puppet/network/http/request.rb +0 -70
  584. data/vendored/puppet/lib/puppet/network/http/response.rb +0 -23
  585. data/vendored/puppet/lib/puppet/network/http/route.rb +0 -100
  586. data/vendored/puppet/lib/puppet/network/http/session.rb +0 -17
  587. data/vendored/puppet/lib/puppet/network/http/site.rb +0 -39
  588. data/vendored/puppet/lib/puppet/network/http/webrick.rb +0 -124
  589. data/vendored/puppet/lib/puppet/network/http/webrick/rest.rb +0 -114
  590. data/vendored/puppet/lib/puppet/network/http_pool.rb +0 -61
  591. data/vendored/puppet/lib/puppet/network/resolver.rb +0 -85
  592. data/vendored/puppet/lib/puppet/network/rest_controller.rb +0 -2
  593. data/vendored/puppet/lib/puppet/network/rights.rb +0 -209
  594. data/vendored/puppet/lib/puppet/network/server.rb +0 -39
  595. data/vendored/puppet/lib/puppet/node.rb +0 -282
  596. data/vendored/puppet/lib/puppet/node/environment.rb +0 -586
  597. data/vendored/puppet/lib/puppet/node/facts.rb +0 -137
  598. data/vendored/puppet/lib/puppet/parameter.rb +0 -567
  599. data/vendored/puppet/lib/puppet/parameter/boolean.rb +0 -15
  600. data/vendored/puppet/lib/puppet/parameter/package_options.rb +0 -31
  601. data/vendored/puppet/lib/puppet/parameter/path.rb +0 -57
  602. data/vendored/puppet/lib/puppet/parameter/value.rb +0 -91
  603. data/vendored/puppet/lib/puppet/parameter/value_collection.rb +0 -212
  604. data/vendored/puppet/lib/puppet/parser.rb +0 -20
  605. data/vendored/puppet/lib/puppet/parser/abstract_compiler.rb +0 -36
  606. data/vendored/puppet/lib/puppet/parser/ast.rb +0 -65
  607. data/vendored/puppet/lib/puppet/parser/ast/block_expression.rb +0 -15
  608. data/vendored/puppet/lib/puppet/parser/ast/branch.rb +0 -19
  609. data/vendored/puppet/lib/puppet/parser/ast/hostclass.rb +0 -27
  610. data/vendored/puppet/lib/puppet/parser/ast/leaf.rb +0 -75
  611. data/vendored/puppet/lib/puppet/parser/ast/node.rb +0 -17
  612. data/vendored/puppet/lib/puppet/parser/ast/pops_bridge.rb +0 -273
  613. data/vendored/puppet/lib/puppet/parser/ast/resource.rb +0 -66
  614. data/vendored/puppet/lib/puppet/parser/ast/resource_instance.rb +0 -10
  615. data/vendored/puppet/lib/puppet/parser/ast/resourceparam.rb +0 -31
  616. data/vendored/puppet/lib/puppet/parser/ast/top_level_construct.rb +0 -4
  617. data/vendored/puppet/lib/puppet/parser/compiler.rb +0 -797
  618. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator.rb +0 -33
  619. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -64
  620. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +0 -57
  621. data/vendored/puppet/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -20
  622. data/vendored/puppet/lib/puppet/parser/e4_parser_adapter.rb +0 -60
  623. data/vendored/puppet/lib/puppet/parser/environment_compiler.rb +0 -199
  624. data/vendored/puppet/lib/puppet/parser/files.rb +0 -92
  625. data/vendored/puppet/lib/puppet/parser/functions.rb +0 -277
  626. data/vendored/puppet/lib/puppet/parser/functions/assert_type.rb +0 -60
  627. data/vendored/puppet/lib/puppet/parser/functions/binary_file.rb +0 -24
  628. data/vendored/puppet/lib/puppet/parser/functions/break.rb +0 -39
  629. data/vendored/puppet/lib/puppet/parser/functions/contain.rb +0 -30
  630. data/vendored/puppet/lib/puppet/parser/functions/create_resources.rb +0 -112
  631. data/vendored/puppet/lib/puppet/parser/functions/defined.rb +0 -107
  632. data/vendored/puppet/lib/puppet/parser/functions/dig.rb +0 -38
  633. data/vendored/puppet/lib/puppet/parser/functions/digest.rb +0 -5
  634. data/vendored/puppet/lib/puppet/parser/functions/each.rb +0 -104
  635. data/vendored/puppet/lib/puppet/parser/functions/epp.rb +0 -39
  636. data/vendored/puppet/lib/puppet/parser/functions/fail.rb +0 -4
  637. data/vendored/puppet/lib/puppet/parser/functions/file.rb +0 -33
  638. data/vendored/puppet/lib/puppet/parser/functions/filter.rb +0 -78
  639. data/vendored/puppet/lib/puppet/parser/functions/find_file.rb +0 -28
  640. data/vendored/puppet/lib/puppet/parser/functions/fqdn_rand.rb +0 -36
  641. data/vendored/puppet/lib/puppet/parser/functions/generate.rb +0 -36
  642. data/vendored/puppet/lib/puppet/parser/functions/hiera.rb +0 -103
  643. data/vendored/puppet/lib/puppet/parser/functions/hiera_array.rb +0 -92
  644. data/vendored/puppet/lib/puppet/parser/functions/hiera_hash.rb +0 -102
  645. data/vendored/puppet/lib/puppet/parser/functions/hiera_include.rb +0 -102
  646. data/vendored/puppet/lib/puppet/parser/functions/include.rb +0 -34
  647. data/vendored/puppet/lib/puppet/parser/functions/inline_epp.rb +0 -51
  648. data/vendored/puppet/lib/puppet/parser/functions/inline_template.rb +0 -26
  649. data/vendored/puppet/lib/puppet/parser/functions/lest.rb +0 -49
  650. data/vendored/puppet/lib/puppet/parser/functions/lookup.rb +0 -132
  651. data/vendored/puppet/lib/puppet/parser/functions/map.rb +0 -76
  652. data/vendored/puppet/lib/puppet/parser/functions/match.rb +0 -43
  653. data/vendored/puppet/lib/puppet/parser/functions/md5.rb +0 -5
  654. data/vendored/puppet/lib/puppet/parser/functions/new.rb +0 -991
  655. data/vendored/puppet/lib/puppet/parser/functions/next.rb +0 -38
  656. data/vendored/puppet/lib/puppet/parser/functions/realize.rb +0 -20
  657. data/vendored/puppet/lib/puppet/parser/functions/reduce.rb +0 -137
  658. data/vendored/puppet/lib/puppet/parser/functions/regsubst.rb +0 -62
  659. data/vendored/puppet/lib/puppet/parser/functions/require.rb +0 -40
  660. data/vendored/puppet/lib/puppet/parser/functions/return.rb +0 -71
  661. data/vendored/puppet/lib/puppet/parser/functions/reverse_each.rb +0 -83
  662. data/vendored/puppet/lib/puppet/parser/functions/scanf.rb +0 -38
  663. data/vendored/puppet/lib/puppet/parser/functions/sha1.rb +0 -5
  664. data/vendored/puppet/lib/puppet/parser/functions/sha256.rb +0 -5
  665. data/vendored/puppet/lib/puppet/parser/functions/shellquote.rb +0 -61
  666. data/vendored/puppet/lib/puppet/parser/functions/slice.rb +0 -39
  667. data/vendored/puppet/lib/puppet/parser/functions/split.rb +0 -28
  668. data/vendored/puppet/lib/puppet/parser/functions/sprintf.rb +0 -50
  669. data/vendored/puppet/lib/puppet/parser/functions/step.rb +0 -84
  670. data/vendored/puppet/lib/puppet/parser/functions/strftime.rb +0 -185
  671. data/vendored/puppet/lib/puppet/parser/functions/tag.rb +0 -12
  672. data/vendored/puppet/lib/puppet/parser/functions/tagged.rb +0 -24
  673. data/vendored/puppet/lib/puppet/parser/functions/template.rb +0 -39
  674. data/vendored/puppet/lib/puppet/parser/functions/then.rb +0 -73
  675. data/vendored/puppet/lib/puppet/parser/functions/type.rb +0 -53
  676. data/vendored/puppet/lib/puppet/parser/functions/versioncmp.rb +0 -30
  677. data/vendored/puppet/lib/puppet/parser/functions/with.rb +0 -28
  678. data/vendored/puppet/lib/puppet/parser/parser_factory.rb +0 -30
  679. data/vendored/puppet/lib/puppet/parser/relationship.rb +0 -83
  680. data/vendored/puppet/lib/puppet/parser/resource.rb +0 -417
  681. data/vendored/puppet/lib/puppet/parser/resource/param.rb +0 -22
  682. data/vendored/puppet/lib/puppet/parser/scope.rb +0 -1125
  683. data/vendored/puppet/lib/puppet/parser/script_compiler.rb +0 -118
  684. data/vendored/puppet/lib/puppet/parser/templatewrapper.rb +0 -102
  685. data/vendored/puppet/lib/puppet/parser/type_loader.rb +0 -149
  686. data/vendored/puppet/lib/puppet/plugins.rb +0 -9
  687. data/vendored/puppet/lib/puppet/plugins/configuration.rb +0 -25
  688. data/vendored/puppet/lib/puppet/plugins/syntax_checkers.rb +0 -98
  689. data/vendored/puppet/lib/puppet/pops.rb +0 -120
  690. data/vendored/puppet/lib/puppet/pops/adaptable.rb +0 -206
  691. data/vendored/puppet/lib/puppet/pops/adapters.rb +0 -138
  692. data/vendored/puppet/lib/puppet/pops/evaluator/access_operator.rb +0 -719
  693. data/vendored/puppet/lib/puppet/pops/evaluator/callable_signature.rb +0 -107
  694. data/vendored/puppet/lib/puppet/pops/evaluator/closure.rb +0 -373
  695. data/vendored/puppet/lib/puppet/pops/evaluator/collector_transformer.rb +0 -234
  696. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +0 -86
  697. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +0 -29
  698. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/exported_collector.rb +0 -69
  699. data/vendored/puppet/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +0 -37
  700. data/vendored/puppet/lib/puppet/pops/evaluator/compare_operator.rb +0 -252
  701. data/vendored/puppet/lib/puppet/pops/evaluator/epp_evaluator.rb +0 -120
  702. data/vendored/puppet/lib/puppet/pops/evaluator/evaluator_impl.rb +0 -1284
  703. data/vendored/puppet/lib/puppet/pops/evaluator/external_syntax_support.rb +0 -45
  704. data/vendored/puppet/lib/puppet/pops/evaluator/json_strict_literal_evaluator.rb +0 -82
  705. data/vendored/puppet/lib/puppet/pops/evaluator/literal_evaluator.rb +0 -87
  706. data/vendored/puppet/lib/puppet/pops/evaluator/puppet_proc.rb +0 -69
  707. data/vendored/puppet/lib/puppet/pops/evaluator/relationship_operator.rb +0 -185
  708. data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_converter.rb +0 -202
  709. data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_resource_support.rb +0 -117
  710. data/vendored/puppet/lib/puppet/pops/evaluator/runtime3_support.rb +0 -540
  711. data/vendored/puppet/lib/puppet/pops/functions/dispatch.rb +0 -101
  712. data/vendored/puppet/lib/puppet/pops/functions/dispatcher.rb +0 -71
  713. data/vendored/puppet/lib/puppet/pops/functions/function.rb +0 -141
  714. data/vendored/puppet/lib/puppet/pops/issue_reporter.rb +0 -137
  715. data/vendored/puppet/lib/puppet/pops/issues.rb +0 -901
  716. data/vendored/puppet/lib/puppet/pops/label_provider.rb +0 -90
  717. data/vendored/puppet/lib/puppet/pops/loader/base_loader.rb +0 -166
  718. data/vendored/puppet/lib/puppet/pops/loader/dependency_loader.rb +0 -92
  719. data/vendored/puppet/lib/puppet/pops/loader/gem_support.rb +0 -49
  720. data/vendored/puppet/lib/puppet/pops/loader/loader.rb +0 -209
  721. data/vendored/puppet/lib/puppet/pops/loader/loader_paths.rb +0 -375
  722. data/vendored/puppet/lib/puppet/pops/loader/module_loaders.rb +0 -523
  723. data/vendored/puppet/lib/puppet/pops/loader/null_loader.rb +0 -60
  724. data/vendored/puppet/lib/puppet/pops/loader/predefined_loader.rb +0 -24
  725. data/vendored/puppet/lib/puppet/pops/loader/puppet_function_instantiator.rb +0 -84
  726. data/vendored/puppet/lib/puppet/pops/loader/puppet_plan_instantiator.rb +0 -84
  727. data/vendored/puppet/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +0 -79
  728. data/vendored/puppet/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +0 -39
  729. data/vendored/puppet/lib/puppet/pops/loader/ruby_function_instantiator.rb +0 -45
  730. data/vendored/puppet/lib/puppet/pops/loader/runtime3_type_loader.rb +0 -101
  731. data/vendored/puppet/lib/puppet/pops/loader/simple_environment_loader.rb +0 -20
  732. data/vendored/puppet/lib/puppet/pops/loader/static_loader.rb +0 -163
  733. data/vendored/puppet/lib/puppet/pops/loader/task_instantiator.rb +0 -69
  734. data/vendored/puppet/lib/puppet/pops/loader/type_definition_instantiator.rb +0 -100
  735. data/vendored/puppet/lib/puppet/pops/loader/typed_name.rb +0 -54
  736. data/vendored/puppet/lib/puppet/pops/loader/uri_helper.rb +0 -22
  737. data/vendored/puppet/lib/puppet/pops/loaders.rb +0 -545
  738. data/vendored/puppet/lib/puppet/pops/lookup.rb +0 -96
  739. data/vendored/puppet/lib/puppet/pops/lookup/configured_data_provider.rb +0 -93
  740. data/vendored/puppet/lib/puppet/pops/lookup/context.rb +0 -200
  741. data/vendored/puppet/lib/puppet/pops/lookup/data_adapter.rb +0 -27
  742. data/vendored/puppet/lib/puppet/pops/lookup/data_dig_function_provider.rb +0 -145
  743. data/vendored/puppet/lib/puppet/pops/lookup/data_hash_function_provider.rb +0 -126
  744. data/vendored/puppet/lib/puppet/pops/lookup/data_provider.rb +0 -92
  745. data/vendored/puppet/lib/puppet/pops/lookup/environment_data_provider.rb +0 -35
  746. data/vendored/puppet/lib/puppet/pops/lookup/explainer.rb +0 -595
  747. data/vendored/puppet/lib/puppet/pops/lookup/function_provider.rb +0 -110
  748. data/vendored/puppet/lib/puppet/pops/lookup/global_data_provider.rb +0 -75
  749. data/vendored/puppet/lib/puppet/pops/lookup/hiera_config.rb +0 -761
  750. data/vendored/puppet/lib/puppet/pops/lookup/interpolation.rb +0 -154
  751. data/vendored/puppet/lib/puppet/pops/lookup/invocation.rb +0 -261
  752. data/vendored/puppet/lib/puppet/pops/lookup/location_resolver.rb +0 -99
  753. data/vendored/puppet/lib/puppet/pops/lookup/lookup_adapter.rb +0 -471
  754. data/vendored/puppet/lib/puppet/pops/lookup/lookup_key.rb +0 -99
  755. data/vendored/puppet/lib/puppet/pops/lookup/lookup_key_function_provider.rb +0 -92
  756. data/vendored/puppet/lib/puppet/pops/lookup/module_data_provider.rb +0 -89
  757. data/vendored/puppet/lib/puppet/pops/lookup/sub_lookup.rb +0 -92
  758. data/vendored/puppet/lib/puppet/pops/merge_strategy.rb +0 -437
  759. data/vendored/puppet/lib/puppet/pops/migration/migration_checker.rb +0 -58
  760. data/vendored/puppet/lib/puppet/pops/model/ast.rb +0 -4870
  761. data/vendored/puppet/lib/puppet/pops/model/ast_transformer.rb +0 -131
  762. data/vendored/puppet/lib/puppet/pops/model/factory.rb +0 -1150
  763. data/vendored/puppet/lib/puppet/pops/model/model_label_provider.rb +0 -132
  764. data/vendored/puppet/lib/puppet/pops/model/model_tree_dumper.rb +0 -467
  765. data/vendored/puppet/lib/puppet/pops/model/pn_transformer.rb +0 -400
  766. data/vendored/puppet/lib/puppet/pops/model/tree_dumper.rb +0 -59
  767. data/vendored/puppet/lib/puppet/pops/parser/code_merger.rb +0 -29
  768. data/vendored/puppet/lib/puppet/pops/parser/eparser.rb +0 -3315
  769. data/vendored/puppet/lib/puppet/pops/parser/epp_parser.rb +0 -51
  770. data/vendored/puppet/lib/puppet/pops/parser/epp_support.rb +0 -260
  771. data/vendored/puppet/lib/puppet/pops/parser/evaluating_parser.rb +0 -165
  772. data/vendored/puppet/lib/puppet/pops/parser/heredoc_support.rb +0 -143
  773. data/vendored/puppet/lib/puppet/pops/parser/interpolation_support.rb +0 -244
  774. data/vendored/puppet/lib/puppet/pops/parser/lexer2.rb +0 -772
  775. data/vendored/puppet/lib/puppet/pops/parser/lexer_support.rb +0 -221
  776. data/vendored/puppet/lib/puppet/pops/parser/locatable.rb +0 -23
  777. data/vendored/puppet/lib/puppet/pops/parser/locator.rb +0 -336
  778. data/vendored/puppet/lib/puppet/pops/parser/parser_support.rb +0 -247
  779. data/vendored/puppet/lib/puppet/pops/parser/pn_parser.rb +0 -316
  780. data/vendored/puppet/lib/puppet/pops/parser/slurp_support.rb +0 -117
  781. data/vendored/puppet/lib/puppet/pops/patterns.rb +0 -60
  782. data/vendored/puppet/lib/puppet/pops/pcore.rb +0 -147
  783. data/vendored/puppet/lib/puppet/pops/pn.rb +0 -236
  784. data/vendored/puppet/lib/puppet/pops/puppet_stack.rb +0 -43
  785. data/vendored/puppet/lib/puppet/pops/resource/param.rb +0 -55
  786. data/vendored/puppet/lib/puppet/pops/resource/resource_type_impl.rb +0 -314
  787. data/vendored/puppet/lib/puppet/pops/semantic_error.rb +0 -29
  788. data/vendored/puppet/lib/puppet/pops/serialization.rb +0 -41
  789. data/vendored/puppet/lib/puppet/pops/serialization/abstract_reader.rb +0 -180
  790. data/vendored/puppet/lib/puppet/pops/serialization/abstract_writer.rb +0 -222
  791. data/vendored/puppet/lib/puppet/pops/serialization/deserializer.rb +0 -80
  792. data/vendored/puppet/lib/puppet/pops/serialization/extension.rb +0 -158
  793. data/vendored/puppet/lib/puppet/pops/serialization/from_data_converter.rb +0 -223
  794. data/vendored/puppet/lib/puppet/pops/serialization/instance_reader.rb +0 -19
  795. data/vendored/puppet/lib/puppet/pops/serialization/instance_writer.rb +0 -14
  796. data/vendored/puppet/lib/puppet/pops/serialization/json.rb +0 -297
  797. data/vendored/puppet/lib/puppet/pops/serialization/json_path.rb +0 -127
  798. data/vendored/puppet/lib/puppet/pops/serialization/object.rb +0 -70
  799. data/vendored/puppet/lib/puppet/pops/serialization/serializer.rb +0 -140
  800. data/vendored/puppet/lib/puppet/pops/serialization/time_factory.rb +0 -67
  801. data/vendored/puppet/lib/puppet/pops/serialization/to_data_converter.rb +0 -305
  802. data/vendored/puppet/lib/puppet/pops/time/timespan.rb +0 -718
  803. data/vendored/puppet/lib/puppet/pops/time/timestamp.rb +0 -160
  804. data/vendored/puppet/lib/puppet/pops/types/annotatable.rb +0 -36
  805. data/vendored/puppet/lib/puppet/pops/types/annotation.rb +0 -71
  806. data/vendored/puppet/lib/puppet/pops/types/class_loader.rb +0 -132
  807. data/vendored/puppet/lib/puppet/pops/types/enumeration.rb +0 -16
  808. data/vendored/puppet/lib/puppet/pops/types/implementation_registry.rb +0 -134
  809. data/vendored/puppet/lib/puppet/pops/types/iterable.rb +0 -339
  810. data/vendored/puppet/lib/puppet/pops/types/p_binary_type.rb +0 -233
  811. data/vendored/puppet/lib/puppet/pops/types/p_init_type.rb +0 -238
  812. data/vendored/puppet/lib/puppet/pops/types/p_meta_type.rb +0 -94
  813. data/vendored/puppet/lib/puppet/pops/types/p_object_type.rb +0 -1114
  814. data/vendored/puppet/lib/puppet/pops/types/p_object_type_extension.rb +0 -218
  815. data/vendored/puppet/lib/puppet/pops/types/p_runtime_type.rb +0 -115
  816. data/vendored/puppet/lib/puppet/pops/types/p_sem_ver_range_type.rb +0 -190
  817. data/vendored/puppet/lib/puppet/pops/types/p_sem_ver_type.rb +0 -149
  818. data/vendored/puppet/lib/puppet/pops/types/p_sensitive_type.rb +0 -73
  819. data/vendored/puppet/lib/puppet/pops/types/p_timespan_type.rb +0 -192
  820. data/vendored/puppet/lib/puppet/pops/types/p_timestamp_type.rb +0 -73
  821. data/vendored/puppet/lib/puppet/pops/types/p_type_set_type.rb +0 -383
  822. data/vendored/puppet/lib/puppet/pops/types/p_uri_type.rb +0 -190
  823. data/vendored/puppet/lib/puppet/pops/types/puppet_object.rb +0 -40
  824. data/vendored/puppet/lib/puppet/pops/types/recursion_guard.rb +0 -136
  825. data/vendored/puppet/lib/puppet/pops/types/ruby_generator.rb +0 -472
  826. data/vendored/puppet/lib/puppet/pops/types/ruby_method.rb +0 -31
  827. data/vendored/puppet/lib/puppet/pops/types/string_converter.rb +0 -1123
  828. data/vendored/puppet/lib/puppet/pops/types/tree_iterators.rb +0 -254
  829. data/vendored/puppet/lib/puppet/pops/types/type_acceptor.rb +0 -25
  830. data/vendored/puppet/lib/puppet/pops/types/type_asserter.rb +0 -47
  831. data/vendored/puppet/lib/puppet/pops/types/type_assertion_error.rb +0 -27
  832. data/vendored/puppet/lib/puppet/pops/types/type_calculator.rb +0 -809
  833. data/vendored/puppet/lib/puppet/pops/types/type_conversion_error.rb +0 -15
  834. data/vendored/puppet/lib/puppet/pops/types/type_factory.rb +0 -614
  835. data/vendored/puppet/lib/puppet/pops/types/type_formatter.rb +0 -802
  836. data/vendored/puppet/lib/puppet/pops/types/type_mismatch_describer.rb +0 -1075
  837. data/vendored/puppet/lib/puppet/pops/types/type_parser.rb +0 -685
  838. data/vendored/puppet/lib/puppet/pops/types/type_set_reference.rb +0 -59
  839. data/vendored/puppet/lib/puppet/pops/types/type_with_members.rb +0 -43
  840. data/vendored/puppet/lib/puppet/pops/types/types.rb +0 -3650
  841. data/vendored/puppet/lib/puppet/pops/utils.rb +0 -119
  842. data/vendored/puppet/lib/puppet/pops/validation.rb +0 -466
  843. data/vendored/puppet/lib/puppet/pops/validation/checker4_0.rb +0 -998
  844. data/vendored/puppet/lib/puppet/pops/validation/tasks_checker.rb +0 -60
  845. data/vendored/puppet/lib/puppet/pops/validation/validator_factory_4_0.rb +0 -43
  846. data/vendored/puppet/lib/puppet/pops/visitable.rb +0 -6
  847. data/vendored/puppet/lib/puppet/pops/visitor.rb +0 -116
  848. data/vendored/puppet/lib/puppet/property.rb +0 -608
  849. data/vendored/puppet/lib/puppet/property/boolean.rb +0 -7
  850. data/vendored/puppet/lib/puppet/property/ensure.rb +0 -105
  851. data/vendored/puppet/lib/puppet/property/keyvalue.rb +0 -95
  852. data/vendored/puppet/lib/puppet/property/list.rb +0 -69
  853. data/vendored/puppet/lib/puppet/property/ordered_list.rb +0 -29
  854. data/vendored/puppet/lib/puppet/provider.rb +0 -613
  855. data/vendored/puppet/lib/puppet/provider/aixobject.rb +0 -392
  856. data/vendored/puppet/lib/puppet/provider/augeas/augeas.rb +0 -566
  857. data/vendored/puppet/lib/puppet/provider/cisco.rb +0 -9
  858. data/vendored/puppet/lib/puppet/provider/command.rb +0 -25
  859. data/vendored/puppet/lib/puppet/provider/computer/computer.rb +0 -20
  860. data/vendored/puppet/lib/puppet/provider/confine.rb +0 -6
  861. data/vendored/puppet/lib/puppet/provider/cron/crontab.rb +0 -297
  862. data/vendored/puppet/lib/puppet/provider/exec.rb +0 -96
  863. data/vendored/puppet/lib/puppet/provider/exec/posix.rb +0 -48
  864. data/vendored/puppet/lib/puppet/provider/exec/shell.rb +0 -25
  865. data/vendored/puppet/lib/puppet/provider/exec/windows.rb +0 -55
  866. data/vendored/puppet/lib/puppet/provider/file/posix.rb +0 -136
  867. data/vendored/puppet/lib/puppet/provider/file/windows.rb +0 -104
  868. data/vendored/puppet/lib/puppet/provider/group/aix.rb +0 -143
  869. data/vendored/puppet/lib/puppet/provider/group/directoryservice.rb +0 -22
  870. data/vendored/puppet/lib/puppet/provider/group/groupadd.rb +0 -111
  871. data/vendored/puppet/lib/puppet/provider/group/ldap.rb +0 -45
  872. data/vendored/puppet/lib/puppet/provider/group/pw.rb +0 -49
  873. data/vendored/puppet/lib/puppet/provider/group/windows_adsi.rb +0 -106
  874. data/vendored/puppet/lib/puppet/provider/host/parsed.rb +0 -46
  875. data/vendored/puppet/lib/puppet/provider/interface/cisco.rb +0 -27
  876. data/vendored/puppet/lib/puppet/provider/ldap.rb +0 -137
  877. data/vendored/puppet/lib/puppet/provider/macauthorization/macauthorization.rb +0 -298
  878. data/vendored/puppet/lib/puppet/provider/mailalias/aliases.rb +0 -50
  879. data/vendored/puppet/lib/puppet/provider/maillist/mailman.rb +0 -108
  880. data/vendored/puppet/lib/puppet/provider/mcx/mcxcontent.rb +0 -173
  881. data/vendored/puppet/lib/puppet/provider/mount.rb +0 -76
  882. data/vendored/puppet/lib/puppet/provider/mount/parsed.rb +0 -282
  883. data/vendored/puppet/lib/puppet/provider/naginator.rb +0 -63
  884. data/vendored/puppet/lib/puppet/provider/nameservice.rb +0 -325
  885. data/vendored/puppet/lib/puppet/provider/nameservice/directoryservice.rb +0 -508
  886. data/vendored/puppet/lib/puppet/provider/nameservice/objectadd.rb +0 -22
  887. data/vendored/puppet/lib/puppet/provider/nameservice/pw.rb +0 -21
  888. data/vendored/puppet/lib/puppet/provider/network_device.rb +0 -72
  889. data/vendored/puppet/lib/puppet/provider/package.rb +0 -56
  890. data/vendored/puppet/lib/puppet/provider/package/aix.rb +0 -152
  891. data/vendored/puppet/lib/puppet/provider/package/appdmg.rb +0 -109
  892. data/vendored/puppet/lib/puppet/provider/package/apple.rb +0 -46
  893. data/vendored/puppet/lib/puppet/provider/package/apt.rb +0 -116
  894. data/vendored/puppet/lib/puppet/provider/package/aptitude.rb +0 -29
  895. data/vendored/puppet/lib/puppet/provider/package/aptrpm.rb +0 -83
  896. data/vendored/puppet/lib/puppet/provider/package/blastwave.rb +0 -111
  897. data/vendored/puppet/lib/puppet/provider/package/dnf.rb +0 -46
  898. data/vendored/puppet/lib/puppet/provider/package/dpkg.rb +0 -165
  899. data/vendored/puppet/lib/puppet/provider/package/fink.rb +0 -79
  900. data/vendored/puppet/lib/puppet/provider/package/freebsd.rb +0 -47
  901. data/vendored/puppet/lib/puppet/provider/package/gem.rb +0 -175
  902. data/vendored/puppet/lib/puppet/provider/package/hpux.rb +0 -44
  903. data/vendored/puppet/lib/puppet/provider/package/macports.rb +0 -107
  904. data/vendored/puppet/lib/puppet/provider/package/nim.rb +0 -282
  905. data/vendored/puppet/lib/puppet/provider/package/openbsd.rb +0 -242
  906. data/vendored/puppet/lib/puppet/provider/package/opkg.rb +0 -81
  907. data/vendored/puppet/lib/puppet/provider/package/pacman.rb +0 -267
  908. data/vendored/puppet/lib/puppet/provider/package/pip.rb +0 -188
  909. data/vendored/puppet/lib/puppet/provider/package/pip3.rb +0 -20
  910. data/vendored/puppet/lib/puppet/provider/package/pkg.rb +0 -255
  911. data/vendored/puppet/lib/puppet/provider/package/pkgdmg.rb +0 -151
  912. data/vendored/puppet/lib/puppet/provider/package/pkgin.rb +0 -87
  913. data/vendored/puppet/lib/puppet/provider/package/pkgng.rb +0 -143
  914. data/vendored/puppet/lib/puppet/provider/package/pkgutil.rb +0 -186
  915. data/vendored/puppet/lib/puppet/provider/package/portage.rb +0 -300
  916. data/vendored/puppet/lib/puppet/provider/package/ports.rb +0 -91
  917. data/vendored/puppet/lib/puppet/provider/package/portupgrade.rb +0 -239
  918. data/vendored/puppet/lib/puppet/provider/package/puppet_gem.rb +0 -17
  919. data/vendored/puppet/lib/puppet/provider/package/rpm.rb +0 -405
  920. data/vendored/puppet/lib/puppet/provider/package/rug.rb +0 -51
  921. data/vendored/puppet/lib/puppet/provider/package/sun.rb +0 -133
  922. data/vendored/puppet/lib/puppet/provider/package/sunfreeware.rb +0 -9
  923. data/vendored/puppet/lib/puppet/provider/package/tdnf.rb +0 -28
  924. data/vendored/puppet/lib/puppet/provider/package/up2date.rb +0 -40
  925. data/vendored/puppet/lib/puppet/provider/package/urpmi.rb +0 -55
  926. data/vendored/puppet/lib/puppet/provider/package/windows.rb +0 -113
  927. data/vendored/puppet/lib/puppet/provider/package/windows/exe_package.rb +0 -71
  928. data/vendored/puppet/lib/puppet/provider/package/windows/msi_package.rb +0 -62
  929. data/vendored/puppet/lib/puppet/provider/package/windows/package.rb +0 -100
  930. data/vendored/puppet/lib/puppet/provider/package/yum.rb +0 -293
  931. data/vendored/puppet/lib/puppet/provider/package/zypper.rb +0 -145
  932. data/vendored/puppet/lib/puppet/provider/parsedfile.rb +0 -459
  933. data/vendored/puppet/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +0 -590
  934. data/vendored/puppet/lib/puppet/provider/selboolean/getsetsebool.rb +0 -47
  935. data/vendored/puppet/lib/puppet/provider/selmodule/semodule.rb +0 -140
  936. data/vendored/puppet/lib/puppet/provider/service/base.rb +0 -134
  937. data/vendored/puppet/lib/puppet/provider/service/bsd.rb +0 -51
  938. data/vendored/puppet/lib/puppet/provider/service/daemontools.rb +0 -194
  939. data/vendored/puppet/lib/puppet/provider/service/debian.rb +0 -74
  940. data/vendored/puppet/lib/puppet/provider/service/freebsd.rb +0 -143
  941. data/vendored/puppet/lib/puppet/provider/service/gentoo.rb +0 -45
  942. data/vendored/puppet/lib/puppet/provider/service/init.rb +0 -194
  943. data/vendored/puppet/lib/puppet/provider/service/launchd.rb +0 -345
  944. data/vendored/puppet/lib/puppet/provider/service/openbsd.rb +0 -100
  945. data/vendored/puppet/lib/puppet/provider/service/openrc.rb +0 -71
  946. data/vendored/puppet/lib/puppet/provider/service/openwrt.rb +0 -36
  947. data/vendored/puppet/lib/puppet/provider/service/rcng.rb +0 -51
  948. data/vendored/puppet/lib/puppet/provider/service/redhat.rb +0 -72
  949. data/vendored/puppet/lib/puppet/provider/service/runit.rb +0 -112
  950. data/vendored/puppet/lib/puppet/provider/service/service.rb +0 -42
  951. data/vendored/puppet/lib/puppet/provider/service/smf.rb +0 -170
  952. data/vendored/puppet/lib/puppet/provider/service/src.rb +0 -147
  953. data/vendored/puppet/lib/puppet/provider/service/systemd.rb +0 -187
  954. data/vendored/puppet/lib/puppet/provider/service/upstart.rb +0 -359
  955. data/vendored/puppet/lib/puppet/provider/service/windows.rb +0 -106
  956. data/vendored/puppet/lib/puppet/provider/ssh_authorized_key/parsed.rb +0 -105
  957. data/vendored/puppet/lib/puppet/provider/sshkey/parsed.rb +0 -50
  958. data/vendored/puppet/lib/puppet/provider/user/aix.rb +0 -383
  959. data/vendored/puppet/lib/puppet/provider/user/directoryservice.rb +0 -632
  960. data/vendored/puppet/lib/puppet/provider/user/hpux.rb +0 -95
  961. data/vendored/puppet/lib/puppet/provider/user/ldap.rb +0 -128
  962. data/vendored/puppet/lib/puppet/provider/user/openbsd.rb +0 -76
  963. data/vendored/puppet/lib/puppet/provider/user/pw.rb +0 -98
  964. data/vendored/puppet/lib/puppet/provider/user/user_role_add.rb +0 -233
  965. data/vendored/puppet/lib/puppet/provider/user/useradd.rb +0 -265
  966. data/vendored/puppet/lib/puppet/provider/user/windows_adsi.rb +0 -148
  967. data/vendored/puppet/lib/puppet/provider/vlan/cisco.rb +0 -28
  968. data/vendored/puppet/lib/puppet/provider/yumrepo/inifile.rb +0 -303
  969. data/vendored/puppet/lib/puppet/provider/zfs/zfs.rb +0 -108
  970. data/vendored/puppet/lib/puppet/provider/zone/solaris.rb +0 -364
  971. data/vendored/puppet/lib/puppet/provider/zpool/zpool.rb +0 -125
  972. data/vendored/puppet/lib/puppet/reference/configuration.rb +0 -86
  973. data/vendored/puppet/lib/puppet/reference/function.rb +0 -17
  974. data/vendored/puppet/lib/puppet/reference/indirection.rb +0 -71
  975. data/vendored/puppet/lib/puppet/reference/metaparameter.rb +0 -35
  976. data/vendored/puppet/lib/puppet/reference/providers.rb +0 -118
  977. data/vendored/puppet/lib/puppet/reference/report.rb +0 -20
  978. data/vendored/puppet/lib/puppet/reference/type.rb +0 -113
  979. data/vendored/puppet/lib/puppet/relationship.rb +0 -89
  980. data/vendored/puppet/lib/puppet/reports.rb +0 -93
  981. data/vendored/puppet/lib/puppet/reports/http.rb +0 -37
  982. data/vendored/puppet/lib/puppet/reports/log.rb +0 -14
  983. data/vendored/puppet/lib/puppet/reports/store.rb +0 -68
  984. data/vendored/puppet/lib/puppet/resource.rb +0 -670
  985. data/vendored/puppet/lib/puppet/resource/capability_finder.rb +0 -150
  986. data/vendored/puppet/lib/puppet/resource/catalog.rb +0 -682
  987. data/vendored/puppet/lib/puppet/resource/status.rb +0 -227
  988. data/vendored/puppet/lib/puppet/resource/type.rb +0 -524
  989. data/vendored/puppet/lib/puppet/resource/type_collection.rb +0 -263
  990. data/vendored/puppet/lib/puppet/scheduler.rb +0 -16
  991. data/vendored/puppet/lib/puppet/scheduler/job.rb +0 -53
  992. data/vendored/puppet/lib/puppet/scheduler/scheduler.rb +0 -44
  993. data/vendored/puppet/lib/puppet/scheduler/splay_job.rb +0 -32
  994. data/vendored/puppet/lib/puppet/scheduler/timer.rb +0 -13
  995. data/vendored/puppet/lib/puppet/settings.rb +0 -1475
  996. data/vendored/puppet/lib/puppet/settings/array_setting.rb +0 -17
  997. data/vendored/puppet/lib/puppet/settings/autosign_setting.rb +0 -22
  998. data/vendored/puppet/lib/puppet/settings/base_setting.rb +0 -197
  999. data/vendored/puppet/lib/puppet/settings/boolean_setting.rb +0 -32
  1000. data/vendored/puppet/lib/puppet/settings/certificate_revocation_setting.rb +0 -21
  1001. data/vendored/puppet/lib/puppet/settings/config_file.rb +0 -153
  1002. data/vendored/puppet/lib/puppet/settings/directory_setting.rb +0 -18
  1003. data/vendored/puppet/lib/puppet/settings/duration_setting.rb +0 -32
  1004. data/vendored/puppet/lib/puppet/settings/enum_setting.rb +0 -16
  1005. data/vendored/puppet/lib/puppet/settings/environment_conf.rb +0 -213
  1006. data/vendored/puppet/lib/puppet/settings/errors.rb +0 -11
  1007. data/vendored/puppet/lib/puppet/settings/file_or_directory_setting.rb +0 -40
  1008. data/vendored/puppet/lib/puppet/settings/file_setting.rb +0 -245
  1009. data/vendored/puppet/lib/puppet/settings/ini_file.rb +0 -225
  1010. data/vendored/puppet/lib/puppet/settings/path_setting.rb +0 -8
  1011. data/vendored/puppet/lib/puppet/settings/priority_setting.rb +0 -42
  1012. data/vendored/puppet/lib/puppet/settings/server_list_setting.rb +0 -20
  1013. data/vendored/puppet/lib/puppet/settings/string_setting.rb +0 -9
  1014. data/vendored/puppet/lib/puppet/settings/symbolic_enum_setting.rb +0 -17
  1015. data/vendored/puppet/lib/puppet/settings/terminus_setting.rb +0 -14
  1016. data/vendored/puppet/lib/puppet/settings/ttl_setting.rb +0 -51
  1017. data/vendored/puppet/lib/puppet/settings/value_translator.rb +0 -15
  1018. data/vendored/puppet/lib/puppet/ssl.rb +0 -13
  1019. data/vendored/puppet/lib/puppet/ssl/base.rb +0 -158
  1020. data/vendored/puppet/lib/puppet/ssl/certificate.rb +0 -95
  1021. data/vendored/puppet/lib/puppet/ssl/certificate_authority.rb +0 -553
  1022. data/vendored/puppet/lib/puppet/ssl/certificate_authority/autosign_command.rb +0 -45
  1023. data/vendored/puppet/lib/puppet/ssl/certificate_authority/interface.rb +0 -324
  1024. data/vendored/puppet/lib/puppet/ssl/certificate_factory.rb +0 -219
  1025. data/vendored/puppet/lib/puppet/ssl/certificate_request.rb +0 -325
  1026. data/vendored/puppet/lib/puppet/ssl/certificate_request_attributes.rb +0 -37
  1027. data/vendored/puppet/lib/puppet/ssl/certificate_revocation_list.rb +0 -111
  1028. data/vendored/puppet/lib/puppet/ssl/certificate_signer.rb +0 -33
  1029. data/vendored/puppet/lib/puppet/ssl/configuration.rb +0 -61
  1030. data/vendored/puppet/lib/puppet/ssl/digest.rb +0 -20
  1031. data/vendored/puppet/lib/puppet/ssl/host.rb +0 -400
  1032. data/vendored/puppet/lib/puppet/ssl/inventory.rb +0 -55
  1033. data/vendored/puppet/lib/puppet/ssl/key.rb +0 -63
  1034. data/vendored/puppet/lib/puppet/ssl/oids.rb +0 -193
  1035. data/vendored/puppet/lib/puppet/ssl/validator.rb +0 -60
  1036. data/vendored/puppet/lib/puppet/ssl/validator/default_validator.rb +0 -173
  1037. data/vendored/puppet/lib/puppet/ssl/validator/no_validator.rb +0 -20
  1038. data/vendored/puppet/lib/puppet/status.rb +0 -40
  1039. data/vendored/puppet/lib/puppet/syntax_checkers.rb +0 -3
  1040. data/vendored/puppet/lib/puppet/syntax_checkers/base64.rb +0 -40
  1041. data/vendored/puppet/lib/puppet/syntax_checkers/json.rb +0 -35
  1042. data/vendored/puppet/lib/puppet/test/test_helper.rb +0 -252
  1043. data/vendored/puppet/lib/puppet/transaction.rb +0 -444
  1044. data/vendored/puppet/lib/puppet/transaction/additional_resource_generator.rb +0 -220
  1045. data/vendored/puppet/lib/puppet/transaction/event.rb +0 -144
  1046. data/vendored/puppet/lib/puppet/transaction/event_manager.rb +0 -167
  1047. data/vendored/puppet/lib/puppet/transaction/persistence.rb +0 -99
  1048. data/vendored/puppet/lib/puppet/transaction/report.rb +0 -468
  1049. data/vendored/puppet/lib/puppet/transaction/resource_harness.rb +0 -318
  1050. data/vendored/puppet/lib/puppet/type.rb +0 -2665
  1051. data/vendored/puppet/lib/puppet/type/augeas.rb +0 -211
  1052. data/vendored/puppet/lib/puppet/type/component.rb +0 -88
  1053. data/vendored/puppet/lib/puppet/type/computer.rb +0 -66
  1054. data/vendored/puppet/lib/puppet/type/cron.rb +0 -480
  1055. data/vendored/puppet/lib/puppet/type/exec.rb +0 -623
  1056. data/vendored/puppet/lib/puppet/type/file.rb +0 -1039
  1057. data/vendored/puppet/lib/puppet/type/file/checksum.rb +0 -50
  1058. data/vendored/puppet/lib/puppet/type/file/checksum_value.rb +0 -54
  1059. data/vendored/puppet/lib/puppet/type/file/content.rb +0 -160
  1060. data/vendored/puppet/lib/puppet/type/file/ctime.rb +0 -20
  1061. data/vendored/puppet/lib/puppet/type/file/data_sync.rb +0 -93
  1062. data/vendored/puppet/lib/puppet/type/file/ensure.rb +0 -192
  1063. data/vendored/puppet/lib/puppet/type/file/group.rb +0 -41
  1064. data/vendored/puppet/lib/puppet/type/file/mode.rb +0 -177
  1065. data/vendored/puppet/lib/puppet/type/file/mtime.rb +0 -18
  1066. data/vendored/puppet/lib/puppet/type/file/owner.rb +0 -44
  1067. data/vendored/puppet/lib/puppet/type/file/selcontext.rb +0 -141
  1068. data/vendored/puppet/lib/puppet/type/file/source.rb +0 -356
  1069. data/vendored/puppet/lib/puppet/type/file/target.rb +0 -87
  1070. data/vendored/puppet/lib/puppet/type/file/type.rb +0 -19
  1071. data/vendored/puppet/lib/puppet/type/filebucket.rb +0 -117
  1072. data/vendored/puppet/lib/puppet/type/group.rb +0 -209
  1073. data/vendored/puppet/lib/puppet/type/host.rb +0 -95
  1074. data/vendored/puppet/lib/puppet/type/interface.rb +0 -121
  1075. data/vendored/puppet/lib/puppet/type/k5login.rb +0 -165
  1076. data/vendored/puppet/lib/puppet/type/macauthorization.rb +0 -167
  1077. data/vendored/puppet/lib/puppet/type/mailalias.rb +0 -46
  1078. data/vendored/puppet/lib/puppet/type/maillist.rb +0 -62
  1079. data/vendored/puppet/lib/puppet/type/mcx.rb +0 -98
  1080. data/vendored/puppet/lib/puppet/type/mount.rb +0 -314
  1081. data/vendored/puppet/lib/puppet/type/nagios_command.rb +0 -3
  1082. data/vendored/puppet/lib/puppet/type/nagios_contact.rb +0 -3
  1083. data/vendored/puppet/lib/puppet/type/nagios_contactgroup.rb +0 -3
  1084. data/vendored/puppet/lib/puppet/type/nagios_host.rb +0 -3
  1085. data/vendored/puppet/lib/puppet/type/nagios_hostdependency.rb +0 -3
  1086. data/vendored/puppet/lib/puppet/type/nagios_hostescalation.rb +0 -3
  1087. data/vendored/puppet/lib/puppet/type/nagios_hostextinfo.rb +0 -3
  1088. data/vendored/puppet/lib/puppet/type/nagios_hostgroup.rb +0 -3
  1089. data/vendored/puppet/lib/puppet/type/nagios_service.rb +0 -3
  1090. data/vendored/puppet/lib/puppet/type/nagios_servicedependency.rb +0 -3
  1091. data/vendored/puppet/lib/puppet/type/nagios_serviceescalation.rb +0 -3
  1092. data/vendored/puppet/lib/puppet/type/nagios_serviceextinfo.rb +0 -3
  1093. data/vendored/puppet/lib/puppet/type/nagios_servicegroup.rb +0 -3
  1094. data/vendored/puppet/lib/puppet/type/nagios_timeperiod.rb +0 -3
  1095. data/vendored/puppet/lib/puppet/type/notify.rb +0 -46
  1096. data/vendored/puppet/lib/puppet/type/package.rb +0 -571
  1097. data/vendored/puppet/lib/puppet/type/resources.rb +0 -180
  1098. data/vendored/puppet/lib/puppet/type/router.rb +0 -17
  1099. data/vendored/puppet/lib/puppet/type/schedule.rb +0 -481
  1100. data/vendored/puppet/lib/puppet/type/scheduled_task.rb +0 -183
  1101. data/vendored/puppet/lib/puppet/type/selboolean.rb +0 -26
  1102. data/vendored/puppet/lib/puppet/type/selmodule.rb +0 -59
  1103. data/vendored/puppet/lib/puppet/type/service.rb +0 -258
  1104. data/vendored/puppet/lib/puppet/type/ssh_authorized_key.rb +0 -143
  1105. data/vendored/puppet/lib/puppet/type/sshkey.rb +0 -83
  1106. data/vendored/puppet/lib/puppet/type/stage.rb +0 -27
  1107. data/vendored/puppet/lib/puppet/type/tidy.rb +0 -345
  1108. data/vendored/puppet/lib/puppet/type/user.rb +0 -794
  1109. data/vendored/puppet/lib/puppet/type/vlan.rb +0 -26
  1110. data/vendored/puppet/lib/puppet/type/whit.rb +0 -34
  1111. data/vendored/puppet/lib/puppet/type/yumrepo.rb +0 -439
  1112. data/vendored/puppet/lib/puppet/type/zfs.rb +0 -154
  1113. data/vendored/puppet/lib/puppet/type/zone.rb +0 -382
  1114. data/vendored/puppet/lib/puppet/type/zpool.rb +0 -91
  1115. data/vendored/puppet/lib/puppet/util.rb +0 -700
  1116. data/vendored/puppet/lib/puppet/util/at_fork.rb +0 -35
  1117. data/vendored/puppet/lib/puppet/util/at_fork/noop.rb +0 -18
  1118. data/vendored/puppet/lib/puppet/util/at_fork/solaris.rb +0 -160
  1119. data/vendored/puppet/lib/puppet/util/autoload.rb +0 -226
  1120. data/vendored/puppet/lib/puppet/util/backups.rb +0 -86
  1121. data/vendored/puppet/lib/puppet/util/character_encoding.rb +0 -98
  1122. data/vendored/puppet/lib/puppet/util/checksums.rb +0 -363
  1123. data/vendored/puppet/lib/puppet/util/classgen.rb +0 -228
  1124. data/vendored/puppet/lib/puppet/util/colors.rb +0 -100
  1125. data/vendored/puppet/lib/puppet/util/command_line.rb +0 -190
  1126. data/vendored/puppet/lib/puppet/util/command_line/puppet_option_parser.rb +0 -87
  1127. data/vendored/puppet/lib/puppet/util/command_line/trollop.rb +0 -825
  1128. data/vendored/puppet/lib/puppet/util/constant_inflector.rb +0 -24
  1129. data/vendored/puppet/lib/puppet/util/diff.rb +0 -79
  1130. data/vendored/puppet/lib/puppet/util/docs.rb +0 -128
  1131. data/vendored/puppet/lib/puppet/util/errors.rb +0 -159
  1132. data/vendored/puppet/lib/puppet/util/execution.rb +0 -412
  1133. data/vendored/puppet/lib/puppet/util/execution_stub.rb +0 -26
  1134. data/vendored/puppet/lib/puppet/util/feature.rb +0 -95
  1135. data/vendored/puppet/lib/puppet/util/file_watcher.rb +0 -28
  1136. data/vendored/puppet/lib/puppet/util/fileparsing.rb +0 -375
  1137. data/vendored/puppet/lib/puppet/util/filetype.rb +0 -309
  1138. data/vendored/puppet/lib/puppet/util/http_proxy.rb +0 -207
  1139. data/vendored/puppet/lib/puppet/util/inifile.rb +0 -340
  1140. data/vendored/puppet/lib/puppet/util/instance_loader.rb +0 -79
  1141. data/vendored/puppet/lib/puppet/util/json_lockfile.rb +0 -44
  1142. data/vendored/puppet/lib/puppet/util/ldap.rb +0 -2
  1143. data/vendored/puppet/lib/puppet/util/ldap/connection.rb +0 -71
  1144. data/vendored/puppet/lib/puppet/util/ldap/generator.rb +0 -42
  1145. data/vendored/puppet/lib/puppet/util/ldap/manager.rb +0 -281
  1146. data/vendored/puppet/lib/puppet/util/libuser.rb +0 -12
  1147. data/vendored/puppet/lib/puppet/util/limits.rb +0 -12
  1148. data/vendored/puppet/lib/puppet/util/lockfile.rb +0 -66
  1149. data/vendored/puppet/lib/puppet/util/log.rb +0 -415
  1150. data/vendored/puppet/lib/puppet/util/log/destination.rb +0 -49
  1151. data/vendored/puppet/lib/puppet/util/log/destinations.rb +0 -258
  1152. data/vendored/puppet/lib/puppet/util/logging.rb +0 -311
  1153. data/vendored/puppet/lib/puppet/util/metaid.rb +0 -21
  1154. data/vendored/puppet/lib/puppet/util/methodhelper.rb +0 -32
  1155. data/vendored/puppet/lib/puppet/util/metric.rb +0 -64
  1156. data/vendored/puppet/lib/puppet/util/monkey_patches.rb +0 -108
  1157. data/vendored/puppet/lib/puppet/util/multi_match.rb +0 -51
  1158. data/vendored/puppet/lib/puppet/util/nagios_maker.rb +0 -85
  1159. data/vendored/puppet/lib/puppet/util/network_device.rb +0 -17
  1160. data/vendored/puppet/lib/puppet/util/network_device/base.rb +0 -23
  1161. data/vendored/puppet/lib/puppet/util/network_device/cisco.rb +0 -4
  1162. data/vendored/puppet/lib/puppet/util/network_device/cisco/device.rb +0 -285
  1163. data/vendored/puppet/lib/puppet/util/network_device/cisco/facts.rb +0 -72
  1164. data/vendored/puppet/lib/puppet/util/network_device/cisco/interface.rb +0 -94
  1165. data/vendored/puppet/lib/puppet/util/network_device/config.rb +0 -105
  1166. data/vendored/puppet/lib/puppet/util/network_device/ipcalc.rb +0 -68
  1167. data/vendored/puppet/lib/puppet/util/network_device/transport.rb +0 -5
  1168. data/vendored/puppet/lib/puppet/util/network_device/transport/base.rb +0 -26
  1169. data/vendored/puppet/lib/puppet/util/network_device/transport/ssh.rb +0 -126
  1170. data/vendored/puppet/lib/puppet/util/network_device/transport/telnet.rb +0 -47
  1171. data/vendored/puppet/lib/puppet/util/package.rb +0 -31
  1172. data/vendored/puppet/lib/puppet/util/pidlock.rb +0 -62
  1173. data/vendored/puppet/lib/puppet/util/platform.rb +0 -35
  1174. data/vendored/puppet/lib/puppet/util/plist.rb +0 -155
  1175. data/vendored/puppet/lib/puppet/util/posix.rb +0 -137
  1176. data/vendored/puppet/lib/puppet/util/profiler.rb +0 -53
  1177. data/vendored/puppet/lib/puppet/util/profiler/aggregate.rb +0 -85
  1178. data/vendored/puppet/lib/puppet/util/profiler/around_profiler.rb +0 -67
  1179. data/vendored/puppet/lib/puppet/util/profiler/logging.rb +0 -48
  1180. data/vendored/puppet/lib/puppet/util/profiler/object_counts.rb +0 -17
  1181. data/vendored/puppet/lib/puppet/util/profiler/wall_clock.rb +0 -35
  1182. data/vendored/puppet/lib/puppet/util/provider_features.rb +0 -184
  1183. data/vendored/puppet/lib/puppet/util/psych_support.rb +0 -30
  1184. data/vendored/puppet/lib/puppet/util/rdoc.rb +0 -60
  1185. data/vendored/puppet/lib/puppet/util/rdoc/code_objects.rb +0 -294
  1186. data/vendored/puppet/lib/puppet/util/rdoc/generators/puppet_generator.rb +0 -910
  1187. data/vendored/puppet/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +0 -1085
  1188. data/vendored/puppet/lib/puppet/util/rdoc/parser.rb +0 -12
  1189. data/vendored/puppet/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +0 -259
  1190. data/vendored/puppet/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +0 -14
  1191. data/vendored/puppet/lib/puppet/util/reference.rb +0 -118
  1192. data/vendored/puppet/lib/puppet/util/resource_template.rb +0 -61
  1193. data/vendored/puppet/lib/puppet/util/retry_action.rb +0 -46
  1194. data/vendored/puppet/lib/puppet/util/rubygems.rb +0 -75
  1195. data/vendored/puppet/lib/puppet/util/run_mode.rb +0 -110
  1196. data/vendored/puppet/lib/puppet/util/selinux.rb +0 -264
  1197. data/vendored/puppet/lib/puppet/util/skip_tags.rb +0 -9
  1198. data/vendored/puppet/lib/puppet/util/splayer.rb +0 -18
  1199. data/vendored/puppet/lib/puppet/util/ssl.rb +0 -53
  1200. data/vendored/puppet/lib/puppet/util/storage.rb +0 -89
  1201. data/vendored/puppet/lib/puppet/util/suidmanager.rb +0 -165
  1202. data/vendored/puppet/lib/puppet/util/symbolic_file_mode.rb +0 -144
  1203. data/vendored/puppet/lib/puppet/util/tag_set.rb +0 -27
  1204. data/vendored/puppet/lib/puppet/util/tagging.rb +0 -118
  1205. data/vendored/puppet/lib/puppet/util/terminal.rb +0 -16
  1206. data/vendored/puppet/lib/puppet/util/user_attr.rb +0 -21
  1207. data/vendored/puppet/lib/puppet/util/warnings.rb +0 -31
  1208. data/vendored/puppet/lib/puppet/util/watched_file.rb +0 -37
  1209. data/vendored/puppet/lib/puppet/util/watcher.rb +0 -17
  1210. data/vendored/puppet/lib/puppet/util/watcher/change_watcher.rb +0 -33
  1211. data/vendored/puppet/lib/puppet/util/watcher/periodic_watcher.rb +0 -37
  1212. data/vendored/puppet/lib/puppet/util/watcher/timer.rb +0 -19
  1213. data/vendored/puppet/lib/puppet/util/windows.rb +0 -35
  1214. data/vendored/puppet/lib/puppet/util/windows/access_control_entry.rb +0 -84
  1215. data/vendored/puppet/lib/puppet/util/windows/access_control_list.rb +0 -113
  1216. data/vendored/puppet/lib/puppet/util/windows/adsi.rb +0 -545
  1217. data/vendored/puppet/lib/puppet/util/windows/api_types.rb +0 -282
  1218. data/vendored/puppet/lib/puppet/util/windows/com.rb +0 -225
  1219. data/vendored/puppet/lib/puppet/util/windows/error.rb +0 -83
  1220. data/vendored/puppet/lib/puppet/util/windows/eventlog.rb +0 -197
  1221. data/vendored/puppet/lib/puppet/util/windows/file.rb +0 -571
  1222. data/vendored/puppet/lib/puppet/util/windows/principal.rb +0 -192
  1223. data/vendored/puppet/lib/puppet/util/windows/process.rb +0 -497
  1224. data/vendored/puppet/lib/puppet/util/windows/registry.rb +0 -374
  1225. data/vendored/puppet/lib/puppet/util/windows/root_certs.rb +0 -108
  1226. data/vendored/puppet/lib/puppet/util/windows/security.rb +0 -857
  1227. data/vendored/puppet/lib/puppet/util/windows/security_descriptor.rb +0 -62
  1228. data/vendored/puppet/lib/puppet/util/windows/sid.rb +0 -282
  1229. data/vendored/puppet/lib/puppet/util/windows/string.rb +0 -16
  1230. data/vendored/puppet/lib/puppet/util/windows/taskscheduler.rb +0 -1267
  1231. data/vendored/puppet/lib/puppet/util/windows/user.rb +0 -309
  1232. data/vendored/puppet/lib/puppet/util/yaml.rb +0 -36
  1233. data/vendored/puppet/lib/puppet/vendor.rb +0 -57
  1234. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge.rb +0 -2
  1235. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/core.rb +0 -210
  1236. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/deep_merge_hash.rb +0 -28
  1237. data/vendored/puppet/lib/puppet/vendor/deep_merge/lib/deep_merge/rails_compat.rb +0 -27
  1238. data/vendored/puppet/lib/puppet/vendor/deep_merge/test/test_deep_merge.rb +0 -608
  1239. data/vendored/puppet/lib/puppet/vendor/load_deep_merge.rb +0 -1
  1240. data/vendored/puppet/lib/puppet/vendor/load_pathspec.rb +0 -1
  1241. data/vendored/puppet/lib/puppet/vendor/load_semantic.rb +0 -1
  1242. data/vendored/puppet/lib/puppet/vendor/load_semantic_puppet.rb +0 -1
  1243. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
  1244. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +0 -275
  1245. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +0 -17
  1246. data/vendored/puppet/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +0 -14
  1247. data/vendored/puppet/lib/puppet/vendor/require_vendored.rb +0 -6
  1248. data/vendored/puppet/lib/puppet/vendor/semantic/lib/semantic.rb +0 -5
  1249. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +0 -11
  1250. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency.rb +0 -181
  1251. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph.rb +0 -60
  1252. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph_node.rb +0 -117
  1253. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/module_release.rb +0 -58
  1254. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/source.rb +0 -25
  1255. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/unsatisfiable_graph.rb +0 -31
  1256. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +0 -3
  1257. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +0 -203
  1258. data/vendored/puppet/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +0 -758
  1259. data/vendored/puppet/lib/puppet/version.rb +0 -93
  1260. data/vendored/puppet/lib/puppet_pal.rb +0 -879
  1261. data/vendored/puppet/lib/puppet_x.rb +0 -14
@@ -1,238 +0,0 @@
1
- module Puppet::Pops
2
- module Types
3
-
4
- # @api public
5
- class PInitType < PTypeWithContainedType
6
- def self.register_ptype(loader, ir)
7
- create_ptype(loader, ir, 'AnyType',
8
- 'type' => {
9
- KEY_TYPE => POptionalType.new(PTypeType::DEFAULT),
10
- KEY_VALUE => nil
11
- },
12
- 'init_args' => {
13
- KEY_TYPE => PArrayType::DEFAULT,
14
- KEY_VALUE => EMPTY_ARRAY
15
- }
16
- )
17
- end
18
-
19
- attr_reader :init_args
20
-
21
- def initialize(type, init_args)
22
- super(type)
23
- @init_args = init_args.nil? ? EMPTY_ARRAY : init_args
24
-
25
- if type.nil?
26
- raise ArgumentError, _('Init cannot be parameterized with an undefined type and additional arguments') unless @init_args.empty?
27
- @initialized = true
28
- else
29
- @initialized = false
30
- end
31
- end
32
-
33
- def instance?(o, guard = nil)
34
- really_instance?(o, guard) == 1
35
- end
36
-
37
- # @api private
38
- def really_instance?(o, guard = nil)
39
- if @type.nil?
40
- TypeFactory.rich_data.really_instance?(o)
41
- else
42
- assert_initialized
43
- guarded_recursion(guard, 0) do |g|
44
- v = @type.really_instance?(o, g)
45
- if v < 1
46
- if @single_type
47
- s = @single_type.really_instance?(o, g)
48
- v = s if s > v
49
- end
50
- end
51
- if v < 1
52
- if @other_type
53
- s = @other_type.really_instance?(o, g)
54
- s = @other_type.really_instance?([o], g) if s < 0 && @has_optional_single
55
- v = s if s > v
56
- end
57
- end
58
- v
59
- end
60
- end
61
- end
62
-
63
- def eql?(o)
64
- super && @init_args == o.init_args
65
- end
66
-
67
- def hash
68
- super ^ @init_args.hash
69
- end
70
-
71
- def new_function
72
- return super if type.nil?
73
- assert_initialized
74
-
75
- target_type = type
76
- single_type = @single_type
77
- if @init_args.empty?
78
- @new_function ||= Puppet::Functions.create_function(:new_Init, Puppet::Functions::InternalFunction) do
79
- @target_type = target_type
80
- @single_type = single_type
81
-
82
- dispatch :from_array do
83
- scope_param
84
- param 'Array', :value
85
- end
86
-
87
- dispatch :create do
88
- scope_param
89
- param 'Any', :value
90
- end
91
-
92
- def self.create(scope, value, func)
93
- func.call(scope, @target_type, value)
94
- end
95
-
96
- def self.from_array(scope, value, func)
97
- # If there is a single argument that matches the array, then that gets priority over
98
- # expanding the array into all arguments
99
- if @single_type.instance?(value) || (@other_type && !@other_type.instance?(value) && @has_optional_single && @other_type.instance?([value]))
100
- func.call(scope, @target_type, value)
101
- else
102
- func.call(scope, @target_type, *value)
103
- end
104
- end
105
-
106
- def from_array(scope, value)
107
- self.class.from_array(scope, value, loader.load(:function, 'new'))
108
- end
109
-
110
- def create(scope, value)
111
- self.class.create(scope, value, loader.load(:function, 'new'))
112
- end
113
- end
114
- else
115
- init_args = @init_args
116
- @new_function ||= Puppet::Functions.create_function(:new_Init, Puppet::Functions::InternalFunction) do
117
- @target_type = target_type
118
- @init_args = init_args
119
-
120
- dispatch :create do
121
- scope_param
122
- param 'Any', :value
123
- end
124
-
125
- def self.create(scope, value, func)
126
- func.call(scope, @target_type, value, *@init_args)
127
- end
128
-
129
- def create(scope, value)
130
- self.class.create(scope, value, loader.load(:function, 'new'))
131
- end
132
- end
133
- end
134
- end
135
-
136
- DEFAULT = PInitType.new(nil, EMPTY_ARRAY)
137
-
138
- EXACTLY_ONE = [1, 1].freeze
139
-
140
- def assert_initialized
141
- return self if @initialized
142
-
143
- @initialized = true
144
- @self_recursion = true
145
-
146
- begin
147
- # Filter out types that will provide a new_function but are unsuitable to be contained in Init
148
- #
149
- # Calling Init#new would cause endless recursion
150
- # The Optional is the same as Variant[T,Undef].
151
- # The NotUndef is not meaningful to create instances of
152
- if @type.instance_of?(PInitType) || @type.instance_of?(POptionalType) || @type.instance_of?(PNotUndefType)
153
- raise ArgumentError.new
154
- end
155
- new_func = @type.new_function
156
- rescue ArgumentError
157
- raise ArgumentError, _("Creation of new instance of type '%{type_name}' is not supported") % { type_name: @type.to_s }
158
- end
159
- param_tuples = new_func.dispatcher.signatures.map { |closure| closure.type.param_types }
160
-
161
- # An instance of the contained type is always a match to this type.
162
- single_types = [@type]
163
-
164
- if @init_args.empty?
165
- # A value that is assignable to the type of a single parameter is also a match
166
- single_tuples, other_tuples = param_tuples.partition { |tuple| EXACTLY_ONE == tuple.size_range }
167
- single_types.concat(single_tuples.map { |tuple| tuple.types[0] })
168
- else
169
- tc = TypeCalculator.singleton
170
- init_arg_types = @init_args.map { |arg| tc.infer_set(arg) }
171
- arg_count = 1 + init_arg_types.size
172
-
173
- # disqualify all parameter tuples that doesn't allow one value (type unknown at ths stage) + init args.
174
- param_tuples = param_tuples.select do |tuple|
175
- min, max = tuple.size_range
176
- if arg_count >= min && arg_count <= max
177
- # Aside from the first parameter, does the other parameters match?
178
- tuple.assignable?(PTupleType.new(tuple.types[0..0].concat(init_arg_types)))
179
- else
180
- false
181
- end
182
- end
183
- if param_tuples.empty?
184
- raise ArgumentError, _("The type '%{type}' does not represent a valid set of parameters for %{subject}.new()") %
185
- { type: to_s, subject: @type.generalize.name }
186
- end
187
- single_types.concat(param_tuples.map { |tuple| tuple.types[0] })
188
- other_tuples = EMPTY_ARRAY
189
- end
190
- @single_type = PVariantType.maybe_create(single_types)
191
- unless other_tuples.empty?
192
- @other_type = PVariantType.maybe_create(other_tuples)
193
- @has_optional_single = other_tuples.any? { |tuple| tuple.size_range.min == 1 }
194
- end
195
-
196
- guard = RecursionGuard.new
197
- accept(NoopTypeAcceptor::INSTANCE, guard)
198
- @self_recursion = guard.recursive_this?(self)
199
- end
200
-
201
- def accept(visitor, guard)
202
- guarded_recursion(guard, nil) do |g|
203
- super(visitor, g)
204
- @single_type.accept(visitor, guard) if @single_type
205
- @other_type.accept(visitor, guard) if @other_type
206
- end
207
- end
208
-
209
- protected
210
-
211
- def _assignable?(o, guard)
212
- guarded_recursion(guard, false) do |g|
213
- assert_initialized
214
- if o.is_a?(PInitType)
215
- @type.nil? || @type.assignable?(o.type, g)
216
- elsif @type.nil?
217
- TypeFactory.rich_data.assignable?(o, g)
218
- else
219
- @type.assignable?(o, g) ||
220
- @single_type && @single_type.assignable?(o, g) ||
221
- @other_type && (@other_type.assignable?(o, g) || @has_optional_single && @other_type.assignable?(PTupleType.new([o])))
222
- end
223
- end
224
- end
225
-
226
- private
227
-
228
- def guarded_recursion(guard, dflt)
229
- if @self_recursion
230
- guard ||= RecursionGuard.new
231
- guard.with_this(self) { |state| (state & RecursionGuard::SELF_RECURSION_IN_THIS) == 0 ? yield(guard) : dflt }
232
- else
233
- yield(guard)
234
- end
235
- end
236
- end
237
- end
238
- end
@@ -1,94 +0,0 @@
1
- # @abstract base class for PObjectType and other types that implements lazy evaluation of content
2
- # @api private
3
- module Puppet::Pops
4
- module Types
5
-
6
- KEY_NAME = 'name'.freeze
7
- KEY_TYPE = 'type'.freeze
8
- KEY_VALUE = 'value'.freeze
9
-
10
- class PMetaType < PAnyType
11
- include Annotatable
12
-
13
- attr_reader :loader
14
-
15
- def self.register_ptype(loader, ir)
16
- # Abstract type. It doesn't register anything
17
- end
18
-
19
- def accept(visitor, guard)
20
- annotatable_accept(visitor, guard)
21
- super
22
- end
23
-
24
- def instance?(o, guard = nil)
25
- assignable?(TypeCalculator.infer(o), guard)
26
- end
27
-
28
- # Called from the TypeParser once it has found a type using the Loader. The TypeParser will
29
- # interpret the contained expression and the resolved type is remembered. This method also
30
- # checks and remembers if the resolve type contains self recursion.
31
- #
32
- # @param type_parser [TypeParser] type parser that will interpret the type expression
33
- # @param loader [Loader::Loader] loader to use when loading type aliases
34
- # @return [PTypeAliasType] the receiver of the call, i.e. `self`
35
- # @api private
36
- def resolve(loader)
37
- unless @init_hash_expression.nil?
38
- @loader = loader
39
- @self_recursion = true # assumed while it being found out below
40
-
41
- init_hash_expression = @init_hash_expression
42
- @init_hash_expression = nil
43
- if init_hash_expression.is_a?(Model::LiteralHash)
44
- init_hash = resolve_literal_hash(loader, init_hash_expression)
45
- else
46
- init_hash = resolve_hash(loader, init_hash_expression)
47
- end
48
- _pcore_init_from_hash(init_hash)
49
-
50
- # Find out if this type is recursive. A recursive type has performance implications
51
- # on several methods and this knowledge is used to avoid that for non-recursive
52
- # types.
53
- guard = RecursionGuard.new
54
- accept(NoopTypeAcceptor::INSTANCE, guard)
55
- @self_recursion = guard.recursive_this?(self)
56
- end
57
- self
58
- end
59
-
60
- def resolve_literal_hash(loader, init_hash_expression)
61
- TypeParser.singleton.interpret_LiteralHash(init_hash_expression, loader)
62
- end
63
-
64
- def resolve_hash(loader, init_hash)
65
- resolve_type_refs(loader, init_hash)
66
- end
67
-
68
- def resolve_type_refs(loader, o)
69
- case o
70
- when Hash
71
- Hash[o.map { |k, v| [resolve_type_refs(loader, k), resolve_type_refs(loader, v)] }]
72
- when Array
73
- o.map { |e| resolve_type_refs(loader, e) }
74
- when PAnyType
75
- o.resolve(loader)
76
- else
77
- o
78
- end
79
- end
80
-
81
- def resolved?
82
- @init_hash_expression.nil?
83
- end
84
-
85
- # Returns the expanded string the form of the alias, e.g. <alias name> = <resolved type>
86
- #
87
- # @return [String] the expanded form of this alias
88
- # @api public
89
- def to_s
90
- TypeFormatter.singleton.alias_expanded_string(self)
91
- end
92
- end
93
- end
94
- end
@@ -1,1114 +0,0 @@
1
- require_relative 'ruby_generator'
2
- require_relative 'type_with_members'
3
-
4
- module Puppet::Pops
5
- module Types
6
-
7
- KEY_ATTRIBUTES = 'attributes'.freeze
8
- KEY_CHECKS = 'checks'.freeze
9
- KEY_CONSTANTS = 'constants'.freeze
10
- KEY_EQUALITY = 'equality'.freeze
11
- KEY_EQUALITY_INCLUDE_TYPE = 'equality_include_type'.freeze
12
- KEY_FINAL = 'final'.freeze
13
- KEY_FUNCTIONS = 'functions'.freeze
14
- KEY_KIND = 'kind'.freeze
15
- KEY_OVERRIDE = 'override'.freeze
16
- KEY_PARENT = 'parent'.freeze
17
- KEY_TYPE_PARAMETERS = 'type_parameters'.freeze
18
-
19
- # @api public
20
- class PObjectType < PMetaType
21
- include TypeWithMembers
22
-
23
- ATTRIBUTE_KIND_CONSTANT = 'constant'.freeze
24
- ATTRIBUTE_KIND_DERIVED = 'derived'.freeze
25
- ATTRIBUTE_KIND_GIVEN_OR_DERIVED = 'given_or_derived'.freeze
26
- ATTRIBUTE_KIND_REFERENCE = 'reference'.freeze
27
- TYPE_ATTRIBUTE_KIND = TypeFactory.enum(ATTRIBUTE_KIND_CONSTANT, ATTRIBUTE_KIND_DERIVED, ATTRIBUTE_KIND_GIVEN_OR_DERIVED, ATTRIBUTE_KIND_REFERENCE)
28
-
29
- TYPE_OBJECT_NAME = Pcore::TYPE_QUALIFIED_REFERENCE
30
-
31
- TYPE_ATTRIBUTE = TypeFactory.struct({
32
- KEY_TYPE => PTypeType::DEFAULT,
33
- TypeFactory.optional(KEY_FINAL) => PBooleanType::DEFAULT,
34
- TypeFactory.optional(KEY_OVERRIDE) => PBooleanType::DEFAULT,
35
- TypeFactory.optional(KEY_KIND) => TYPE_ATTRIBUTE_KIND,
36
- KEY_VALUE => PAnyType::DEFAULT,
37
- TypeFactory.optional(KEY_ANNOTATIONS) => TYPE_ANNOTATIONS
38
- })
39
-
40
- TYPE_PARAMETER = TypeFactory.struct({
41
- KEY_TYPE => PTypeType::DEFAULT,
42
- TypeFactory.optional(KEY_ANNOTATIONS) => TYPE_ANNOTATIONS
43
- })
44
-
45
- TYPE_CONSTANTS = TypeFactory.hash_kv(Pcore::TYPE_MEMBER_NAME, PAnyType::DEFAULT)
46
- TYPE_ATTRIBUTES = TypeFactory.hash_kv(Pcore::TYPE_MEMBER_NAME, TypeFactory.not_undef)
47
- TYPE_PARAMETERS = TypeFactory.hash_kv(Pcore::TYPE_MEMBER_NAME, TypeFactory.not_undef)
48
- TYPE_ATTRIBUTE_CALLABLE = TypeFactory.callable(0,0)
49
-
50
- TYPE_FUNCTION_TYPE = PTypeType.new(PCallableType::DEFAULT)
51
-
52
- TYPE_FUNCTION = TypeFactory.struct({
53
- KEY_TYPE => TYPE_FUNCTION_TYPE,
54
- TypeFactory.optional(KEY_FINAL) => PBooleanType::DEFAULT,
55
- TypeFactory.optional(KEY_OVERRIDE) => PBooleanType::DEFAULT,
56
- TypeFactory.optional(KEY_ANNOTATIONS) => TYPE_ANNOTATIONS
57
- })
58
- TYPE_FUNCTIONS = TypeFactory.hash_kv(PVariantType.new([Pcore::TYPE_MEMBER_NAME, PStringType.new('[]')]), TypeFactory.not_undef)
59
-
60
- TYPE_EQUALITY = TypeFactory.variant(Pcore::TYPE_MEMBER_NAME, TypeFactory.array_of(Pcore::TYPE_MEMBER_NAME))
61
-
62
- TYPE_CHECKS = PAnyType::DEFAULT # TBD
63
-
64
- TYPE_OBJECT_I12N = TypeFactory.struct({
65
- TypeFactory.optional(KEY_NAME) => TYPE_OBJECT_NAME,
66
- TypeFactory.optional(KEY_PARENT) => PTypeType::DEFAULT,
67
- TypeFactory.optional(KEY_TYPE_PARAMETERS) => TYPE_PARAMETERS,
68
- TypeFactory.optional(KEY_ATTRIBUTES) => TYPE_ATTRIBUTES,
69
- TypeFactory.optional(KEY_CONSTANTS) => TYPE_CONSTANTS,
70
- TypeFactory.optional(KEY_FUNCTIONS) => TYPE_FUNCTIONS,
71
- TypeFactory.optional(KEY_EQUALITY) => TYPE_EQUALITY,
72
- TypeFactory.optional(KEY_EQUALITY_INCLUDE_TYPE) => PBooleanType::DEFAULT,
73
- TypeFactory.optional(KEY_CHECKS) => TYPE_CHECKS,
74
- TypeFactory.optional(KEY_ANNOTATIONS) => TYPE_ANNOTATIONS
75
- })
76
-
77
- def self.register_ptype(loader, ir)
78
- type = create_ptype(loader, ir, 'AnyType', '_pcore_init_hash' => TYPE_OBJECT_I12N)
79
-
80
- # Now, when the Object type exists, add annotations with keys derived from Annotation and freeze the types.
81
- annotations = TypeFactory.optional(PHashType.new(PTypeType.new(Annotation._pcore_type), TypeFactory.hash_kv(Pcore::TYPE_MEMBER_NAME, PAnyType::DEFAULT)))
82
- TYPE_ATTRIBUTE.hashed_elements[KEY_ANNOTATIONS].replace_value_type(annotations)
83
- TYPE_FUNCTION.hashed_elements[KEY_ANNOTATIONS].replace_value_type(annotations)
84
- TYPE_OBJECT_I12N.hashed_elements[KEY_ANNOTATIONS].replace_value_type(annotations)
85
- PTypeSetType::TYPE_TYPESET_I12N.hashed_elements[KEY_ANNOTATIONS].replace_value_type(annotations)
86
- PTypeSetType::TYPE_TYPE_REFERENCE_I12N.hashed_elements[KEY_ANNOTATIONS].replace_value_type(annotations)
87
- type
88
- end
89
-
90
- # @abstract Encapsulates behavior common to {PAttribute} and {PFunction}
91
- # @api public
92
- class PAnnotatedMember
93
- include Annotatable
94
- include InvocableMember
95
-
96
- # @return [PObjectType] the object type containing this member
97
- # @api public
98
- attr_reader :container
99
-
100
- # @return [String] the name of this member
101
- # @api public
102
- attr_reader :name
103
-
104
- # @return [PAnyType] the type of this member
105
- # @api public
106
- attr_reader :type
107
-
108
- # @param name [String] The name of the member
109
- # @param container [PObjectType] The containing object type
110
- # @param init_hash [Hash{String=>Object}] Hash containing feature options
111
- # @option init_hash [PAnyType] 'type' The member type (required)
112
- # @option init_hash [Boolean] 'override' `true` if this feature must override an inherited feature. Default is `false`.
113
- # @option init_hash [Boolean] 'final' `true` if this feature cannot be overridden. Default is `false`.
114
- # @option init_hash [Hash{PTypeType => Hash}] 'annotations' Annotations hash. Default is `nil`.
115
- # @api public
116
- def initialize(name, container, init_hash)
117
- @name = name
118
- @container = container
119
- @type = init_hash[KEY_TYPE]
120
- @override = init_hash[KEY_OVERRIDE]
121
- @override = false if @override.nil?
122
- @final = init_hash[KEY_FINAL]
123
- @final = false if @final.nil?
124
- init_annotatable(init_hash)
125
- end
126
-
127
- # Delegates to the contained type
128
- # @param visitor [TypeAcceptor] the visitor
129
- # @param guard [RecursionGuard] guard against recursion. Only used by internal calls
130
- # @api public
131
- def accept(visitor, guard)
132
- annotatable_accept(visitor, guard)
133
- @type.accept(visitor, guard)
134
- end
135
-
136
- # Checks if the this _member_ overrides an inherited member, and if so, that this member is declared with override = true and that
137
- # the inherited member accepts to be overridden by this member.
138
- #
139
- # @param parent_members [Hash{String=>PAnnotatedMember}] the hash of inherited members
140
- # @return [PAnnotatedMember] this instance
141
- # @raises [Puppet::ParseError] if the assertion fails
142
- # @api private
143
- def assert_override(parent_members)
144
- parent_member = parent_members[@name]
145
- if parent_member.nil?
146
- if @override
147
- raise Puppet::ParseError, _("expected %{label} to override an inherited %{feature_type}, but no such %{feature_type} was found") %
148
- { label: label, feature_type: feature_type }
149
- end
150
- self
151
- else
152
- parent_member.assert_can_be_overridden(self)
153
- end
154
- end
155
-
156
- # Checks if the given _member_ can override this member.
157
- #
158
- # @param member [PAnnotatedMember] the overriding member
159
- # @return [PAnnotatedMember] its argument
160
- # @raises [Puppet::ParseError] if the assertion fails
161
- # @api private
162
- def assert_can_be_overridden(member)
163
- unless self.class == member.class
164
- raise Puppet::ParseError, _("%{member} attempts to override %{label}") % { member: member.label, label: label }
165
- end
166
- if @final && !(constant? && member.constant?)
167
- raise Puppet::ParseError, _("%{member} attempts to override final %{label}") % { member: member.label, label: label }
168
- end
169
- unless member.override?
170
- #TRANSLATOR 'override => true' is a puppet syntax and should not be translated
171
- raise Puppet::ParseError, _("%{member} attempts to override %{label} without having override => true") % { member: member.label, label: label }
172
- end
173
- unless @type.assignable?(member.type)
174
- raise Puppet::ParseError, _("%{member} attempts to override %{label} with a type that does not match") % { member: member.label, label: label }
175
- end
176
- member
177
- end
178
-
179
- def constant?
180
- false
181
- end
182
-
183
- # @return [Boolean] `true` if this feature cannot be overridden
184
- # @api public
185
- def final?
186
- @final
187
- end
188
-
189
- # @return [Boolean] `true` if this feature must override an inherited feature
190
- # @api public
191
- def override?
192
- @override
193
- end
194
-
195
- # @api public
196
- def hash
197
- @name.hash ^ @type.hash
198
- end
199
-
200
- # @api public
201
- def eql?(o)
202
- self.class == o.class && @name == o.name && @type == o.type && @override == o.override? && @final == o.final?
203
- end
204
-
205
- # @api public
206
- def ==(o)
207
- eql?(o)
208
- end
209
-
210
- # Returns the member as a hash suitable as an argument for constructor. Name is excluded
211
- # @return [Hash{String=>Object}] the initialization hash
212
- # @api private
213
- def _pcore_init_hash
214
- hash = { KEY_TYPE => @type }
215
- hash[KEY_FINAL] = true if @final
216
- hash[KEY_OVERRIDE] = true if @override
217
- hash[KEY_ANNOTATIONS] = @annotations unless @annotations.nil?
218
- hash
219
- end
220
-
221
- # @api private
222
- def feature_type
223
- self.class.feature_type
224
- end
225
-
226
- # @api private
227
- def label
228
- self.class.label(@container, @name)
229
- end
230
-
231
- # Performs type checking of arguments and invokes the method that corresponds to this
232
- # method. The result of the invocation is returned
233
- #
234
- # @param receiver [Object] The receiver of the call
235
- # @param scope [Puppet::Parser::Scope] The caller scope
236
- # @param args [Array] Array of arguments.
237
- # @return [Object] The result returned by the member function or attribute
238
- #
239
- # @api private
240
- def invoke(receiver, scope, args, &block)
241
- @dispatch ||= create_dispatch(receiver)
242
-
243
- args_type = TypeCalculator.infer_set(block_given? ? args + [block] : args)
244
- found = @dispatch.find { |d| d.type.callable?(args_type) }
245
- raise ArgumentError, TypeMismatchDescriber.describe_signatures(label, @dispatch, args_type) if found.nil?
246
- found.invoke(receiver, scope, args, &block)
247
- end
248
-
249
- # @api private
250
- def create_dispatch(instance)
251
- # TODO: Assumes Ruby implementation for now
252
- if(callable_type.is_a?(PVariantType))
253
- callable_type.types.map do |ct|
254
- Functions::Dispatch.new(ct, RubyGenerator.protect_reserved_name(name), [], false, ct.block_type.nil? ? nil : 'block')
255
- end
256
- else
257
- [Functions::Dispatch.new(callable_type, RubyGenerator.protect_reserved_name(name), [], false, callable_type.block_type.nil? ? nil : 'block')]
258
- end
259
- end
260
-
261
- # @api private
262
- def self.feature_type
263
- raise NotImplementedError, "'#{self.class.name}' should implement #feature_type"
264
- end
265
-
266
- def self.label(container, name)
267
- "#{feature_type} #{container.label}[#{name}]"
268
- end
269
- end
270
-
271
- # Describes a named Attribute in an Object type
272
- # @api public
273
- class PAttribute < PAnnotatedMember
274
-
275
- # @return [String,nil] The attribute kind as defined by #TYPE_ATTRIBUTE_KIND, or `nil`
276
- attr_reader :kind
277
-
278
- # @param name [String] The name of the attribute
279
- # @param container [PObjectType] The containing object type
280
- # @param init_hash [Hash{String=>Object}] Hash containing attribute options
281
- # @option init_hash [PAnyType] 'type' The attribute type (required)
282
- # @option init_hash [Object] 'value' The default value, must be an instanceof the given `type` (optional)
283
- # @option init_hash [String] 'kind' The attribute kind, matching #TYPE_ATTRIBUTE_KIND
284
- # @api public
285
- def initialize(name, container, init_hash)
286
- super(name, container, TypeAsserter.assert_instance_of(nil, TYPE_ATTRIBUTE, init_hash) { "initializer for #{self.class.label(container, name)}" })
287
- @kind = init_hash[KEY_KIND]
288
- if @kind == ATTRIBUTE_KIND_CONSTANT # final is implied
289
- if init_hash.include?(KEY_FINAL) && !@final
290
- #TRANSLATOR 'final => false' is puppet syntax and should not be translated
291
- raise Puppet::ParseError, _("%{label} of kind 'constant' cannot be combined with final => false") % { label: label }
292
- end
293
- @final = true
294
- end
295
-
296
- if init_hash.include?(KEY_VALUE)
297
- if @kind == ATTRIBUTE_KIND_DERIVED || @kind == ATTRIBUTE_KIND_GIVEN_OR_DERIVED
298
- raise Puppet::ParseError, _("%{label} of kind '%{kind}' cannot be combined with an attribute value") % { label: label, kind: @kind }
299
- end
300
- v = init_hash[KEY_VALUE]
301
- @value = v == :default ? v : TypeAsserter.assert_instance_of(nil, type, v) {"#{label} #{KEY_VALUE}" }
302
- else
303
- raise Puppet::ParseError, _("%{label} of kind 'constant' requires a value") % { label: label } if @kind == ATTRIBUTE_KIND_CONSTANT
304
- @value = :undef # Not to be confused with nil or :default
305
- end
306
- end
307
-
308
- def callable_type
309
- TYPE_ATTRIBUTE_CALLABLE
310
- end
311
-
312
- # @api public
313
- def eql?(o)
314
- super && @kind == o.kind && @value == (o.value? ? o.value : :undef)
315
- end
316
-
317
- # Returns the member as a hash suitable as an argument for constructor. Name is excluded
318
- # @return [Hash{String=>Object}] the hash
319
- # @api private
320
- def _pcore_init_hash
321
- hash = super
322
- unless @kind.nil?
323
- hash[KEY_KIND] = @kind
324
- hash.delete(KEY_FINAL) if @kind == ATTRIBUTE_KIND_CONSTANT # final is implied
325
- end
326
- hash[KEY_VALUE] = @value unless @value == :undef
327
- hash
328
- end
329
-
330
- def constant?
331
- @kind == ATTRIBUTE_KIND_CONSTANT
332
- end
333
-
334
- # @return [Booelan] true if the given value equals the default value for this attribute
335
- def default_value?(value)
336
- @value == value
337
- end
338
-
339
- # @return [Boolean] `true` if a value has been defined for this attribute.
340
- def value?
341
- @value != :undef
342
- end
343
-
344
- # Returns the value of this attribute, or raises an error if no value has been defined. Raising an error
345
- # is necessary since a defined value may be `nil`.
346
- #
347
- # @return [Object] the value that has been defined for this attribute.
348
- # @raise [Puppet::Error] if no value has been defined
349
- # @api public
350
- def value
351
- # An error must be raised here since `nil` is a valid value and it would be bad to leak the :undef symbol
352
- raise Puppet::Error, "#{label} has no value" if @value == :undef
353
- @value
354
- end
355
-
356
- # @api private
357
- def self.feature_type
358
- 'attribute'
359
- end
360
- end
361
-
362
- class PTypeParameter < PAttribute
363
- # @return [Hash{String=>Object}] the hash
364
- # @api private
365
- def _pcore_init_hash
366
- hash = super
367
- hash[KEY_TYPE] = hash[KEY_TYPE].type
368
- hash.delete(KEY_VALUE) if hash.include?(KEY_VALUE) && hash[KEY_VALUE].nil?
369
- hash
370
- end
371
-
372
- # @api private
373
- def self.feature_type
374
- 'type_parameter'
375
- end
376
- end
377
-
378
- # Describes a named Function in an Object type
379
- # @api public
380
- class PFunction < PAnnotatedMember
381
-
382
- # @param name [String] The name of the attribute
383
- # @param container [PObjectType] The containing object type
384
- # @param init_hash [Hash{String=>Object}] Hash containing function options
385
- # @api public
386
- def initialize(name, container, init_hash)
387
- super(name, container, TypeAsserter.assert_instance_of(["initializer for function '%s'", name], TYPE_FUNCTION, init_hash))
388
- end
389
-
390
- def callable_type
391
- type
392
- end
393
-
394
- # @api private
395
- def self.feature_type
396
- 'function'
397
- end
398
- end
399
-
400
- attr_reader :name
401
- attr_reader :parent
402
- attr_reader :equality
403
- attr_reader :checks
404
- attr_reader :annotations
405
-
406
- # Initialize an Object Type instance. The initialization will use either a name and an initialization
407
- # hash expression, or a fully resolved initialization hash.
408
- #
409
- # @overload initialize(name, init_hash_expression)
410
- # Used when the Object type is loaded using a type alias expression. When that happens, it is important that
411
- # the actual resolution of the expression is deferred until all definitions have been made known to the current
412
- # loader. The object will then be resolved when it is loaded by the {TypeParser}. "resolved" here, means that
413
- # the hash expression is fully resolved, and then passed to the {#_pcore_init_from_hash} method.
414
- # @param name [String] The name of the object
415
- # @param init_hash_expression [Model::LiteralHash] The hash describing the Object features
416
- #
417
- # @overload initialize(init_hash)
418
- # Used when the object is created by the {TypeFactory}. The init_hash must be fully resolved.
419
- # @param _pcore_init_hash [Hash{String=>Object}] The hash describing the Object features
420
- # @param loader [Loaders::Loader,nil] the loader that loaded the type
421
- #
422
- # @api private
423
- def initialize(_pcore_init_hash, init_hash_expression = nil)
424
- if _pcore_init_hash.is_a?(Hash)
425
- _pcore_init_from_hash(_pcore_init_hash)
426
- @loader = init_hash_expression unless init_hash_expression.nil?
427
- else
428
- @type_parameters = EMPTY_HASH
429
- @attributes = EMPTY_HASH
430
- @functions = EMPTY_HASH
431
- @name = TypeAsserter.assert_instance_of('object name', TYPE_OBJECT_NAME, _pcore_init_hash)
432
- @init_hash_expression = init_hash_expression
433
- end
434
- end
435
-
436
- def instance?(o, guard = nil)
437
- if o.is_a?(PuppetObject)
438
- assignable?(o._pcore_type, guard)
439
- else
440
- name = o.class.name
441
- return false if name.nil? # anonymous class that doesn't implement PuppetObject is not an instance
442
- ir = Loaders.implementation_registry
443
- type = ir.nil? ? nil : ir.type_for_module(name)
444
- !type.nil? && assignable?(type, guard)
445
- end
446
- end
447
-
448
- # @api private
449
- def new_function
450
- @new_function ||= create_new_function
451
- end
452
-
453
- # Assign a new instance reader to this type
454
- # @param [Serialization::InstanceReader] reader the reader to assign
455
- # @api private
456
- def reader=(reader)
457
- @reader = reader
458
- end
459
-
460
- # Assign a new instance write to this type
461
- # @param [Serialization::InstanceWriter] the writer to assign
462
- # @api private
463
- def writer=(writer)
464
- @writer = writer
465
- end
466
-
467
- # Read an instance of this type from a deserializer
468
- # @param [Integer] value_count the number attributes needed to create the instance
469
- # @param [Serialization::Deserializer] deserializer the deserializer to read from
470
- # @return [Object] the created instance
471
- # @api private
472
- def read(value_count, deserializer)
473
- reader.read(self, implementation_class, value_count, deserializer)
474
- end
475
-
476
- # Write an instance of this type using a serializer
477
- # @param [Object] value the instance to write
478
- # @param [Serialization::Serializer] the serializer to write to
479
- # @api private
480
- def write(value, serializer)
481
- writer.write(self, value, serializer)
482
- end
483
-
484
- # @api private
485
- def create_new_function
486
- impl_class = implementation_class
487
- return impl_class.create_new_function(self) if impl_class.respond_to?(:create_new_function)
488
-
489
- (param_names, param_types, required_param_count) = parameter_info(impl_class)
490
-
491
- # Create the callable with a size that reflects the required and optional parameters
492
- create_type = TypeFactory.callable(*param_types, required_param_count, param_names.size)
493
- from_hash_type = TypeFactory.callable(init_hash_type, 1, 1)
494
-
495
- # Create and return a #new_XXX function where the dispatchers are added programmatically.
496
- Puppet::Functions.create_loaded_function(:"new_#{name}", loader) do
497
-
498
- # The class that creates new instances must be available to the constructor methods
499
- # and is therefore declared as a variable and accessor on the class that represents
500
- # this added function.
501
- @impl_class = impl_class
502
-
503
- def self.impl_class
504
- @impl_class
505
- end
506
-
507
- # It's recommended that an implementor of an Object type provides the method #from_asserted_hash.
508
- # This method should accept a hash and assume that type assertion has been made already (it is made
509
- # by the dispatch added here).
510
- if impl_class.respond_to?(:from_asserted_hash)
511
- dispatcher.add(Functions::Dispatch.new(from_hash_type, :from_hash, ['hash']))
512
- def from_hash(hash)
513
- self.class.impl_class.from_asserted_hash(hash)
514
- end
515
- end
516
-
517
- # Add the dispatch that uses the standard #from_asserted_args or #new method on the class. It's assumed that the
518
- # method performs no assertions.
519
- dispatcher.add(Functions::Dispatch.new(create_type, :create, param_names))
520
- if impl_class.respond_to?(:from_asserted_args)
521
- def create(*args)
522
- self.class.impl_class.from_asserted_args(*args)
523
- end
524
- else
525
- def create(*args)
526
- self.class.impl_class.new(*args)
527
- end
528
- end
529
- end
530
- end
531
-
532
- # @api private
533
- def implementation_class(create = true)
534
- if @implementation_class.nil? && create
535
- ir = Loaders.implementation_registry
536
- class_name = ir.nil? ? nil : ir.module_name_for_type(self)
537
- if class_name.nil?
538
- # Use generator to create a default implementation
539
- @implementation_class = RubyGenerator.new.create_class(self)
540
- @implementation_class.class_eval(&@implementation_override) if instance_variable_defined?(:@implementation_override)
541
- else
542
- # Can the mapping be loaded?
543
- @implementation_class = ClassLoader.provide(class_name)
544
-
545
- raise Puppet::Error, "Unable to load class #{class_name}" if @implementation_class.nil?
546
- unless @implementation_class < PuppetObject || @implementation_class.respond_to?(:ecore)
547
- raise Puppet::Error, "Unable to create an instance of #{name}. #{class_name} does not include module #{PuppetObject.name}"
548
- end
549
- end
550
- end
551
- @implementation_class
552
- end
553
-
554
- # @api private
555
- def implementation_class=(cls)
556
- raise ArgumentError, "attempt to redefine implementation class for #{label}" unless @implementation_class.nil?
557
- @implementation_class = cls
558
- end
559
-
560
- # The block passed to this method will be passed in a call to `#class_eval` on the dynamically generated
561
- # class for this data type. It's indended use is to complement or redefine the generated methods and
562
- # attribute readers.
563
- #
564
- # The method is normally called with the block passed to `#implementation` when a data type is defined using
565
- # {Puppet::DataTypes::create_type}.
566
- #
567
- # @api private
568
- def implementation_override=(block)
569
- if !@implementation_class.nil? || instance_variable_defined?(:@implementation_override)
570
- raise ArgumentError, "attempt to redefine implementation override for #{label}"
571
- end
572
- @implementation_override = block
573
- end
574
-
575
- def extract_init_hash(o)
576
- return o._pcore_init_hash if o.respond_to?(:_pcore_init_hash)
577
-
578
- result = {}
579
- pic = parameter_info(o.class)
580
- attrs = attributes(true)
581
- pic[0].each do |name|
582
- v = o.send(name)
583
- result[name] = v unless attrs[name].default_value?(v)
584
- end
585
- result
586
- end
587
-
588
- # @api private
589
- # @return [(Array<String>, Array<PAnyType>, Integer)] array of parameter names, array of parameter types, and a count reflecting the required number of parameters
590
- def parameter_info(impl_class)
591
- # Create a types and a names array where optional entries ends up last
592
- @parameter_info ||= {}
593
- pic = @parameter_info[impl_class]
594
- return pic if pic
595
-
596
- opt_types = []
597
- opt_names = []
598
- non_opt_types = []
599
- non_opt_names = []
600
- init_hash_type.elements.each do |se|
601
- if se.key_type.is_a?(POptionalType)
602
- opt_names << se.name
603
- opt_types << se.value_type
604
- else
605
- non_opt_names << se.name
606
- non_opt_types << se.value_type
607
- end
608
- end
609
- param_names = non_opt_names + opt_names
610
- param_types = non_opt_types + opt_types
611
- param_count = param_names.size
612
-
613
- init = impl_class.respond_to?(:from_asserted_args) ? impl_class.method(:from_asserted_args) : impl_class.instance_method(:initialize)
614
- init_non_opt_count = 0
615
- init_param_names = init.parameters.map do |p|
616
- init_non_opt_count += 1 if :req == p[0]
617
- n = p[1].to_s
618
- r = RubyGenerator.unprotect_reserved_name(n)
619
- unless r.equal?(n)
620
- # assert that the protected name wasn't a real name (names can start with underscore)
621
- n = r unless param_names.index(r).nil?
622
- end
623
- n
624
- end
625
-
626
- if init_param_names != param_names
627
- if init_param_names.size < param_count || init_non_opt_count > param_count
628
- raise Serialization::SerializationError, "Initializer for class #{impl_class.name} does not match the attributes of #{name}"
629
- end
630
- init_param_names = init_param_names[0, param_count] if init_param_names.size > param_count
631
- unless init_param_names == param_names
632
- # Reorder needed to match initialize method arguments
633
- new_param_types = []
634
- init_param_names.each do |ip|
635
- index = param_names.index(ip)
636
- if index.nil?
637
- raise Serialization::SerializationError,
638
- "Initializer for class #{impl_class.name} parameter '#{ip}' does not match any of the the attributes of type #{name}"
639
- end
640
- new_param_types << param_types[index]
641
- end
642
- param_names = init_param_names
643
- param_types = new_param_types
644
- end
645
- end
646
-
647
- pic = [param_names.freeze, param_types.freeze, non_opt_types.size].freeze
648
- @parameter_info[impl_class] = pic
649
- pic
650
- end
651
-
652
- # @api private
653
- def attr_reader_name(se)
654
- if se.value_type.is_a?(PBooleanType) || se.value_type.is_a?(POptionalType) && se.value_type.type.is_a?(PBooleanType)
655
- "#{se.name}?"
656
- else
657
- se.name
658
- end
659
- end
660
-
661
- def self.from_hash(hash)
662
- new(hash, nil)
663
- end
664
-
665
- # @api private
666
- def _pcore_init_from_hash(init_hash)
667
- TypeAsserter.assert_instance_of('object initializer', TYPE_OBJECT_I12N, init_hash)
668
- @type_parameters = EMPTY_HASH
669
- @attributes = EMPTY_HASH
670
- @functions = EMPTY_HASH
671
-
672
- # Name given to the loader have higher precedence than a name declared in the type
673
- @name ||= init_hash[KEY_NAME]
674
- @name.freeze unless @name.nil?
675
-
676
- @parent = init_hash[KEY_PARENT]
677
-
678
- parent_members = EMPTY_HASH
679
- parent_type_params = EMPTY_HASH
680
- parent_object_type = nil
681
- unless @parent.nil?
682
- check_self_recursion(self)
683
- rp = resolved_parent
684
- raise Puppet::ParseError, _("reference to unresolved type '%{name}'") % { :name => rp.type_string } if rp.is_a?(PTypeReferenceType)
685
- if rp.is_a?(PObjectType)
686
- parent_object_type = rp
687
- parent_members = rp.members(true)
688
- parent_type_params = rp.type_parameters(true)
689
- end
690
- end
691
-
692
- type_parameters = init_hash[KEY_TYPE_PARAMETERS]
693
- unless type_parameters.nil? || type_parameters.empty?
694
- @type_parameters = {}
695
- type_parameters.each do |key, param_spec|
696
- param_value = :undef
697
- if param_spec.is_a?(Hash)
698
- param_type = param_spec[KEY_TYPE]
699
- param_value = param_spec[KEY_VALUE] if param_spec.include?(KEY_VALUE)
700
- else
701
- param_type = TypeAsserter.assert_instance_of(nil, PTypeType::DEFAULT, param_spec) { "type_parameter #{label}[#{key}]" }
702
- end
703
- param_type = POptionalType.new(param_type) unless param_type.is_a?(POptionalType)
704
- type_param = PTypeParameter.new(key, self, KEY_TYPE => param_type, KEY_VALUE => param_value).assert_override(parent_type_params)
705
- @type_parameters[key] = type_param
706
- end
707
- end
708
-
709
- constants = init_hash[KEY_CONSTANTS]
710
- attr_specs = init_hash[KEY_ATTRIBUTES]
711
- if attr_specs.nil?
712
- attr_specs = {}
713
- else
714
- # attr_specs might be frozen
715
- attr_specs = Hash[attr_specs]
716
- end
717
- unless constants.nil? || constants.empty?
718
- constants.each do |key, value|
719
- if attr_specs.include?(key)
720
- raise Puppet::ParseError, _("attribute %{label}[%{key}] is defined as both a constant and an attribute") % { label: label, key: key }
721
- end
722
- attr_spec = {
723
- # Type must be generic here, or overrides would become impossible
724
- KEY_TYPE => TypeCalculator.infer(value).generalize,
725
- KEY_VALUE => value,
726
- KEY_KIND => ATTRIBUTE_KIND_CONSTANT
727
- }
728
- # Indicate override if parent member exists. Type check etc. will take place later on.
729
- attr_spec[KEY_OVERRIDE] = parent_members.include?(key)
730
- attr_specs[key] = attr_spec
731
- end
732
- end
733
-
734
- unless attr_specs.empty?
735
- @attributes = Hash[attr_specs.map do |key, attr_spec|
736
- unless attr_spec.is_a?(Hash)
737
- attr_type = TypeAsserter.assert_instance_of(nil, PTypeType::DEFAULT, attr_spec) { "attribute #{label}[#{key}]" }
738
- attr_spec = { KEY_TYPE => attr_type }
739
- attr_spec[KEY_VALUE] = nil if attr_type.is_a?(POptionalType)
740
- end
741
- attr = PAttribute.new(key, self, attr_spec)
742
- [attr.name, attr.assert_override(parent_members)]
743
- end].freeze
744
- end
745
-
746
- func_specs = init_hash[KEY_FUNCTIONS]
747
- unless func_specs.nil? || func_specs.empty?
748
- @functions = Hash[func_specs.map do |key, func_spec|
749
- func_spec = { KEY_TYPE => TypeAsserter.assert_instance_of(nil, TYPE_FUNCTION_TYPE, func_spec) { "function #{label}[#{key}]" } } unless func_spec.is_a?(Hash)
750
- func = PFunction.new(key, self, func_spec)
751
- name = func.name
752
- raise Puppet::ParseError, _("%{label} conflicts with attribute with the same name") % { label: func.label } if @attributes.include?(name)
753
- [name, func.assert_override(parent_members)]
754
- end].freeze
755
- end
756
-
757
- @equality_include_type = init_hash[KEY_EQUALITY_INCLUDE_TYPE]
758
- @equality_include_type = true if @equality_include_type.nil?
759
-
760
- equality = init_hash[KEY_EQUALITY]
761
- equality = [equality] if equality.is_a?(String)
762
- if equality.is_a?(Array)
763
- unless equality.empty?
764
- #TRANSLATORS equality_include_type = false should not be translated
765
- raise Puppet::ParseError, _('equality_include_type = false cannot be combined with non empty equality specification') unless @equality_include_type
766
- parent_eq_attrs = nil
767
- equality.each do |attr_name|
768
-
769
- attr = parent_members[attr_name]
770
- if attr.nil?
771
- attr = @attributes[attr_name] || @functions[attr_name]
772
- elsif attr.is_a?(PAttribute)
773
- # Assert that attribute is not already include by parent equality
774
- parent_eq_attrs ||= parent_object_type.equality_attributes
775
- if parent_eq_attrs.include?(attr_name)
776
- including_parent = find_equality_definer_of(attr)
777
- raise Puppet::ParseError, _("%{label} equality is referencing %{attribute} which is included in equality of %{including_parent}") %
778
- { label: label, attribute: attr.label, including_parent: including_parent.label }
779
- end
780
- end
781
-
782
- unless attr.is_a?(PAttribute)
783
- if attr.nil?
784
- raise Puppet::ParseError, _("%{label} equality is referencing non existent attribute '%{attribute}'") % { label: label, attribute: attr_name }
785
- end
786
- raise Puppet::ParseError, _("%{label} equality is referencing %{attribute}. Only attribute references are allowed") %
787
- { label: label, attribute: attr.label }
788
- end
789
- if attr.kind == ATTRIBUTE_KIND_CONSTANT
790
- raise Puppet::ParseError, _("%{label} equality is referencing constant %{attribute}.") % { label: label, attribute: attr.label } + ' ' +
791
- _("Reference to constant is not allowed in equality")
792
- end
793
- end
794
- end
795
- equality.freeze
796
- end
797
- @equality = equality
798
-
799
- @checks = init_hash[KEY_CHECKS]
800
- init_annotatable(init_hash)
801
- end
802
-
803
- def [](name)
804
- member = @attributes[name] || @functions[name]
805
- if member.nil?
806
- rp = resolved_parent
807
- member = rp[name] if rp.is_a?(PObjectType)
808
- end
809
- member
810
- end
811
-
812
- def accept(visitor, guard)
813
- guarded_recursion(guard, nil) do |g|
814
- super(visitor, g)
815
- @parent.accept(visitor, g) unless parent.nil?
816
- @type_parameters.values.each { |p| p.accept(visitor, g) }
817
- @attributes.values.each { |a| a.accept(visitor, g) }
818
- @functions.values.each { |f| f.accept(visitor, g) }
819
- end
820
- end
821
-
822
- def callable_args?(callable, guard)
823
- @parent.nil? ? false : @parent.callable_args?(callable, guard)
824
- end
825
-
826
- # Returns the type that a initialization hash used for creating instances of this type must conform to.
827
- #
828
- # @return [PStructType] the initialization hash type
829
- # @api public
830
- def init_hash_type
831
- @init_hash_type ||= create_init_hash_type
832
- end
833
-
834
- def allocate
835
- implementation_class.allocate
836
- end
837
-
838
- def create(*args)
839
- implementation_class.create(*args)
840
- end
841
-
842
- def from_hash(hash)
843
- implementation_class.from_hash(hash)
844
- end
845
-
846
- # Creates the type that a initialization hash used for creating instances of this type must conform to.
847
- #
848
- # @return [PStructType] the initialization hash type
849
- # @api private
850
- def create_init_hash_type
851
- struct_elems = {}
852
- attributes(true).values.each do |attr|
853
- unless attr.kind == ATTRIBUTE_KIND_CONSTANT || attr.kind == ATTRIBUTE_KIND_DERIVED
854
- if attr.value?
855
- struct_elems[TypeFactory.optional(attr.name)] = attr.type
856
- else
857
- struct_elems[attr.name] = attr.type
858
- end
859
- end
860
- end
861
- TypeFactory.struct(struct_elems)
862
- end
863
-
864
- # The init_hash is primarily intended for serialization and string representation purposes. It creates a hash
865
- # suitable for passing to {PObjectType#new(init_hash)}
866
- #
867
- # @return [Hash{String=>Object}] the features hash
868
- # @api public
869
- def _pcore_init_hash(include_name = true)
870
- result = super()
871
- result[KEY_NAME] = @name if include_name && !@name.nil?
872
- result[KEY_PARENT] = @parent unless @parent.nil?
873
- result[KEY_TYPE_PARAMETERS] = compressed_members_hash(@type_parameters) unless @type_parameters.empty?
874
- unless @attributes.empty?
875
- # Divide attributes into constants and others
876
- tc = TypeCalculator.singleton
877
- constants, others = @attributes.partition do |_, a|
878
- a.kind == ATTRIBUTE_KIND_CONSTANT && a.type == tc.infer(a.value).generalize
879
- end.map { |ha| Hash[ha] }
880
-
881
- result[KEY_ATTRIBUTES] = compressed_members_hash(others) unless others.empty?
882
- unless constants.empty?
883
- # { kind => 'constant', type => <type of value>, value => <value> } becomes just <value>
884
- constants.each_pair { |key, a| constants[key] = a.value }
885
- result[KEY_CONSTANTS] = constants
886
- end
887
- end
888
- result[KEY_FUNCTIONS] = compressed_members_hash(@functions) unless @functions.empty?
889
- result[KEY_EQUALITY] = @equality unless @equality.nil?
890
- result[KEY_CHECKS] = @checks unless @checks.nil?
891
- result
892
- end
893
-
894
- def eql?(o)
895
- self.class == o.class &&
896
- @name == o.name &&
897
- @parent == o.parent &&
898
- @type_parameters == o.type_parameters &&
899
- @attributes == o.attributes &&
900
- @functions == o.functions &&
901
- @equality == o.equality &&
902
- @checks == o.checks
903
- end
904
-
905
- def hash
906
- @name.nil? ? [@parent, @type_parameters, @attributes, @functions].hash : @name.hash
907
- end
908
-
909
- def kind_of_callable?(optional=true, guard = nil)
910
- @parent.nil? ? false : @parent.kind_of_callable?(optional, guard)
911
- end
912
-
913
- def iterable?(guard = nil)
914
- @parent.nil? ? false : @parent.iterable?(guard)
915
- end
916
-
917
- def iterable_type(guard = nil)
918
- @parent.nil? ? false : @parent.iterable_type(guard)
919
- end
920
-
921
- def parameterized?
922
- if @type_parameters.empty?
923
- @parent.is_a?(PObjectType) ? @parent.parameterized? : false
924
- else
925
- true
926
- end
927
- end
928
-
929
- # Returns the members (attributes and functions) of this `Object` type. If _include_parent_ is `true`, then all
930
- # inherited members will be included in the returned `Hash`.
931
- #
932
- # @param include_parent [Boolean] `true` if inherited members should be included
933
- # @return [Hash{String=>PAnnotatedMember}] a hash with the members
934
- # @api public
935
- def members(include_parent = false)
936
- get_members(include_parent, :both)
937
- end
938
-
939
- # Returns the attributes of this `Object` type. If _include_parent_ is `true`, then all
940
- # inherited attributes will be included in the returned `Hash`.
941
- #
942
- # @param include_parent [Boolean] `true` if inherited attributes should be included
943
- # @return [Hash{String=>PAttribute}] a hash with the attributes
944
- # @api public
945
- def attributes(include_parent = false)
946
- get_members(include_parent, :attributes)
947
- end
948
-
949
- # Returns the attributes that participate in equality comparison. Inherited equality attributes
950
- # are included.
951
- # @return [Hash{String=>PAttribute}] a hash of attributes
952
- # @api public
953
- def equality_attributes
954
- all = {}
955
- collect_equality_attributes(all)
956
- all
957
- end
958
-
959
- # @return [Boolean] `true` if this type is included when comparing instances
960
- # @api public
961
- def equality_include_type?
962
- @equality_include_type
963
- end
964
-
965
- # Returns the functions of this `Object` type. If _include_parent_ is `true`, then all
966
- # inherited functions will be included in the returned `Hash`.
967
- #
968
- # @param include_parent [Boolean] `true` if inherited functions should be included
969
- # @return [Hash{String=>PFunction}] a hash with the functions
970
- # @api public
971
- def functions(include_parent = false)
972
- get_members(include_parent, :functions)
973
- end
974
-
975
- DEFAULT = PObjectType.new(EMPTY_HASH)
976
- # Assert that this type does not inherit from itself
977
- # @api private
978
- def check_self_recursion(originator)
979
- unless @parent.nil?
980
- raise Puppet::Error, "The Object type '#{originator.label}' inherits from itself" if @parent.equal?(originator)
981
- @parent.check_self_recursion(originator)
982
- end
983
- end
984
-
985
- # @api private
986
- def label
987
- @name || 'Object'
988
- end
989
-
990
- # @api private
991
- def resolved_parent
992
- parent = @parent
993
- while parent.is_a?(PTypeAliasType)
994
- parent = parent.resolved_type
995
- end
996
- parent
997
- end
998
-
999
- def simple_name
1000
- label.split(DOUBLE_COLON).last
1001
- end
1002
-
1003
- # Returns the type_parameters of this `Object` type. If _include_parent_ is `true`, then all
1004
- # inherited type_parameters will be included in the returned `Hash`.
1005
- #
1006
- # @param include_parent [Boolean] `true` if inherited type_parameters should be included
1007
- # @return [Hash{String=>PTypeParameter}] a hash with the type_parameters
1008
- # @api public
1009
- def type_parameters(include_parent = false)
1010
- all = {}
1011
- collect_type_parameters(all, include_parent)
1012
- all
1013
- end
1014
-
1015
- protected
1016
-
1017
- # An Object type is only assignable from another Object type. The other type
1018
- # or one of its parents must be equal to this type.
1019
- def _assignable?(o, guard)
1020
- if o.is_a?(PObjectType)
1021
- if DEFAULT == self || self == o
1022
- true
1023
- else
1024
- op = o.parent
1025
- op.nil? ? false : assignable?(op, guard)
1026
- end
1027
- elsif o.is_a?(PObjectTypeExtension)
1028
- assignable?(o.base_type, guard)
1029
- else
1030
- false
1031
- end
1032
- end
1033
-
1034
- def get_members(include_parent, member_type)
1035
- all = {}
1036
- collect_members(all, include_parent, member_type)
1037
- all
1038
- end
1039
-
1040
- def collect_members(collector, include_parent, member_type)
1041
- if include_parent
1042
- parent = resolved_parent
1043
- parent.collect_members(collector, include_parent, member_type) if parent.is_a?(PObjectType)
1044
- end
1045
- collector.merge!(@attributes) unless member_type == :functions
1046
- collector.merge!(@functions) unless member_type == :attributes
1047
- nil
1048
- end
1049
-
1050
- def collect_equality_attributes(collector)
1051
- parent = resolved_parent
1052
- parent.collect_equality_attributes(collector) if parent.is_a?(PObjectType)
1053
- if @equality.nil?
1054
- # All attributes except constants participate
1055
- collector.merge!(@attributes.reject { |_, attr| attr.kind == ATTRIBUTE_KIND_CONSTANT })
1056
- else
1057
- collector.merge!(Hash[@equality.map { |attr_name| [attr_name, @attributes[attr_name]] }])
1058
- end
1059
- nil
1060
- end
1061
-
1062
- def collect_type_parameters(collector, include_parent)
1063
- if include_parent
1064
- parent = resolved_parent
1065
- parent.collect_type_parameters(collector, include_parent) if parent.is_a?(PObjectType)
1066
- end
1067
- collector.merge!(@type_parameters)
1068
- nil
1069
- end
1070
-
1071
- private
1072
-
1073
- def compressed_members_hash(features)
1074
- Hash[features.values.map do |feature|
1075
- fh = feature._pcore_init_hash
1076
- if fh.size == 1
1077
- type = fh[KEY_TYPE]
1078
- fh = type unless type.nil?
1079
- end
1080
- [feature.name, fh]
1081
- end]
1082
- end
1083
-
1084
- # @return [PObjectType] the topmost parent who's #equality_attributes include the given _attr_
1085
- def find_equality_definer_of(attr)
1086
- type = self
1087
- while !type.nil? do
1088
- p = type.resolved_parent
1089
- return type unless p.is_a?(PObjectType)
1090
- return type unless p.equality_attributes.include?(attr.name)
1091
- type = p
1092
- end
1093
- nil
1094
- end
1095
-
1096
- def guarded_recursion(guard, dflt)
1097
- if @self_recursion
1098
- guard ||= RecursionGuard.new
1099
- guard.with_this(self) { |state| (state & RecursionGuard::SELF_RECURSION_IN_THIS) == 0 ? yield(guard) : dflt }
1100
- else
1101
- yield(guard)
1102
- end
1103
- end
1104
-
1105
- def reader
1106
- @reader ||= Serialization::ObjectReader::INSTANCE
1107
- end
1108
-
1109
- def writer
1110
- @writer ||= Serialization::ObjectWriter::INSTANCE
1111
- end
1112
- end
1113
- end
1114
- end