pangea-core 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1124) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/auto-bump.yml +11 -0
  3. data/.github/workflows/ci.yml +7 -0
  4. data/.github/workflows/release.yml +22 -0
  5. data/.gitignore +1 -0
  6. data/AGENTS.md +3 -0
  7. data/CLAUDE.md +554 -0
  8. data/Gemfile.lock +3 -3
  9. data/README.md +40 -0
  10. data/docs/development-standards.md +287 -0
  11. data/docs/fleet-pangea-integration-plan.md +421 -0
  12. data/exe/pangea +7 -0
  13. data/flake.lock +1499 -190
  14. data/flake.nix +12 -42
  15. data/gemset.nix +1 -1
  16. data/lib/pangea/arch_dsl.rb +167 -0
  17. data/lib/pangea/architecture.rb +143 -0
  18. data/lib/pangea/backend.rb +172 -0
  19. data/lib/pangea/cli/cascade.rb +340 -0
  20. data/lib/pangea/cli/config.rb +169 -0
  21. data/lib/pangea/cli/operations.rb +206 -0
  22. data/lib/pangea/cli/orchestrate.rb +115 -0
  23. data/lib/pangea/cli/reactivity.rb +252 -0
  24. data/lib/pangea/cli/synthesizer.rb +121 -0
  25. data/lib/pangea/cli/theme.rb +216 -0
  26. data/lib/pangea/cli/tofu_events.rb +242 -0
  27. data/lib/pangea/cli.rb +209 -0
  28. data/lib/pangea/component_registry.rb +44 -0
  29. data/lib/pangea/components/base.rb +73 -0
  30. data/lib/pangea/contracts/architecture_result.rb +106 -0
  31. data/lib/pangea/contracts/cluster_result.rb +94 -0
  32. data/lib/pangea/contracts/errors.rb +21 -0
  33. data/lib/pangea/contracts/iam_result.rb +73 -0
  34. data/lib/pangea/contracts/network_result.rb +140 -0
  35. data/lib/pangea/contracts/security_group_accessor.rb +28 -0
  36. data/lib/pangea/contracts.rb +26 -0
  37. data/lib/pangea/entities/module_definition.rb +120 -0
  38. data/lib/pangea/entities/namespace.rb +144 -0
  39. data/lib/pangea/entities/project.rb +84 -0
  40. data/lib/pangea/entities/template.rb +103 -0
  41. data/lib/pangea/entities.rb +26 -0
  42. data/lib/pangea/errors.rb +124 -0
  43. data/lib/pangea/logging/formatters.rb +90 -0
  44. data/lib/pangea/logging/structured_logger.rb +186 -0
  45. data/lib/pangea/logging.rb +22 -0
  46. data/lib/pangea/magma/chain.rb +199 -0
  47. data/lib/pangea/magma/distribution.rb +107 -0
  48. data/lib/pangea/magma/matchers.rb +176 -0
  49. data/lib/pangea/magma/migration.rb +195 -0
  50. data/lib/pangea/magma/optimization.rb +88 -0
  51. data/lib/pangea/magma/orchestrator.rb +96 -0
  52. data/lib/pangea/magma/runner.rb +99 -0
  53. data/lib/pangea/magma/stack.rb +159 -0
  54. data/lib/pangea/magma/test_support.rb +177 -0
  55. data/lib/pangea/magma/workspace.rb +127 -0
  56. data/lib/pangea/magma.rb +156 -0
  57. data/lib/pangea/outputs.rb +91 -0
  58. data/lib/pangea/presets.rb +67 -0
  59. data/lib/pangea/provider_contract.rb +61 -0
  60. data/lib/pangea/remote_state.rb +175 -0
  61. data/lib/pangea/resource_registry.rb +24 -15
  62. data/lib/pangea/resources/base_attributes.rb +24 -1
  63. data/lib/pangea/resources/builders/output_builder.rb +113 -0
  64. data/lib/pangea/resources/reference.rb +9 -4
  65. data/lib/pangea/resources/reference_generator.rb +32 -0
  66. data/lib/pangea/resources/resource_builder.rb +144 -0
  67. data/lib/pangea/resources/resource_input.rb +149 -0
  68. data/lib/pangea/resources/types/coercions.rb +43 -0
  69. data/lib/pangea/resources/types/core.rb +23 -0
  70. data/lib/pangea/resources/types/index.rb +3 -0
  71. data/lib/pangea/resources/validators/common.rb +41 -0
  72. data/lib/pangea/resources/validators/format_validators.rb +58 -0
  73. data/lib/pangea/resources/validators/network_validators.rb +81 -0
  74. data/lib/pangea/secrets.rb +136 -0
  75. data/lib/pangea/tagging/fingerprint.rb +116 -0
  76. data/lib/pangea/tagging/policy.rb +92 -0
  77. data/lib/pangea/tagging/tag_adapter.rb +84 -0
  78. data/lib/pangea/tagging/tag_set.rb +201 -0
  79. data/lib/pangea/tagging.rb +6 -0
  80. data/lib/pangea/testing/architecture_spec_generator.rb +237 -0
  81. data/lib/pangea/testing/assertions.rb +51 -0
  82. data/lib/pangea/testing/indifferent_hash.rb +69 -0
  83. data/lib/pangea/testing/mock_resource_reference.rb +70 -0
  84. data/lib/pangea/testing/mock_terraform_synthesizer.rb +75 -0
  85. data/lib/pangea/testing/resource_examples.rb +53 -0
  86. data/lib/pangea/testing/spec_generator.rb +176 -0
  87. data/lib/pangea/testing/spec_setup.rb +61 -0
  88. data/lib/pangea/testing/synthesis_test_helpers.rb +171 -0
  89. data/lib/pangea/testing/type_purity.rb +132 -0
  90. data/lib/pangea/testing.rb +25 -0
  91. data/lib/pangea/types/base_types.rb +53 -0
  92. data/lib/pangea/types/domain_types.rb +114 -0
  93. data/lib/pangea/types/registry.rb +70 -0
  94. data/lib/pangea/validation.rb +137 -0
  95. data/lib/pangea-core/version.rb +1 -1
  96. data/lib/pangea-core.rb +57 -1
  97. data/pangea-core.gemspec +4 -2
  98. data/vendor/bundle/ruby/3.3.0/bin/htmldiff +29 -0
  99. data/vendor/bundle/ruby/3.3.0/bin/ldiff +29 -0
  100. data/vendor/bundle/ruby/3.3.0/bin/pangea +29 -0
  101. data/vendor/bundle/ruby/3.3.0/bin/rake +29 -0
  102. data/vendor/bundle/ruby/3.3.0/bin/rspec +29 -0
  103. data/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-25/3.3.0/bigdecimal-4.0.1/bigdecimal.bundle +0 -0
  104. data/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-25/3.3.0/bigdecimal-4.0.1/gem.build_complete +0 -0
  105. data/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-25/3.3.0/bigdecimal-4.0.1/gem_make.out +33 -0
  106. data/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-25/3.3.0/bigdecimal-4.0.1/mkmf.log +453 -0
  107. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/.gitignore +17 -0
  108. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/.nix_shell_env.sh +2134 -0
  109. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/.rubocop.yml +54 -0
  110. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/CHANGELOG.md +40 -0
  111. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/CONTRIBUTING.md +114 -0
  112. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/Gemfile +2 -0
  113. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/Gemfile.lock +66 -0
  114. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/LICENSE +21 -0
  115. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/README.md +621 -0
  116. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/Rakefile +11 -0
  117. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/abstract-synthesizer.gemspec +28 -0
  118. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/docs/overview.md +69 -0
  119. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/docs/usage.md +468 -0
  120. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/examples/README.md +230 -0
  121. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/examples/api/rest_api_dsl.rb +269 -0
  122. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/examples/build_system/ci_cd_pipeline.rb +443 -0
  123. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/examples/configuration_management/app_config_dsl.rb +437 -0
  124. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/examples/infrastructure/kubernetes_deployment.rb +152 -0
  125. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/flake.lock +835 -0
  126. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/flake.nix +62 -0
  127. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/gemset.nix +239 -0
  128. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/lib/abstract-synthesizer/errors/invalid_synthesizer_key_error.rb +3 -0
  129. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/lib/abstract-synthesizer/errors/too_many_field_values.rb +1 -0
  130. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/lib/abstract-synthesizer/primitives/bury.rb +21 -0
  131. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/lib/abstract-synthesizer/version.rb +3 -0
  132. data/vendor/bundle/ruby/3.3.0/gems/abstract-synthesizer-0.0.15/lib/abstract-synthesizer.rb +121 -0
  133. data/vendor/bundle/ruby/3.3.0/gems/base64-0.3.0/BSDL +22 -0
  134. data/vendor/bundle/ruby/3.3.0/gems/base64-0.3.0/COPYING +56 -0
  135. data/vendor/bundle/ruby/3.3.0/gems/base64-0.3.0/LEGAL +60 -0
  136. data/vendor/bundle/ruby/3.3.0/gems/base64-0.3.0/README.md +48 -0
  137. data/vendor/bundle/ruby/3.3.0/gems/base64-0.3.0/lib/base64.rb +381 -0
  138. data/vendor/bundle/ruby/3.3.0/gems/base64-0.3.0/sig/base64.rbs +355 -0
  139. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/LICENSE +56 -0
  140. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/bigdecimal.gemspec +57 -0
  141. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/.sitearchdir.time +0 -0
  142. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/Makefile +271 -0
  143. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/bigdecimal.bundle +0 -0
  144. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/bigdecimal.c +6206 -0
  145. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/bigdecimal.h +292 -0
  146. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/bigdecimal.o +0 -0
  147. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/bits.h +144 -0
  148. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/extconf.rb +60 -0
  149. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/feature.h +68 -0
  150. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/missing/dtoa.c +3462 -0
  151. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/missing.c +28 -0
  152. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/missing.h +104 -0
  153. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/missing.o +0 -0
  154. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/ext/bigdecimal/static_assert.h +54 -0
  155. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/lib/bigdecimal/jacobian.rb +92 -0
  156. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/lib/bigdecimal/ludcmp.rb +91 -0
  157. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/lib/bigdecimal/math.rb +948 -0
  158. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/lib/bigdecimal/newton.rb +82 -0
  159. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/lib/bigdecimal/util.rb +186 -0
  160. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/lib/bigdecimal.bundle +0 -0
  161. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/lib/bigdecimal.rb +360 -0
  162. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/sample/linear.rb +74 -0
  163. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/sample/nlsolve.rb +40 -0
  164. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-4.0.1/sample/pi.rb +21 -0
  165. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/CHANGELOG.md +609 -0
  166. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/Gemfile +36 -0
  167. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/LICENSE.txt +21 -0
  168. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/README.md +409 -0
  169. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/Rakefile +344 -0
  170. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/ConcurrentRubyService.java +17 -0
  171. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/AtomicReferenceLibrary.java +175 -0
  172. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/JRubyMapBackendLibrary.java +248 -0
  173. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/JavaAtomicBooleanLibrary.java +93 -0
  174. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/JavaAtomicFixnumLibrary.java +113 -0
  175. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/JavaSemaphoreLibrary.java +189 -0
  176. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/SynchronizationLibrary.java +292 -0
  177. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166e/ConcurrentHashMap.java +31 -0
  178. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166e/ConcurrentHashMapV8.java +3863 -0
  179. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166e/LongAdder.java +203 -0
  180. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166e/Striped64.java +342 -0
  181. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166e/nounsafe/ConcurrentHashMapV8.java +3800 -0
  182. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166e/nounsafe/LongAdder.java +204 -0
  183. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166e/nounsafe/Striped64.java +291 -0
  184. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/ext/concurrent-ruby/com/concurrent_ruby/ext/jsr166y/ThreadLocalRandom.java +199 -0
  185. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/agent.rb +588 -0
  186. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/array.rb +56 -0
  187. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/async.rb +449 -0
  188. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atom.rb +222 -0
  189. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb +127 -0
  190. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb +144 -0
  191. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb +167 -0
  192. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb +135 -0
  193. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/count_down_latch.rb +100 -0
  194. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb +128 -0
  195. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/event.rb +109 -0
  196. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/fiber_local_var.rb +109 -0
  197. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/java_count_down_latch.rb +43 -0
  198. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/locals.rb +189 -0
  199. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/lock_local_var.rb +29 -0
  200. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb +68 -0
  201. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb +81 -0
  202. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb +44 -0
  203. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb +131 -0
  204. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb +255 -0
  205. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb +379 -0
  206. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/semaphore.rb +163 -0
  207. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic/thread_local_var.rb +111 -0
  208. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic_reference/atomic_direct_update.rb +37 -0
  209. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb +67 -0
  210. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb +28 -0
  211. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/atomics.rb +10 -0
  212. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb +107 -0
  213. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb +111 -0
  214. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/java_non_concurrent_priority_queue.rb +84 -0
  215. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb +160 -0
  216. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb +66 -0
  217. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb +148 -0
  218. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb +85 -0
  219. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/map/truffleruby_map_backend.rb +14 -0
  220. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb +143 -0
  221. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb +160 -0
  222. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/ruby_timeout_queue.rb +55 -0
  223. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/collection/timeout_queue.rb +18 -0
  224. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/concern/deprecation.rb +34 -0
  225. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb +73 -0
  226. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/concern/logging.rb +121 -0
  227. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/concern/obligation.rb +220 -0
  228. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/concern/observable.rb +110 -0
  229. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/concurrent_ruby.jar +0 -0
  230. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/configuration.rb +105 -0
  231. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/constants.rb +8 -0
  232. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/dataflow.rb +81 -0
  233. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/delay.rb +199 -0
  234. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/errors.rb +74 -0
  235. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/exchanger.rb +353 -0
  236. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb +131 -0
  237. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb +62 -0
  238. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/executor_service.rb +185 -0
  239. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb +222 -0
  240. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb +66 -0
  241. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb +44 -0
  242. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/java_executor_service.rb +101 -0
  243. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/java_single_thread_executor.rb +30 -0
  244. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/java_thread_pool_executor.rb +147 -0
  245. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb +82 -0
  246. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/ruby_single_thread_executor.rb +23 -0
  247. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb +396 -0
  248. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb +35 -0
  249. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb +34 -0
  250. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb +107 -0
  251. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb +28 -0
  252. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb +103 -0
  253. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/single_thread_executor.rb +57 -0
  254. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb +88 -0
  255. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executor/timer_set.rb +179 -0
  256. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/executors.rb +19 -0
  257. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/future.rb +141 -0
  258. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/hash.rb +52 -0
  259. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/immutable_struct.rb +101 -0
  260. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/ivar.rb +208 -0
  261. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/map.rb +350 -0
  262. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/maybe.rb +229 -0
  263. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/mutable_struct.rb +239 -0
  264. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/mvar.rb +242 -0
  265. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/options.rb +42 -0
  266. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/promise.rb +580 -0
  267. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/promises.rb +2178 -0
  268. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/re_include.rb +60 -0
  269. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/scheduled_task.rb +331 -0
  270. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/set.rb +64 -0
  271. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/settable_struct.rb +139 -0
  272. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb +102 -0
  273. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb +22 -0
  274. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb +171 -0
  275. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/condition.rb +62 -0
  276. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/full_memory_barrier.rb +29 -0
  277. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/jruby_lockable_object.rb +15 -0
  278. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/lock.rb +38 -0
  279. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/lockable_object.rb +75 -0
  280. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb +89 -0
  281. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/object.rb +151 -0
  282. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/safe_initialization.rb +36 -0
  283. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization/volatile.rb +101 -0
  284. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/synchronization.rb +13 -0
  285. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb +47 -0
  286. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/util/adder.rb +74 -0
  287. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb +52 -0
  288. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/util/power_of_two_tuple.rb +38 -0
  289. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/util/striped64.rb +246 -0
  290. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/util/volatile.rb +75 -0
  291. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/util/xor_shift_random.rb +50 -0
  292. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/thread_safe/util.rb +16 -0
  293. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/timer_task.rb +366 -0
  294. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/tuple.rb +82 -0
  295. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/tvar.rb +222 -0
  296. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/utility/engine.rb +45 -0
  297. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/utility/monotonic_time.rb +19 -0
  298. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb +77 -0
  299. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/utility/native_integer.rb +54 -0
  300. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/utility/processor_counter.rb +220 -0
  301. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent/version.rb +3 -0
  302. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent-ruby.rb +5 -0
  303. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.6/lib/concurrent-ruby/concurrent.rb +134 -0
  304. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/.rspec +1 -0
  305. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/CHANGELOG.md +518 -0
  306. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/CODE_OF_CONDUCT.md +128 -0
  307. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/CONTRIBUTING.md +71 -0
  308. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/CONTRIBUTORS.md +49 -0
  309. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/LICENCE.md +40 -0
  310. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/Manifest.txt +115 -0
  311. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/README.md +92 -0
  312. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/Rakefile +115 -0
  313. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/SECURITY.md +41 -0
  314. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/bin/htmldiff +35 -0
  315. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/bin/ldiff +9 -0
  316. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/docs/COPYING.txt +339 -0
  317. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/docs/artistic.txt +127 -0
  318. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/array.rb +7 -0
  319. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/backports.rb +13 -0
  320. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/block.rb +37 -0
  321. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/callbacks.rb +327 -0
  322. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/change.rb +174 -0
  323. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/htmldiff.rb +160 -0
  324. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/hunk.rb +379 -0
  325. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/internals.rb +308 -0
  326. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/ldiff.rb +189 -0
  327. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/string.rb +5 -0
  328. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs/version.rb +7 -0
  329. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff/lcs.rb +742 -0
  330. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/lib/diff-lcs.rb +3 -0
  331. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/mise.toml +5 -0
  332. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/change_spec.rb +89 -0
  333. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/diff_spec.rb +51 -0
  334. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/123_x +2 -0
  335. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/456_x +2 -0
  336. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/aX +1 -0
  337. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/bXaX +1 -0
  338. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ds1.csv +50 -0
  339. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ds2.csv +51 -0
  340. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/empty +0 -0
  341. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/file1.bin +0 -0
  342. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/file2.bin +0 -0
  343. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/four_lines +4 -0
  344. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/four_lines_with_missing_new_line +4 -0
  345. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line1-e +1 -0
  346. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line1-f +1 -0
  347. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line2-e +1 -0
  348. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/diff.missing_new_line2-f +1 -0
  349. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.chef-e +2 -0
  350. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.chef-f +2 -0
  351. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line1-e +1 -0
  352. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line1-f +1 -0
  353. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line2-e +1 -0
  354. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/error.diff.missing_new_line2-f +1 -0
  355. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff +4 -0
  356. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-c +7 -0
  357. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-e +3 -0
  358. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-f +3 -0
  359. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff-u +5 -0
  360. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1 +0 -0
  361. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-c +0 -0
  362. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-e +0 -0
  363. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-f +0 -0
  364. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin1-u +0 -0
  365. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2 +1 -0
  366. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-c +1 -0
  367. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-e +1 -0
  368. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-f +1 -0
  369. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.bin2-u +1 -0
  370. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef +4 -0
  371. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-c +15 -0
  372. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-e +3 -0
  373. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-f +3 -0
  374. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef-u +9 -0
  375. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2 +7 -0
  376. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-c +20 -0
  377. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-d +7 -0
  378. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-e +7 -0
  379. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-f +7 -0
  380. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.chef2-u +16 -0
  381. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines +5 -0
  382. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-c +9 -0
  383. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-e +6 -0
  384. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-f +6 -0
  385. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.empty.vs.four_lines-u +7 -0
  386. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty +5 -0
  387. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-c +9 -0
  388. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-e +1 -0
  389. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-f +1 -0
  390. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.four_lines.vs.empty-u +7 -0
  391. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context +4 -0
  392. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-c +9 -0
  393. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-e +3 -0
  394. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-f +3 -0
  395. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.issue95_trailing_context-u +6 -0
  396. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1 +5 -0
  397. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-c +14 -0
  398. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-e +0 -0
  399. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-f +0 -0
  400. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line1-u +9 -0
  401. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2 +5 -0
  402. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-c +14 -0
  403. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-e +0 -0
  404. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-f +0 -0
  405. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/ldiff/output.diff.missing_new_line2-u +9 -0
  406. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/new-chef +4 -0
  407. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/new-chef2 +17 -0
  408. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/old-chef +4 -0
  409. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/fixtures/old-chef2 +14 -0
  410. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/hunk_spec.rb +83 -0
  411. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/issues_spec.rb +160 -0
  412. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/lcs_spec.rb +56 -0
  413. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/ldiff_spec.rb +100 -0
  414. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/patch_spec.rb +416 -0
  415. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/sdiff_spec.rb +216 -0
  416. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/spec_helper.rb +376 -0
  417. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/traverse_balanced_spec.rb +312 -0
  418. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.6.2/spec/traverse_sequences_spec.rb +137 -0
  419. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/.github/dependabot.yml +15 -0
  420. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/.github/workflows/main.yml +42 -0
  421. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/.gitignore +11 -0
  422. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/.rspec +2 -0
  423. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/.rubocop.yml +5 -0
  424. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/.yardopts +7 -0
  425. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/Gemfile +26 -0
  426. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/HISTORY.md +134 -0
  427. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/LICENSE +21 -0
  428. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/README.md +409 -0
  429. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/Rakefile +14 -0
  430. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/SECURITY.md +19 -0
  431. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/docile.gemspec +36 -0
  432. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/lib/docile/backtrace_filter.rb +24 -0
  433. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/lib/docile/chaining_fallback_context_proxy.rb +27 -0
  434. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/lib/docile/execution.rb +53 -0
  435. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/lib/docile/fallback_context_proxy.rb +107 -0
  436. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/lib/docile/version.rb +6 -0
  437. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/lib/docile.rb +134 -0
  438. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/CHANGELOG.md +351 -0
  439. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/LICENSE +21 -0
  440. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/README.md +17 -0
  441. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/dry-core.gemspec +41 -0
  442. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/basic_object.rb +143 -0
  443. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/cache.rb +69 -0
  444. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/class_attributes.rb +103 -0
  445. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/class_builder.rb +103 -0
  446. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/constants.rb +115 -0
  447. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/config.rb +34 -0
  448. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/configuration.rb +37 -0
  449. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/item/callable.rb +22 -0
  450. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/item/factory.rb +29 -0
  451. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/item/memoizable.rb +49 -0
  452. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/item.rb +56 -0
  453. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/mixin.rb +311 -0
  454. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/namespace.rb +47 -0
  455. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/namespace_dsl.rb +63 -0
  456. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/registry.rb +52 -0
  457. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/resolver.rb +90 -0
  458. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container/stub.rb +57 -0
  459. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/container.rb +27 -0
  460. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/deprecations.rb +237 -0
  461. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/descendants_tracker.rb +78 -0
  462. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/equalizer.rb +156 -0
  463. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/errors.rb +13 -0
  464. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/extensions.rb +61 -0
  465. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/inflector.rb +143 -0
  466. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/memoizable.rb +235 -0
  467. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core/version.rb +7 -0
  468. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry/core.rb +56 -0
  469. data/vendor/bundle/ruby/3.3.0/gems/dry-core-1.2.0/lib/dry-core.rb +3 -0
  470. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/CHANGELOG.md +153 -0
  471. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/LICENSE +20 -0
  472. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/README.md +17 -0
  473. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/dry-inflector.gemspec +38 -0
  474. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/lib/dry/inflector/acronyms.rb +42 -0
  475. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/lib/dry/inflector/inflections/defaults.rb +129 -0
  476. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/lib/dry/inflector/inflections.rb +259 -0
  477. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/lib/dry/inflector/rules.rb +34 -0
  478. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/lib/dry/inflector/version.rb +8 -0
  479. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/lib/dry/inflector.rb +343 -0
  480. data/vendor/bundle/ruby/3.3.0/gems/dry-inflector-1.3.1/lib/dry-inflector.rb +3 -0
  481. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/CHANGELOG.md +375 -0
  482. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/LICENSE +20 -0
  483. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/README.md +22 -0
  484. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/dry-logic.gemspec +37 -0
  485. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/appliable.rb +35 -0
  486. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/builder.rb +88 -0
  487. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/evaluator.rb +48 -0
  488. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/abstract.rb +42 -0
  489. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/and.rb +44 -0
  490. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/attr.rb +17 -0
  491. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/binary.rb +27 -0
  492. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/check.rb +50 -0
  493. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/each.rb +31 -0
  494. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/implication.rb +36 -0
  495. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/key.rb +64 -0
  496. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/negation.rb +21 -0
  497. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/or.rb +34 -0
  498. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/set.rb +34 -0
  499. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/unary.rb +24 -0
  500. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operations/xor.rb +26 -0
  501. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/operators.rb +27 -0
  502. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/predicates.rb +233 -0
  503. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/result.rb +96 -0
  504. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/rule/interface.rb +137 -0
  505. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/rule/predicate.rb +34 -0
  506. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/rule.rb +98 -0
  507. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/rule_compiler.rb +81 -0
  508. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic/version.rb +7 -0
  509. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry/logic.rb +25 -0
  510. data/vendor/bundle/ruby/3.3.0/gems/dry-logic-1.6.0/lib/dry-logic.rb +3 -0
  511. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/CHANGELOG.md +482 -0
  512. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/LICENSE +20 -0
  513. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/README.md +22 -0
  514. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/dry-struct.gemspec +37 -0
  515. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/class_interface.rb +471 -0
  516. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/compiler.rb +19 -0
  517. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/constructor.rb +9 -0
  518. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/errors.rb +32 -0
  519. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/extensions/pretty_print.rb +22 -0
  520. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/extensions/super_diff.rb +10 -0
  521. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/extensions.rb +9 -0
  522. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/hashify.rb +23 -0
  523. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/printer.rb +23 -0
  524. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/struct_builder.rb +102 -0
  525. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/sum.rb +51 -0
  526. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/value.rb +37 -0
  527. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct/version.rb +8 -0
  528. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry/struct.rb +230 -0
  529. data/vendor/bundle/ruby/3.3.0/gems/dry-struct-1.8.0/lib/dry-struct.rb +3 -0
  530. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/CHANGELOG.md +1145 -0
  531. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/LICENSE +20 -0
  532. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/README.md +17 -0
  533. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/dry-types.gemspec +45 -0
  534. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/any.rb +41 -0
  535. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/array/constructor.rb +24 -0
  536. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/array/member.rb +118 -0
  537. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/array.rb +32 -0
  538. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/builder.rb +221 -0
  539. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/builder_methods.rb +138 -0
  540. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/coercions/json.rb +57 -0
  541. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/coercions/params.rb +168 -0
  542. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/coercions.rb +105 -0
  543. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/compat.rb +1 -0
  544. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/compiler.rb +138 -0
  545. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/composition.rb +138 -0
  546. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/constrained/coercible.rb +59 -0
  547. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/constrained.rb +146 -0
  548. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/constraints.rb +30 -0
  549. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/constructor/function.rb +203 -0
  550. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/constructor/wrapper.rb +88 -0
  551. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/constructor.rb +195 -0
  552. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/container.rb +12 -0
  553. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/core.rb +106 -0
  554. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/decorator.rb +94 -0
  555. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/default.rb +122 -0
  556. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/enum.rb +121 -0
  557. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/errors.rb +138 -0
  558. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/extensions/maybe.rb +128 -0
  559. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/extensions/monads.rb +34 -0
  560. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/extensions.rb +9 -0
  561. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/fn_container.rb +37 -0
  562. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/hash/constructor.rb +25 -0
  563. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/hash.rb +134 -0
  564. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/implication.rb +64 -0
  565. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/inflector.rb +9 -0
  566. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/intersection.rb +102 -0
  567. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/json.rb +35 -0
  568. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/lax.rb +66 -0
  569. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/map.rb +134 -0
  570. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/meta.rb +53 -0
  571. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/module.rb +127 -0
  572. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/nominal.rb +201 -0
  573. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/options.rb +34 -0
  574. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/params.rb +38 -0
  575. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/predicate_inferrer.rb +235 -0
  576. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/predicate_registry.rb +32 -0
  577. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/primitive_inferrer.rb +75 -0
  578. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/printable.rb +14 -0
  579. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/printer/composition.rb +44 -0
  580. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/printer.rb +313 -0
  581. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/result.rb +72 -0
  582. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/schema/key.rb +138 -0
  583. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/schema.rb +408 -0
  584. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/spec/types.rb +164 -0
  585. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/sum.rb +105 -0
  586. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/type.rb +53 -0
  587. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types/version.rb +7 -0
  588. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry/types.rb +259 -0
  589. data/vendor/bundle/ruby/3.3.0/gems/dry-types-1.9.1/lib/dry-types.rb +3 -0
  590. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/.gitignore +37 -0
  591. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/.pelusa.yml +9 -0
  592. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/.rspec +5 -0
  593. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/.rubocop.yml +8 -0
  594. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/.ruby-gemset +1 -0
  595. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/.travis.yml +27 -0
  596. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/.yardopts +1 -0
  597. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/CONTRIBUTING.md +11 -0
  598. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/Gemfile +14 -0
  599. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/Gemfile.devtools +72 -0
  600. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/Guardfile +24 -0
  601. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/LICENSE +20 -0
  602. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/README.md +51 -0
  603. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/Rakefile +13 -0
  604. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/TODO +7 -0
  605. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/benchmarks/speed.rb +34 -0
  606. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/devtools.yml +2 -0
  607. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/flay.yml +3 -0
  608. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/flog.yml +2 -0
  609. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/mutant.yml +4 -0
  610. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/reek.yml +105 -0
  611. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/roodi.yml +16 -0
  612. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/rubocop.yml +114 -0
  613. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/config/yardstick.yml +2 -0
  614. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/ice_nine.gemspec +21 -0
  615. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/core_ext/object.rb +42 -0
  616. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/array.rb +28 -0
  617. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/false_class.rb +10 -0
  618. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/hash/state.rb +12 -0
  619. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/hash.rb +46 -0
  620. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/module.rb +10 -0
  621. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/nil_class.rb +10 -0
  622. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/no_freeze.rb +25 -0
  623. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/numeric.rb +10 -0
  624. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/object.rb +49 -0
  625. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/range.rb +29 -0
  626. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/rubinius.rb +10 -0
  627. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/struct.rb +10 -0
  628. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/symbol.rb +10 -0
  629. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer/true_class.rb +10 -0
  630. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/freezer.rb +109 -0
  631. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/support/recursion_guard.rb +57 -0
  632. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine/version.rb +8 -0
  633. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/lib/ice_nine.rb +62 -0
  634. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/integration/ice_nine/class_methods/deep_freeze_bang_spec.rb +21 -0
  635. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/integration/ice_nine/class_methods/deep_freeze_spec.rb +21 -0
  636. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/shared/array_deep_freeze.rb +9 -0
  637. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/shared/hash_deep_freeze.rb +23 -0
  638. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/shared/ice_nine_deep_freeze.rb +262 -0
  639. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/shared/no_freeze_deep_freeze.rb +21 -0
  640. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/shared/object_deep_freeze.rb +19 -0
  641. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/shared/range_deep_freeze.rb +13 -0
  642. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/spec_helper.rb +28 -0
  643. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/support/config_alias.rb +5 -0
  644. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/class_methods/deep_freeze_bang_spec.rb +24 -0
  645. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/class_methods/deep_freeze_spec.rb +34 -0
  646. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/core_ext/object/deep_freeze_bang_spec.rb +24 -0
  647. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/core_ext/object/deep_freeze_spec.rb +13 -0
  648. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/array/class_methods/deep_freeze_spec.rb +24 -0
  649. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/class_methods/element_reader_spec.rb +138 -0
  650. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/false_class/class_methods/deep_freeze_spec.rb +18 -0
  651. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/hash/class_methods/deep_freeze_spec.rb +64 -0
  652. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/module/class_methods/deep_freeze_spec.rb +18 -0
  653. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/nil_class/class_methods/deep_freeze_spec.rb +18 -0
  654. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/no_freeze/class_methods/deep_freeze_spec.rb +13 -0
  655. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/numeric/class_methods/deep_freeze_spec.rb +21 -0
  656. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/object/class_methods/deep_freeze_spec.rb +40 -0
  657. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/range/class_methods/deep_freeze_spec.rb +55 -0
  658. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/struct/class_methods/deep_freeze_spec.rb +17 -0
  659. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/symbol/class_methods/deep_freeze_spec.rb +18 -0
  660. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/freezer/true_class/class_methods/deep_freeze_spec.rb +19 -0
  661. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/recursion_guard/frozen/guard_spec.rb +28 -0
  662. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/ice_nine/recursion_guard/object_set/guard_spec.rb +31 -0
  663. data/vendor/bundle/ruby/3.3.0/gems/ice_nine-0.11.2/spec/unit/object/deep_freeze_spec.rb +13 -0
  664. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/.document +4 -0
  665. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/.rdoc_options +3 -0
  666. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/BSDL +22 -0
  667. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/COPYING +56 -0
  668. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/README.md +104 -0
  669. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/lib/logger/errors.rb +9 -0
  670. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/lib/logger/formatter.rb +36 -0
  671. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/lib/logger/log_device.rb +265 -0
  672. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/lib/logger/period.rb +47 -0
  673. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/lib/logger/severity.rb +38 -0
  674. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/lib/logger/version.rb +5 -0
  675. data/vendor/bundle/ruby/3.3.0/gems/logger-1.7.0/lib/logger.rb +789 -0
  676. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/History.rdoc +2454 -0
  677. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/MIT-LICENSE +21 -0
  678. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/README.rdoc +155 -0
  679. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/command_line_usage.rdoc +171 -0
  680. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/example/Rakefile1 +38 -0
  681. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/example/Rakefile2 +35 -0
  682. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/example/a.c +6 -0
  683. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/example/b.c +6 -0
  684. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/example/main.c +11 -0
  685. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/glossary.rdoc +42 -0
  686. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/jamis.rb +592 -0
  687. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/proto_rake.rdoc +127 -0
  688. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/rake.1 +156 -0
  689. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/rakefile.rdoc +622 -0
  690. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/doc/rational.rdoc +151 -0
  691. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/exe/rake +27 -0
  692. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/application.rb +854 -0
  693. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/backtrace.rb +25 -0
  694. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/clean.rb +78 -0
  695. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/cloneable.rb +17 -0
  696. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/cpu_counter.rb +122 -0
  697. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/default_loader.rb +15 -0
  698. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/dsl_definition.rb +196 -0
  699. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/early_time.rb +22 -0
  700. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/ext/core.rb +26 -0
  701. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/ext/string.rb +176 -0
  702. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/file_creation_task.rb +25 -0
  703. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/file_list.rb +435 -0
  704. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/file_task.rb +58 -0
  705. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/file_utils.rb +132 -0
  706. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/file_utils_ext.rb +134 -0
  707. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/invocation_chain.rb +57 -0
  708. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/invocation_exception_mixin.rb +17 -0
  709. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/late_time.rb +18 -0
  710. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/linked_list.rb +112 -0
  711. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/loaders/makefile.rb +54 -0
  712. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/multi_task.rb +14 -0
  713. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/name_space.rb +38 -0
  714. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/packagetask.rb +222 -0
  715. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/phony.rb +16 -0
  716. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/private_reader.rb +21 -0
  717. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/promise.rb +100 -0
  718. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/pseudo_status.rb +30 -0
  719. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/rake_module.rb +67 -0
  720. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/rake_test_loader.rb +27 -0
  721. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/rule_recursion_overflow_error.rb +20 -0
  722. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/scope.rb +43 -0
  723. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/task.rb +434 -0
  724. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/task_argument_error.rb +8 -0
  725. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/task_arguments.rb +113 -0
  726. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/task_manager.rb +331 -0
  727. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/tasklib.rb +12 -0
  728. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/testtask.rb +189 -0
  729. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/thread_history_display.rb +49 -0
  730. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/thread_pool.rb +157 -0
  731. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/trace_output.rb +23 -0
  732. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/version.rb +10 -0
  733. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake/win32.rb +51 -0
  734. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/lib/rake.rb +68 -0
  735. data/vendor/bundle/ruby/3.3.0/gems/rake-13.3.1/rake.gemspec +101 -0
  736. data/vendor/bundle/ruby/3.3.0/gems/rspec-3.13.2/LICENSE.md +27 -0
  737. data/vendor/bundle/ruby/3.3.0/gems/rspec-3.13.2/README.md +47 -0
  738. data/vendor/bundle/ruby/3.3.0/gems/rspec-3.13.2/lib/rspec/version.rb +5 -0
  739. data/vendor/bundle/ruby/3.3.0/gems/rspec-3.13.2/lib/rspec.rb +3 -0
  740. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/.document +5 -0
  741. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/.yardopts +8 -0
  742. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/Changelog.md +2447 -0
  743. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/LICENSE.md +26 -0
  744. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/README.md +389 -0
  745. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/exe/rspec +4 -0
  746. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/autorun.rb +3 -0
  747. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/backtrace_formatter.rb +65 -0
  748. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/coordinator.rb +62 -0
  749. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/example_minimizer.rb +173 -0
  750. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/fork_runner.rb +140 -0
  751. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/server.rb +61 -0
  752. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/shell_command.rb +126 -0
  753. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/shell_runner.rb +73 -0
  754. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/bisect/utilities.rb +69 -0
  755. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/configuration.rb +2419 -0
  756. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/configuration_options.rb +240 -0
  757. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/did_you_mean.rb +52 -0
  758. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/drb.rb +120 -0
  759. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/dsl.rb +98 -0
  760. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/example.rb +666 -0
  761. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/example_group.rb +912 -0
  762. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/example_status_persister.rb +235 -0
  763. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/filter_manager.rb +231 -0
  764. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/flat_map.rb +20 -0
  765. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/base_bisect_formatter.rb +45 -0
  766. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/base_formatter.rb +70 -0
  767. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/base_text_formatter.rb +75 -0
  768. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/bisect_drb_formatter.rb +29 -0
  769. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/bisect_progress_formatter.rb +157 -0
  770. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/console_codes.rb +76 -0
  771. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  772. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/documentation_formatter.rb +102 -0
  773. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/exception_presenter.rb +553 -0
  774. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/failure_list_formatter.rb +23 -0
  775. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  776. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/helpers.rb +118 -0
  777. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/html_formatter.rb +153 -0
  778. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/html_printer.rb +412 -0
  779. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/html_snippet_extractor.rb +122 -0
  780. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/json_formatter.rb +103 -0
  781. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  782. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/progress_formatter.rb +29 -0
  783. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/protocol.rb +182 -0
  784. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/snippet_extractor.rb +134 -0
  785. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters/syntax_highlighter.rb +91 -0
  786. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/formatters.rb +279 -0
  787. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/hooks.rb +646 -0
  788. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/invocations.rb +87 -0
  789. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/memoized_helpers.rb +580 -0
  790. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/metadata.rb +498 -0
  791. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/metadata_filter.rb +255 -0
  792. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  793. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  794. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  795. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/null.rb +14 -0
  796. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  797. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  798. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/notifications.rb +523 -0
  799. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/option_parser.rb +325 -0
  800. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/ordering.rb +208 -0
  801. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/output_wrapper.rb +29 -0
  802. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/pending.rb +157 -0
  803. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/profiler.rb +34 -0
  804. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/project_initializer/.rspec +1 -0
  805. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/project_initializer/spec/spec_helper.rb +98 -0
  806. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/project_initializer.rb +48 -0
  807. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/rake_task.rb +190 -0
  808. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/reporter.rb +266 -0
  809. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/ruby_project.rb +53 -0
  810. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/runner.rb +216 -0
  811. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/sandbox.rb +37 -0
  812. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/set.rb +54 -0
  813. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/shared_context.rb +55 -0
  814. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/shared_example_group.rb +271 -0
  815. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/shell_escape.rb +49 -0
  816. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  817. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/version.rb +9 -0
  818. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/warnings.rb +40 -0
  819. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core/world.rb +287 -0
  820. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.6/lib/rspec/core.rb +212 -0
  821. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/.document +5 -0
  822. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/.yardopts +6 -0
  823. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/Changelog.md +1366 -0
  824. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/LICENSE.md +25 -0
  825. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/README.md +326 -0
  826. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/block_snippet_extractor.rb +255 -0
  827. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/configuration.rb +244 -0
  828. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/expectation_target.rb +163 -0
  829. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/fail_with.rb +39 -0
  830. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/failure_aggregator.rb +236 -0
  831. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/handler.rb +181 -0
  832. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/minitest_integration.rb +58 -0
  833. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/syntax.rb +132 -0
  834. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations/version.rb +8 -0
  835. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/expectations.rb +82 -0
  836. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/aliased_matcher.rb +116 -0
  837. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/all.rb +86 -0
  838. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/base_matcher.rb +225 -0
  839. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be.rb +191 -0
  840. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_between.rb +77 -0
  841. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_instance_of.rb +26 -0
  842. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_kind_of.rb +20 -0
  843. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/be_within.rb +72 -0
  844. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/change.rb +452 -0
  845. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/compound.rb +293 -0
  846. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/contain_exactly.rb +312 -0
  847. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/count_expectation.rb +171 -0
  848. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/cover.rb +24 -0
  849. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/eq.rb +44 -0
  850. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/eql.rb +38 -0
  851. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/equal.rb +81 -0
  852. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/exist.rb +90 -0
  853. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/has.rb +194 -0
  854. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  855. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/include.rb +218 -0
  856. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/match.rb +120 -0
  857. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/operators.rb +128 -0
  858. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/output.rb +207 -0
  859. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/raise_error.rb +275 -0
  860. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/respond_to.rb +200 -0
  861. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/satisfy.rb +62 -0
  862. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  863. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/throw_symbol.rb +138 -0
  864. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in/yield.rb +375 -0
  865. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/built_in.rb +53 -0
  866. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/composable.rb +171 -0
  867. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/dsl.rb +546 -0
  868. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/english_phrasing.rb +60 -0
  869. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/fail_matchers.rb +42 -0
  870. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/generated_descriptions.rb +41 -0
  871. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/matcher_delegator.rb +61 -0
  872. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/matcher_protocol.rb +105 -0
  873. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers/multi_matcher_diff.rb +82 -0
  874. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.5/lib/rspec/matchers.rb +1046 -0
  875. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/.document +5 -0
  876. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/.yardopts +6 -0
  877. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/Changelog.md +1343 -0
  878. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/LICENSE.md +25 -0
  879. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/README.md +465 -0
  880. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/chain.rb +111 -0
  881. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  882. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/expect_chain_chain.rb +31 -0
  883. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/expectation_chain.rb +50 -0
  884. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  885. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/proxy.rb +125 -0
  886. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/recorder.rb +299 -0
  887. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/stub_chain.rb +51 -0
  888. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance/stub_chain_chain.rb +23 -0
  889. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/any_instance.rb +11 -0
  890. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/argument_list_matcher.rb +117 -0
  891. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/argument_matchers.rb +366 -0
  892. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/configuration.rb +212 -0
  893. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/error_generator.rb +390 -0
  894. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/example_methods.rb +434 -0
  895. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/instance_method_stasher.rb +146 -0
  896. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/marshal_extension.rb +41 -0
  897. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  898. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/matchers/have_received.rb +134 -0
  899. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/matchers/receive.rb +134 -0
  900. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/matchers/receive_message_chain.rb +82 -0
  901. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/matchers/receive_messages.rb +77 -0
  902. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/message_chain.rb +87 -0
  903. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/message_expectation.rb +856 -0
  904. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/method_double.rb +316 -0
  905. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/method_reference.rb +214 -0
  906. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/minitest_integration.rb +68 -0
  907. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/mutate_const.rb +339 -0
  908. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/object_reference.rb +149 -0
  909. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/order_group.rb +81 -0
  910. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/proxy.rb +517 -0
  911. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/space.rb +238 -0
  912. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/standalone.rb +3 -0
  913. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/syntax.rb +325 -0
  914. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/targets.rb +124 -0
  915. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/test_double.rb +174 -0
  916. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/verifying_double.rb +125 -0
  917. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/verifying_message_expectation.rb +55 -0
  918. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/verifying_proxy.rb +221 -0
  919. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks/version.rb +9 -0
  920. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.7/lib/rspec/mocks.rb +133 -0
  921. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/Changelog.md +444 -0
  922. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/LICENSE.md +23 -0
  923. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/README.md +40 -0
  924. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/caller_filter.rb +85 -0
  925. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/comparable_version.rb +48 -0
  926. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/differ.rb +216 -0
  927. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/directory_maker.rb +65 -0
  928. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/encoded_string.rb +163 -0
  929. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/fuzzy_matcher.rb +53 -0
  930. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/hunk_generator.rb +49 -0
  931. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/matcher_definition.rb +44 -0
  932. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/method_signature_verifier.rb +467 -0
  933. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/mutex.rb +75 -0
  934. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/object_formatter.rb +279 -0
  935. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/recursive_const_methods.rb +78 -0
  936. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/reentrant_mutex.rb +80 -0
  937. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/ruby_features.rb +221 -0
  938. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/source/location.rb +23 -0
  939. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/source/node.rb +112 -0
  940. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/source/token.rb +96 -0
  941. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/source.rb +87 -0
  942. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/deprecation_helpers.rb +50 -0
  943. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/diff_helpers.rb +45 -0
  944. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/formatting_support.rb +11 -0
  945. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/in_sub_process.rb +73 -0
  946. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/library_wide_checks.rb +152 -0
  947. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/shell_out.rb +115 -0
  948. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/stderr_splitter.rb +77 -0
  949. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/string_matcher.rb +47 -0
  950. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/with_isolated_directory.rb +15 -0
  951. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec/with_isolated_stderr.rb +15 -0
  952. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/spec.rb +84 -0
  953. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/version.rb +9 -0
  954. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/warnings.rb +41 -0
  955. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support/with_keywords_when_needed.rb +35 -0
  956. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.7/lib/rspec/support.rb +163 -0
  957. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/CHANGELOG.md +191 -0
  958. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/LICENSE +20 -0
  959. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/README.md +974 -0
  960. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/doc/alternate-formatters.md +71 -0
  961. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/doc/commercial-services.md +25 -0
  962. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/doc/editor-integration.md +18 -0
  963. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/minitest/simplecov_plugin.rb +15 -0
  964. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/combine/branches_combiner.rb +32 -0
  965. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/combine/files_combiner.rb +24 -0
  966. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/combine/lines_combiner.rb +43 -0
  967. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/combine/results_combiner.rb +60 -0
  968. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/combine.rb +30 -0
  969. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/command_guesser.rb +64 -0
  970. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/configuration.rb +500 -0
  971. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/coverage_statistics.rb +56 -0
  972. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/default_formatter.rb +20 -0
  973. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/defaults.rb +53 -0
  974. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/exit_codes/exit_code_handling.rb +29 -0
  975. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/exit_codes/maximum_coverage_drop_check.rb +83 -0
  976. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/exit_codes/minimum_coverage_by_file_check.rb +54 -0
  977. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/exit_codes/minimum_overall_coverage_check.rb +53 -0
  978. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/exit_codes.rb +15 -0
  979. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/file_list.rb +120 -0
  980. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/filter.rb +94 -0
  981. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/formatter/multi_formatter.rb +32 -0
  982. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/formatter/simple_formatter.rb +25 -0
  983. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/formatter.rb +10 -0
  984. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/last_run.rb +28 -0
  985. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/lines_classifier.rb +48 -0
  986. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/load_global_config.rb +8 -0
  987. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/no_defaults.rb +4 -0
  988. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/process.rb +19 -0
  989. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/profiles/bundler_filter.rb +5 -0
  990. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/profiles/hidden_filter.rb +5 -0
  991. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/profiles/rails.rb +18 -0
  992. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/profiles/root_filter.rb +10 -0
  993. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/profiles/test_frameworks.rb +8 -0
  994. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/profiles.rb +35 -0
  995. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/result.rb +94 -0
  996. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/result_adapter.rb +30 -0
  997. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/result_merger.rb +194 -0
  998. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/simulate_coverage.rb +29 -0
  999. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/source_file/branch.rb +84 -0
  1000. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/source_file/line.rb +72 -0
  1001. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/source_file.rb +355 -0
  1002. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/useless_results_remover.rb +18 -0
  1003. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov/version.rb +5 -0
  1004. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/lib/simplecov.rb +470 -0
  1005. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/.document +5 -0
  1006. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/CHANGELOG.md +114 -0
  1007. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/LICENSE +20 -0
  1008. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/README.md +30 -0
  1009. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/Rakefile +55 -0
  1010. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/lib/simplecov-html/version.rb +9 -0
  1011. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/lib/simplecov-html.rb +165 -0
  1012. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/DataTables-1.10.20/images/sort_asc.png +0 -0
  1013. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/DataTables-1.10.20/images/sort_asc_disabled.png +0 -0
  1014. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/DataTables-1.10.20/images/sort_both.png +0 -0
  1015. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/DataTables-1.10.20/images/sort_desc.png +0 -0
  1016. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/DataTables-1.10.20/images/sort_desc_disabled.png +0 -0
  1017. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/application.css +1 -0
  1018. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/application.js +7 -0
  1019. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/colorbox/border.png +0 -0
  1020. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/colorbox/controls.png +0 -0
  1021. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/colorbox/loading.gif +0 -0
  1022. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/colorbox/loading_background.png +0 -0
  1023. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/favicon_green.png +0 -0
  1024. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/favicon_red.png +0 -0
  1025. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/favicon_yellow.png +0 -0
  1026. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  1027. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  1028. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  1029. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  1030. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  1031. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  1032. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  1033. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  1034. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-icons_222222_256x240.png +0 -0
  1035. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-icons_2e83ff_256x240.png +0 -0
  1036. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-icons_454545_256x240.png +0 -0
  1037. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-icons_888888_256x240.png +0 -0
  1038. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/images/ui-icons_cd0a0a_256x240.png +0 -0
  1039. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/loading.gif +0 -0
  1040. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/public/magnify.png +0 -0
  1041. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/views/covered_percent.erb +3 -0
  1042. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/views/file_list.erb +78 -0
  1043. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/views/layout.erb +40 -0
  1044. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.13.2/views/source_file.erb +57 -0
  1045. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/CHANGELOG.md +13 -0
  1046. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/README.md +29 -0
  1047. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/lib/simplecov_json_formatter/result_exporter.rb +27 -0
  1048. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/lib/simplecov_json_formatter/result_hash_formatter.rb +52 -0
  1049. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/lib/simplecov_json_formatter/source_file_formatter.rb +65 -0
  1050. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/lib/simplecov_json_formatter/version.rb +5 -0
  1051. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/lib/simplecov_json_formatter.rb +36 -0
  1052. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/.gitignore +9 -0
  1053. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/.rubocop.yml +53 -0
  1054. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/.ruby-gemset +1 -0
  1055. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/.ruby-version +1 -0
  1056. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/CHANGELOG.md +46 -0
  1057. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/CONTRIBUTING.md +96 -0
  1058. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/Gemfile +2 -0
  1059. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/Gemfile.lock +68 -0
  1060. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/LICENSE +201 -0
  1061. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/README.md +777 -0
  1062. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/Rakefile +10 -0
  1063. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/examples/README.md +51 -0
  1064. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/examples/basic_vpc.rb +172 -0
  1065. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/examples/complete_web_app.rb +626 -0
  1066. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/examples/kubernetes_microservices.rb +873 -0
  1067. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/examples/multi_cloud_backup.rb +456 -0
  1068. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/flake.lock +835 -0
  1069. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/flake.nix +62 -0
  1070. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/gemset.nix +250 -0
  1071. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/lib/terraform-synthesizer/version.rb +3 -0
  1072. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/lib/terraform-synthesizer.rb +21 -0
  1073. data/vendor/bundle/ruby/3.3.0/gems/terraform-synthesizer-0.0.28/terraform-synthesizer.gemspec +32 -0
  1074. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/MIT-LICENSE +20 -0
  1075. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/README.md +1477 -0
  1076. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/core_ext/kernel.rb +64 -0
  1077. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/core_ext/module.rb +20 -0
  1078. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/cref/map.rb +159 -0
  1079. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/cref.rb +69 -0
  1080. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/error.rb +23 -0
  1081. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/gem_inflector.rb +17 -0
  1082. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/gem_loader.rb +68 -0
  1083. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/inflector.rb +46 -0
  1084. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/internal.rb +13 -0
  1085. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/loader/callbacks.rb +96 -0
  1086. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/loader/config.rb +357 -0
  1087. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/loader/eager_load.rb +230 -0
  1088. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/loader/file_system.rb +165 -0
  1089. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/loader/helpers.rb +46 -0
  1090. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/loader.rb +643 -0
  1091. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/null_inflector.rb +6 -0
  1092. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/real_mod_name.rb +19 -0
  1093. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/registry/autoloads.rb +38 -0
  1094. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/registry/explicit_namespaces.rb +61 -0
  1095. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/registry/inceptions.rb +31 -0
  1096. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/registry/loaders.rb +33 -0
  1097. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/registry.rb +89 -0
  1098. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk/version.rb +6 -0
  1099. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.5/lib/zeitwerk.rb +29 -0
  1100. data/vendor/bundle/ruby/3.3.0/specifications/abstract-synthesizer-0.0.15.gemspec +36 -0
  1101. data/vendor/bundle/ruby/3.3.0/specifications/base64-0.3.0.gemspec +23 -0
  1102. data/vendor/bundle/ruby/3.3.0/specifications/bigdecimal-4.0.1.gemspec +25 -0
  1103. data/vendor/bundle/ruby/3.3.0/specifications/concurrent-ruby-1.3.6.gemspec +24 -0
  1104. data/vendor/bundle/ruby/3.3.0/specifications/diff-lcs-1.6.2.gemspec +46 -0
  1105. data/vendor/bundle/ruby/3.3.0/specifications/docile-1.4.1.gemspec +22 -0
  1106. data/vendor/bundle/ruby/3.3.0/specifications/dry-core-1.2.0.gemspec +44 -0
  1107. data/vendor/bundle/ruby/3.3.0/specifications/dry-inflector-1.3.1.gemspec +38 -0
  1108. data/vendor/bundle/ruby/3.3.0/specifications/dry-logic-1.6.0.gemspec +38 -0
  1109. data/vendor/bundle/ruby/3.3.0/specifications/dry-struct-1.8.0.gemspec +38 -0
  1110. data/vendor/bundle/ruby/3.3.0/specifications/dry-types-1.9.1.gemspec +53 -0
  1111. data/vendor/bundle/ruby/3.3.0/specifications/ice_nine-0.11.2.gemspec +32 -0
  1112. data/vendor/bundle/ruby/3.3.0/specifications/logger-1.7.0.gemspec +22 -0
  1113. data/vendor/bundle/ruby/3.3.0/specifications/rake-13.3.1.gemspec +26 -0
  1114. data/vendor/bundle/ruby/3.3.0/specifications/rspec-3.13.2.gemspec +39 -0
  1115. data/vendor/bundle/ruby/3.3.0/specifications/rspec-core-3.13.6.gemspec +37 -0
  1116. data/vendor/bundle/ruby/3.3.0/specifications/rspec-expectations-3.13.5.gemspec +36 -0
  1117. data/vendor/bundle/ruby/3.3.0/specifications/rspec-mocks-3.13.7.gemspec +36 -0
  1118. data/vendor/bundle/ruby/3.3.0/specifications/rspec-support-3.13.7.gemspec +36 -0
  1119. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-0.22.0.gemspec +36 -0
  1120. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-html-0.13.2.gemspec +22 -0
  1121. data/vendor/bundle/ruby/3.3.0/specifications/simplecov_json_formatter-0.1.4.gemspec +21 -0
  1122. data/vendor/bundle/ruby/3.3.0/specifications/terraform-synthesizer-0.0.28.gemspec +38 -0
  1123. data/vendor/bundle/ruby/3.3.0/specifications/zeitwerk-2.7.5.gemspec +22 -0
  1124. metadata +1120 -9
@@ -0,0 +1,127 @@
1
+ require 'concurrent/utility/native_extension_loader' # load native parts first
2
+
3
+ require 'concurrent/atomic/mutex_atomic_boolean'
4
+
5
+ module Concurrent
6
+
7
+ ###################################################################
8
+
9
+ # @!macro atomic_boolean_method_initialize
10
+ #
11
+ # Creates a new `AtomicBoolean` with the given initial value.
12
+ #
13
+ # @param [Boolean] initial the initial value
14
+
15
+ # @!macro atomic_boolean_method_value_get
16
+ #
17
+ # Retrieves the current `Boolean` value.
18
+ #
19
+ # @return [Boolean] the current value
20
+
21
+ # @!macro atomic_boolean_method_value_set
22
+ #
23
+ # Explicitly sets the value.
24
+ #
25
+ # @param [Boolean] value the new value to be set
26
+ #
27
+ # @return [Boolean] the current value
28
+
29
+ # @!macro atomic_boolean_method_true_question
30
+ #
31
+ # Is the current value `true`
32
+ #
33
+ # @return [Boolean] true if the current value is `true`, else false
34
+
35
+ # @!macro atomic_boolean_method_false_question
36
+ #
37
+ # Is the current value `false`
38
+ #
39
+ # @return [Boolean] true if the current value is `false`, else false
40
+
41
+ # @!macro atomic_boolean_method_make_true
42
+ #
43
+ # Explicitly sets the value to true.
44
+ #
45
+ # @return [Boolean] true if value has changed, otherwise false
46
+
47
+ # @!macro atomic_boolean_method_make_false
48
+ #
49
+ # Explicitly sets the value to false.
50
+ #
51
+ # @return [Boolean] true if value has changed, otherwise false
52
+
53
+ ###################################################################
54
+
55
+ # @!macro atomic_boolean_public_api
56
+ #
57
+ # @!method initialize(initial = false)
58
+ # @!macro atomic_boolean_method_initialize
59
+ #
60
+ # @!method value
61
+ # @!macro atomic_boolean_method_value_get
62
+ #
63
+ # @!method value=(value)
64
+ # @!macro atomic_boolean_method_value_set
65
+ #
66
+ # @!method true?
67
+ # @!macro atomic_boolean_method_true_question
68
+ #
69
+ # @!method false?
70
+ # @!macro atomic_boolean_method_false_question
71
+ #
72
+ # @!method make_true
73
+ # @!macro atomic_boolean_method_make_true
74
+ #
75
+ # @!method make_false
76
+ # @!macro atomic_boolean_method_make_false
77
+
78
+ ###################################################################
79
+
80
+ # @!visibility private
81
+ # @!macro internal_implementation_note
82
+ AtomicBooleanImplementation = case
83
+ when Concurrent.on_cruby? && Concurrent.c_extensions_loaded?
84
+ CAtomicBoolean
85
+ when Concurrent.on_jruby?
86
+ JavaAtomicBoolean
87
+ else
88
+ MutexAtomicBoolean
89
+ end
90
+ private_constant :AtomicBooleanImplementation
91
+
92
+ # @!macro atomic_boolean
93
+ #
94
+ # A boolean value that can be updated atomically. Reads and writes to an atomic
95
+ # boolean and thread-safe and guaranteed to succeed. Reads and writes may block
96
+ # briefly but no explicit locking is required.
97
+ #
98
+ # @!macro thread_safe_variable_comparison
99
+ #
100
+ # Performance:
101
+ #
102
+ # ```
103
+ # Testing with ruby 2.1.2
104
+ # Testing with Concurrent::MutexAtomicBoolean...
105
+ # 2.790000 0.000000 2.790000 ( 2.791454)
106
+ # Testing with Concurrent::CAtomicBoolean...
107
+ # 0.740000 0.000000 0.740000 ( 0.740206)
108
+ #
109
+ # Testing with jruby 1.9.3
110
+ # Testing with Concurrent::MutexAtomicBoolean...
111
+ # 5.240000 2.520000 7.760000 ( 3.683000)
112
+ # Testing with Concurrent::JavaAtomicBoolean...
113
+ # 3.340000 0.010000 3.350000 ( 0.855000)
114
+ # ```
115
+ #
116
+ # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicBoolean.html java.util.concurrent.atomic.AtomicBoolean
117
+ #
118
+ # @!macro atomic_boolean_public_api
119
+ class AtomicBoolean < AtomicBooleanImplementation
120
+ # @return [String] Short string representation.
121
+ def to_s
122
+ format '%s value:%s>', super[0..-2], value
123
+ end
124
+
125
+ alias_method :inspect, :to_s
126
+ end
127
+ end
@@ -0,0 +1,144 @@
1
+ require 'concurrent/utility/native_extension_loader' # load native parts first
2
+
3
+ require 'concurrent/atomic/mutex_atomic_fixnum'
4
+
5
+ module Concurrent
6
+
7
+ ###################################################################
8
+
9
+ # @!macro atomic_fixnum_method_initialize
10
+ #
11
+ # Creates a new `AtomicFixnum` with the given initial value.
12
+ #
13
+ # @param [Fixnum] initial the initial value
14
+ # @raise [ArgumentError] if the initial value is not a `Fixnum`
15
+
16
+ # @!macro atomic_fixnum_method_value_get
17
+ #
18
+ # Retrieves the current `Fixnum` value.
19
+ #
20
+ # @return [Fixnum] the current value
21
+
22
+ # @!macro atomic_fixnum_method_value_set
23
+ #
24
+ # Explicitly sets the value.
25
+ #
26
+ # @param [Fixnum] value the new value to be set
27
+ #
28
+ # @return [Fixnum] the current value
29
+ #
30
+ # @raise [ArgumentError] if the new value is not a `Fixnum`
31
+
32
+ # @!macro atomic_fixnum_method_increment
33
+ #
34
+ # Increases the current value by the given amount (defaults to 1).
35
+ #
36
+ # @param [Fixnum] delta the amount by which to increase the current value
37
+ #
38
+ # @return [Fixnum] the current value after incrementation
39
+
40
+ # @!macro atomic_fixnum_method_decrement
41
+ #
42
+ # Decreases the current value by the given amount (defaults to 1).
43
+ #
44
+ # @param [Fixnum] delta the amount by which to decrease the current value
45
+ #
46
+ # @return [Fixnum] the current value after decrementation
47
+
48
+ # @!macro atomic_fixnum_method_compare_and_set
49
+ #
50
+ # Atomically sets the value to the given updated value if the current
51
+ # value == the expected value.
52
+ #
53
+ # @param [Fixnum] expect the expected value
54
+ # @param [Fixnum] update the new value
55
+ #
56
+ # @return [Boolean] true if the value was updated else false
57
+
58
+ # @!macro atomic_fixnum_method_update
59
+ #
60
+ # Pass the current value to the given block, replacing it
61
+ # with the block's result. May retry if the value changes
62
+ # during the block's execution.
63
+ #
64
+ # @yield [Object] Calculate a new value for the atomic reference using
65
+ # given (old) value
66
+ # @yieldparam [Object] old_value the starting value of the atomic reference
67
+ #
68
+ # @return [Object] the new value
69
+
70
+ ###################################################################
71
+
72
+ # @!macro atomic_fixnum_public_api
73
+ #
74
+ # @!method initialize(initial = 0)
75
+ # @!macro atomic_fixnum_method_initialize
76
+ #
77
+ # @!method value
78
+ # @!macro atomic_fixnum_method_value_get
79
+ #
80
+ # @!method value=(value)
81
+ # @!macro atomic_fixnum_method_value_set
82
+ #
83
+ # @!method increment(delta = 1)
84
+ # @!macro atomic_fixnum_method_increment
85
+ #
86
+ # @!method decrement(delta = 1)
87
+ # @!macro atomic_fixnum_method_decrement
88
+ #
89
+ # @!method compare_and_set(expect, update)
90
+ # @!macro atomic_fixnum_method_compare_and_set
91
+ #
92
+ # @!method update
93
+ # @!macro atomic_fixnum_method_update
94
+
95
+ ###################################################################
96
+
97
+ # @!visibility private
98
+ # @!macro internal_implementation_note
99
+ AtomicFixnumImplementation = case
100
+ when Concurrent.on_cruby? && Concurrent.c_extensions_loaded?
101
+ CAtomicFixnum
102
+ when Concurrent.on_jruby?
103
+ JavaAtomicFixnum
104
+ else
105
+ MutexAtomicFixnum
106
+ end
107
+ private_constant :AtomicFixnumImplementation
108
+
109
+ # @!macro atomic_fixnum
110
+ #
111
+ # A numeric value that can be updated atomically. Reads and writes to an atomic
112
+ # fixnum and thread-safe and guaranteed to succeed. Reads and writes may block
113
+ # briefly but no explicit locking is required.
114
+ #
115
+ # @!macro thread_safe_variable_comparison
116
+ #
117
+ # Performance:
118
+ #
119
+ # ```
120
+ # Testing with ruby 2.1.2
121
+ # Testing with Concurrent::MutexAtomicFixnum...
122
+ # 3.130000 0.000000 3.130000 ( 3.136505)
123
+ # Testing with Concurrent::CAtomicFixnum...
124
+ # 0.790000 0.000000 0.790000 ( 0.785550)
125
+ #
126
+ # Testing with jruby 1.9.3
127
+ # Testing with Concurrent::MutexAtomicFixnum...
128
+ # 5.460000 2.460000 7.920000 ( 3.715000)
129
+ # Testing with Concurrent::JavaAtomicFixnum...
130
+ # 4.520000 0.030000 4.550000 ( 1.187000)
131
+ # ```
132
+ #
133
+ # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicLong.html java.util.concurrent.atomic.AtomicLong
134
+ #
135
+ # @!macro atomic_fixnum_public_api
136
+ class AtomicFixnum < AtomicFixnumImplementation
137
+ # @return [String] Short string representation.
138
+ def to_s
139
+ format '%s value:%s>', super[0..-2], value
140
+ end
141
+
142
+ alias_method :inspect, :to_s
143
+ end
144
+ end
@@ -0,0 +1,167 @@
1
+ require 'concurrent/errors'
2
+ require 'concurrent/synchronization/object'
3
+
4
+ module Concurrent
5
+ # An atomic reference which maintains an object reference along with a mark bit
6
+ # that can be updated atomically.
7
+ #
8
+ # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicMarkableReference.html
9
+ # java.util.concurrent.atomic.AtomicMarkableReference
10
+ class AtomicMarkableReference < ::Concurrent::Synchronization::Object
11
+
12
+ attr_atomic(:reference)
13
+ private :reference, :reference=, :swap_reference, :compare_and_set_reference, :update_reference
14
+
15
+ def initialize(value = nil, mark = false)
16
+ super()
17
+ self.reference = immutable_array(value, mark)
18
+ end
19
+
20
+ # Atomically sets the value and mark to the given updated value and
21
+ # mark given both:
22
+ # - the current value == the expected value &&
23
+ # - the current mark == the expected mark
24
+ #
25
+ # @param [Object] expected_val the expected value
26
+ # @param [Object] new_val the new value
27
+ # @param [Boolean] expected_mark the expected mark
28
+ # @param [Boolean] new_mark the new mark
29
+ #
30
+ # @return [Boolean] `true` if successful. A `false` return indicates
31
+ # that the actual value was not equal to the expected value or the
32
+ # actual mark was not equal to the expected mark
33
+ def compare_and_set(expected_val, new_val, expected_mark, new_mark)
34
+ # Memoize a valid reference to the current AtomicReference for
35
+ # later comparison.
36
+ current = reference
37
+ curr_val, curr_mark = current
38
+
39
+ # Ensure that that the expected marks match.
40
+ return false unless expected_mark == curr_mark
41
+
42
+ if expected_val.is_a? Numeric
43
+ # If the object is a numeric, we need to ensure we are comparing
44
+ # the numerical values
45
+ return false unless expected_val == curr_val
46
+ else
47
+ # Otherwise, we need to ensure we are comparing the object identity.
48
+ # Theoretically, this could be incorrect if a user monkey-patched
49
+ # `Object#equal?`, but they should know that they are playing with
50
+ # fire at that point.
51
+ return false unless expected_val.equal? curr_val
52
+ end
53
+
54
+ prospect = immutable_array(new_val, new_mark)
55
+
56
+ compare_and_set_reference current, prospect
57
+ end
58
+
59
+ alias_method :compare_and_swap, :compare_and_set
60
+
61
+ # Gets the current reference and marked values.
62
+ #
63
+ # @return [Array] the current reference and marked values
64
+ def get
65
+ reference
66
+ end
67
+
68
+ # Gets the current value of the reference
69
+ #
70
+ # @return [Object] the current value of the reference
71
+ def value
72
+ reference[0]
73
+ end
74
+
75
+ # Gets the current marked value
76
+ #
77
+ # @return [Boolean] the current marked value
78
+ def mark
79
+ reference[1]
80
+ end
81
+
82
+ alias_method :marked?, :mark
83
+
84
+ # _Unconditionally_ sets to the given value of both the reference and
85
+ # the mark.
86
+ #
87
+ # @param [Object] new_val the new value
88
+ # @param [Boolean] new_mark the new mark
89
+ #
90
+ # @return [Array] both the new value and the new mark
91
+ def set(new_val, new_mark)
92
+ self.reference = immutable_array(new_val, new_mark)
93
+ end
94
+
95
+ # Pass the current value and marked state to the given block, replacing it
96
+ # with the block's results. May retry if the value changes during the
97
+ # block's execution.
98
+ #
99
+ # @yield [Object] Calculate a new value and marked state for the atomic
100
+ # reference using given (old) value and (old) marked
101
+ # @yieldparam [Object] old_val the starting value of the atomic reference
102
+ # @yieldparam [Boolean] old_mark the starting state of marked
103
+ #
104
+ # @return [Array] the new value and new mark
105
+ def update
106
+ loop do
107
+ old_val, old_mark = reference
108
+ new_val, new_mark = yield old_val, old_mark
109
+
110
+ if compare_and_set old_val, new_val, old_mark, new_mark
111
+ return immutable_array(new_val, new_mark)
112
+ end
113
+ end
114
+ end
115
+
116
+ # Pass the current value to the given block, replacing it
117
+ # with the block's result. Raise an exception if the update
118
+ # fails.
119
+ #
120
+ # @yield [Object] Calculate a new value and marked state for the atomic
121
+ # reference using given (old) value and (old) marked
122
+ # @yieldparam [Object] old_val the starting value of the atomic reference
123
+ # @yieldparam [Boolean] old_mark the starting state of marked
124
+ #
125
+ # @return [Array] the new value and marked state
126
+ #
127
+ # @raise [Concurrent::ConcurrentUpdateError] if the update fails
128
+ def try_update!
129
+ old_val, old_mark = reference
130
+ new_val, new_mark = yield old_val, old_mark
131
+
132
+ unless compare_and_set old_val, new_val, old_mark, new_mark
133
+ fail ::Concurrent::ConcurrentUpdateError,
134
+ 'AtomicMarkableReference: Update failed due to race condition.',
135
+ 'Note: If you would like to guarantee an update, please use ' +
136
+ 'the `AtomicMarkableReference#update` method.'
137
+ end
138
+
139
+ immutable_array(new_val, new_mark)
140
+ end
141
+
142
+ # Pass the current value to the given block, replacing it with the
143
+ # block's result. Simply return nil if update fails.
144
+ #
145
+ # @yield [Object] Calculate a new value and marked state for the atomic
146
+ # reference using given (old) value and (old) marked
147
+ # @yieldparam [Object] old_val the starting value of the atomic reference
148
+ # @yieldparam [Boolean] old_mark the starting state of marked
149
+ #
150
+ # @return [Array] the new value and marked state, or nil if
151
+ # the update failed
152
+ def try_update
153
+ old_val, old_mark = reference
154
+ new_val, new_mark = yield old_val, old_mark
155
+
156
+ return unless compare_and_set old_val, new_val, old_mark, new_mark
157
+
158
+ immutable_array(new_val, new_mark)
159
+ end
160
+
161
+ private
162
+
163
+ def immutable_array(*args)
164
+ args.freeze
165
+ end
166
+ end
167
+ end
@@ -0,0 +1,135 @@
1
+ require 'concurrent/utility/native_extension_loader' # load native parts first
2
+
3
+ require 'concurrent/atomic_reference/atomic_direct_update'
4
+ require 'concurrent/atomic_reference/numeric_cas_wrapper'
5
+ require 'concurrent/atomic_reference/mutex_atomic'
6
+
7
+ # Shim for TruffleRuby::AtomicReference
8
+ if Concurrent.on_truffleruby? && !defined?(TruffleRuby::AtomicReference)
9
+ # @!visibility private
10
+ module TruffleRuby
11
+ AtomicReference = Truffle::AtomicReference
12
+ end
13
+ end
14
+
15
+ module Concurrent
16
+
17
+ # @!macro internal_implementation_note
18
+ AtomicReferenceImplementation = case
19
+ when Concurrent.on_cruby? && Concurrent.c_extensions_loaded?
20
+ # @!visibility private
21
+ # @!macro internal_implementation_note
22
+ class CAtomicReference
23
+ include AtomicDirectUpdate
24
+ include AtomicNumericCompareAndSetWrapper
25
+ alias_method :compare_and_swap, :compare_and_set
26
+ end
27
+ CAtomicReference
28
+ when Concurrent.on_jruby?
29
+ # @!visibility private
30
+ # @!macro internal_implementation_note
31
+ class JavaAtomicReference
32
+ include AtomicDirectUpdate
33
+ end
34
+ JavaAtomicReference
35
+ when Concurrent.on_truffleruby?
36
+ class TruffleRubyAtomicReference < TruffleRuby::AtomicReference
37
+ include AtomicDirectUpdate
38
+ alias_method :value, :get
39
+ alias_method :value=, :set
40
+ alias_method :compare_and_swap, :compare_and_set
41
+ alias_method :swap, :get_and_set
42
+ end
43
+ TruffleRubyAtomicReference
44
+ else
45
+ MutexAtomicReference
46
+ end
47
+ private_constant :AtomicReferenceImplementation
48
+
49
+ # An object reference that may be updated atomically. All read and write
50
+ # operations have java volatile semantic.
51
+ #
52
+ # @!macro thread_safe_variable_comparison
53
+ #
54
+ # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicReference.html
55
+ # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/package-summary.html
56
+ #
57
+ # @!method initialize(value = nil)
58
+ # @!macro atomic_reference_method_initialize
59
+ # @param [Object] value The initial value.
60
+ #
61
+ # @!method get
62
+ # @!macro atomic_reference_method_get
63
+ # Gets the current value.
64
+ # @return [Object] the current value
65
+ #
66
+ # @!method set(new_value)
67
+ # @!macro atomic_reference_method_set
68
+ # Sets to the given value.
69
+ # @param [Object] new_value the new value
70
+ # @return [Object] the new value
71
+ #
72
+ # @!method get_and_set(new_value)
73
+ # @!macro atomic_reference_method_get_and_set
74
+ # Atomically sets to the given value and returns the old value.
75
+ # @param [Object] new_value the new value
76
+ # @return [Object] the old value
77
+ #
78
+ # @!method compare_and_set(old_value, new_value)
79
+ # @!macro atomic_reference_method_compare_and_set
80
+ #
81
+ # Atomically sets the value to the given updated value if
82
+ # the current value == the expected value.
83
+ #
84
+ # @param [Object] old_value the expected value
85
+ # @param [Object] new_value the new value
86
+ #
87
+ # @return [Boolean] `true` if successful. A `false` return indicates
88
+ # that the actual value was not equal to the expected value.
89
+ #
90
+ # @!method update
91
+ # Pass the current value to the given block, replacing it
92
+ # with the block's result. May retry if the value changes
93
+ # during the block's execution.
94
+ #
95
+ # @yield [Object] Calculate a new value for the atomic reference using
96
+ # given (old) value
97
+ # @yieldparam [Object] old_value the starting value of the atomic reference
98
+ # @return [Object] the new value
99
+ #
100
+ # @!method try_update
101
+ # Pass the current value to the given block, replacing it
102
+ # with the block's result. Return nil if the update fails.
103
+ #
104
+ # @yield [Object] Calculate a new value for the atomic reference using
105
+ # given (old) value
106
+ # @yieldparam [Object] old_value the starting value of the atomic reference
107
+ # @note This method was altered to avoid raising an exception by default.
108
+ # Instead, this method now returns `nil` in case of failure. For more info,
109
+ # please see: https://github.com/ruby-concurrency/concurrent-ruby/pull/336
110
+ # @return [Object] the new value, or nil if update failed
111
+ #
112
+ # @!method try_update!
113
+ # Pass the current value to the given block, replacing it
114
+ # with the block's result. Raise an exception if the update
115
+ # fails.
116
+ #
117
+ # @yield [Object] Calculate a new value for the atomic reference using
118
+ # given (old) value
119
+ # @yieldparam [Object] old_value the starting value of the atomic reference
120
+ # @note This behavior mimics the behavior of the original
121
+ # `AtomicReference#try_update` API. The reason this was changed was to
122
+ # avoid raising exceptions (which are inherently slow) by default. For more
123
+ # info: https://github.com/ruby-concurrency/concurrent-ruby/pull/336
124
+ # @return [Object] the new value
125
+ # @raise [Concurrent::ConcurrentUpdateError] if the update fails
126
+ class AtomicReference < AtomicReferenceImplementation
127
+
128
+ # @return [String] Short string representation.
129
+ def to_s
130
+ format '%s value:%s>', super[0..-2], get
131
+ end
132
+
133
+ alias_method :inspect, :to_s
134
+ end
135
+ end
@@ -0,0 +1,100 @@
1
+ require 'concurrent/utility/engine'
2
+ require 'concurrent/atomic/mutex_count_down_latch'
3
+ require 'concurrent/atomic/java_count_down_latch'
4
+
5
+ module Concurrent
6
+
7
+ ###################################################################
8
+
9
+ # @!macro count_down_latch_method_initialize
10
+ #
11
+ # Create a new `CountDownLatch` with the initial `count`.
12
+ #
13
+ # @param [new] count the initial count
14
+ #
15
+ # @raise [ArgumentError] if `count` is not an integer or is less than zero
16
+
17
+ # @!macro count_down_latch_method_wait
18
+ #
19
+ # Block on the latch until the counter reaches zero or until `timeout` is reached.
20
+ #
21
+ # @param [Fixnum] timeout the number of seconds to wait for the counter or `nil`
22
+ # to block indefinitely
23
+ # @return [Boolean] `true` if the `count` reaches zero else false on `timeout`
24
+
25
+ # @!macro count_down_latch_method_count_down
26
+ #
27
+ # Signal the latch to decrement the counter. Will signal all blocked threads when
28
+ # the `count` reaches zero.
29
+
30
+ # @!macro count_down_latch_method_count
31
+ #
32
+ # The current value of the counter.
33
+ #
34
+ # @return [Fixnum] the current value of the counter
35
+
36
+ ###################################################################
37
+
38
+ # @!macro count_down_latch_public_api
39
+ #
40
+ # @!method initialize(count = 1)
41
+ # @!macro count_down_latch_method_initialize
42
+ #
43
+ # @!method wait(timeout = nil)
44
+ # @!macro count_down_latch_method_wait
45
+ #
46
+ # @!method count_down
47
+ # @!macro count_down_latch_method_count_down
48
+ #
49
+ # @!method count
50
+ # @!macro count_down_latch_method_count
51
+
52
+ ###################################################################
53
+
54
+ # @!visibility private
55
+ # @!macro internal_implementation_note
56
+ CountDownLatchImplementation = case
57
+ when Concurrent.on_jruby?
58
+ JavaCountDownLatch
59
+ else
60
+ MutexCountDownLatch
61
+ end
62
+ private_constant :CountDownLatchImplementation
63
+
64
+ # @!macro count_down_latch
65
+ #
66
+ # A synchronization object that allows one thread to wait on multiple other threads.
67
+ # The thread that will wait creates a `CountDownLatch` and sets the initial value
68
+ # (normally equal to the number of other threads). The initiating thread passes the
69
+ # latch to the other threads then waits for the other threads by calling the `#wait`
70
+ # method. Each of the other threads calls `#count_down` when done with its work.
71
+ # When the latch counter reaches zero the waiting thread is unblocked and continues
72
+ # with its work. A `CountDownLatch` can be used only once. Its value cannot be reset.
73
+ #
74
+ # @!macro count_down_latch_public_api
75
+ # @example Waiter and Decrementer
76
+ # latch = Concurrent::CountDownLatch.new(3)
77
+ #
78
+ # waiter = Thread.new do
79
+ # latch.wait()
80
+ # puts ("Waiter released")
81
+ # end
82
+ #
83
+ # decrementer = Thread.new do
84
+ # sleep(1)
85
+ # latch.count_down
86
+ # puts latch.count
87
+ #
88
+ # sleep(1)
89
+ # latch.count_down
90
+ # puts latch.count
91
+ #
92
+ # sleep(1)
93
+ # latch.count_down
94
+ # puts latch.count
95
+ # end
96
+ #
97
+ # [waiter, decrementer].each(&:join)
98
+ class CountDownLatch < CountDownLatchImplementation
99
+ end
100
+ end