honeybadger 5.2.1 → 5.4.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 (2268) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -4
  3. data/README.md +9 -9
  4. data/TROUBLESHOOTING.md +1 -0
  5. data/lib/honeybadger/agent.rb +6 -5
  6. data/lib/honeybadger/backend/base.rb +2 -1
  7. data/lib/honeybadger/config/ruby.rb +6 -1
  8. data/lib/honeybadger/config.rb +1 -1
  9. data/lib/honeybadger/conversions.rb +11 -2
  10. data/lib/honeybadger/plugins/active_job.rb +28 -0
  11. data/lib/honeybadger/plugins/karafka.rb +16 -0
  12. data/lib/honeybadger/plugins/rails.rb +3 -2
  13. data/lib/honeybadger/plugins/sidekiq.rb +10 -3
  14. data/lib/honeybadger/singleton.rb +2 -2
  15. data/lib/honeybadger/version.rb +1 -1
  16. data/lib/honeybadger/worker.rb +2 -0
  17. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/lib/addressable/idna/native.rb +66 -0
  18. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/lib/addressable/idna/pure.rb +505 -0
  19. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/lib/addressable/idna.rb +26 -0
  20. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/lib/addressable/template.rb +1029 -0
  21. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/lib/addressable/uri.rb +2591 -0
  22. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/lib/addressable/version.rb +31 -0
  23. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/lib/addressable.rb +4 -0
  24. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/spec/addressable/idna_spec.rb +302 -0
  25. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/spec/addressable/net_http_compat_spec.rb +29 -0
  26. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/spec/addressable/security_spec.rb +58 -0
  27. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/spec/addressable/template_spec.rb +1264 -0
  28. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/spec/addressable/uri_spec.rb +6840 -0
  29. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/spec/spec_helper.rb +33 -0
  30. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/tasks/clobber.rake +4 -0
  31. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/tasks/gem.rake +95 -0
  32. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/tasks/git.rake +47 -0
  33. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/tasks/metrics.rake +24 -0
  34. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/tasks/profile.rake +72 -0
  35. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/tasks/rspec.rake +23 -0
  36. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.8.5/tasks/yard.rake +29 -0
  37. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/capistrano/tasks.rb +103 -0
  38. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/capistrano.rb +17 -0
  39. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/colors.rb +23 -0
  40. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/command_formatter.rb +81 -0
  41. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/configuration.rb +64 -0
  42. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/console.rb +97 -0
  43. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/console_formatter.rb +133 -0
  44. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/delegating_formatter.rb +44 -0
  45. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/formatter.rb +18 -0
  46. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/log_file_formatter.rb +42 -0
  47. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/rake/context.rb +98 -0
  48. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh/version.rb +5 -0
  49. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/airbrussh.rb +15 -0
  50. data/vendor/bundle/ruby/3.2.0/gems/airbrussh-1.5.0/lib/sshkit/formatter/airbrussh.rb +12 -0
  51. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/my_class.rb +6 -0
  52. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/trace_my_class_group_by.rb +11 -0
  53. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/trace_my_class_raw.rb +11 -0
  54. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/trace_object_allocations.rb +7 -0
  55. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/trace_psych_group_by.rb +8 -0
  56. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/trace_psych_keys.rb +8 -0
  57. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/trace_specs/strings.rb +15 -0
  58. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/examples/trace_specs/strings_spec.rb +15 -0
  59. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/lib/allocation_stats/allocation.rb +159 -0
  60. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/lib/allocation_stats/allocations_proxy.rb +330 -0
  61. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/lib/allocation_stats/core_ext/basic_object.rb +11 -0
  62. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/lib/allocation_stats/trace_rspec.rb +118 -0
  63. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/lib/allocation_stats.rb +153 -0
  64. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/spec/allocation_stats/allocations_proxy_spec.rb +391 -0
  65. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/spec/allocation_stats_spec.rb +74 -0
  66. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/spec/spec_helper.rb +187 -0
  67. data/vendor/bundle/ruby/3.2.0/gems/allocation_stats-0.1.5/spec/trace_rspec_spec.rb +89 -0
  68. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/appraisal.rb +195 -0
  69. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/appraisal_file.rb +51 -0
  70. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/bundler_dsl.rb +164 -0
  71. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/cli.rb +116 -0
  72. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/command.rb +94 -0
  73. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/conditional.rb +20 -0
  74. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/customize.rb +16 -0
  75. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/dependency.rb +53 -0
  76. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/dependency_list.rb +32 -0
  77. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/errors.rb +8 -0
  78. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/gemfile.rb +29 -0
  79. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/gemspec.rb +29 -0
  80. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/git.rb +31 -0
  81. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/group.rb +30 -0
  82. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/path.rb +31 -0
  83. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/platform.rb +30 -0
  84. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/source.rb +30 -0
  85. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/task.rb +54 -0
  86. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/utils.rb +62 -0
  87. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/version.rb +3 -0
  88. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal.rb +4 -0
  89. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/appraisals_file_bundler_dsl_compatibility_spec.rb +152 -0
  90. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/bundle_with_custom_path_spec.rb +53 -0
  91. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/bundle_without_spec.rb +53 -0
  92. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/clean_spec.rb +20 -0
  93. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/generate_spec.rb +34 -0
  94. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/help_spec.rb +24 -0
  95. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/install_spec.rb +132 -0
  96. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/list_spec.rb +28 -0
  97. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/run_spec.rb +56 -0
  98. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/update_spec.rb +44 -0
  99. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/version_spec.rb +27 -0
  100. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/cli/with_no_arguments_spec.rb +16 -0
  101. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/gemfile_dsl_compatibility_spec.rb +178 -0
  102. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/acceptance/gemspec_spec.rb +80 -0
  103. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/appraisal/appraisal_file_spec.rb +14 -0
  104. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/appraisal/appraisal_spec.rb +155 -0
  105. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/appraisal/customize_spec.rb +18 -0
  106. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/appraisal/dependency_list_spec.rb +50 -0
  107. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/appraisal/gemfile_spec.rb +442 -0
  108. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/appraisal/utils_spec.rb +75 -0
  109. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/spec_helper.rb +22 -0
  110. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/support/acceptance_test_helpers.rb +171 -0
  111. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/support/dependency_helpers.rb +60 -0
  112. data/vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/spec/support/stream_helpers.rb +20 -0
  113. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/api/bundler.rb +32 -0
  114. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/api/commands.rb +270 -0
  115. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/api/core.rb +227 -0
  116. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/api/environment.rb +106 -0
  117. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/api/filesystem.rb +425 -0
  118. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/api/text.rb +50 -0
  119. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/api.rb +28 -0
  120. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/aruba_path.rb +70 -0
  121. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/basic_configuration/option.rb +32 -0
  122. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/basic_configuration.rb +199 -0
  123. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cli.rb +29 -0
  124. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/colorizer.rb +19 -0
  125. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/command.rb +78 -0
  126. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/config/jruby.rb +27 -0
  127. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/config_wrapper.rb +73 -0
  128. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/configuration.rb +97 -0
  129. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/console/help.rb +32 -0
  130. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/console.rb +66 -0
  131. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/contracts/absolute_path.rb +20 -0
  132. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/contracts/enum.rb +27 -0
  133. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/contracts/is_power_of_two.rb +22 -0
  134. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/contracts/relative_path.rb +20 -0
  135. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cucumber/command.rb +500 -0
  136. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cucumber/environment.rb +42 -0
  137. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cucumber/file.rb +211 -0
  138. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cucumber/hooks.rb +127 -0
  139. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cucumber/parameter_types.rb +1 -0
  140. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cucumber/testing_frameworks.rb +121 -0
  141. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/cucumber.rb +9 -0
  142. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/errors.rb +37 -0
  143. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/event_bus/name_resolver.rb +158 -0
  144. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/event_bus.rb +61 -0
  145. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/events.rb +40 -0
  146. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/file_size.rb +63 -0
  147. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/generators/script_file.rb +46 -0
  148. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/hooks.rb +54 -0
  149. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/in_config_wrapper.rb +31 -0
  150. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/initializer.rb +218 -0
  151. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/base/message_indenter.rb +19 -0
  152. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command/be_successfully_executed.rb +36 -0
  153. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command/have_exit_status.rb +44 -0
  154. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command/have_finished_in_time.rb +35 -0
  155. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command/have_output.rb +43 -0
  156. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command/have_output_on_stderr.rb +34 -0
  157. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command/have_output_on_stdout.rb +34 -0
  158. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command/have_output_size.rb +28 -0
  159. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/command.rb +1 -0
  160. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/directory/be_an_existing_directory.rb +34 -0
  161. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/directory/have_sub_directory.rb +54 -0
  162. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/directory.rb +1 -0
  163. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/environment.rb +1 -0
  164. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/file/be_a_command_found_in_path.rb +32 -0
  165. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/file/be_an_existing_executable.rb +34 -0
  166. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/file/be_an_existing_file.rb +34 -0
  167. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/file/have_file_content.rb +60 -0
  168. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/file/have_file_size.rb +45 -0
  169. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/file/have_same_file_content.rb +44 -0
  170. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/file.rb +1 -0
  171. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/path/a_path_matching_pattern.rb +21 -0
  172. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/path/be_an_absolute_path.rb +32 -0
  173. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/path/be_an_existing_path.rb +33 -0
  174. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/path/have_permissions.rb +63 -0
  175. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/path.rb +1 -0
  176. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/string/include_output_string.rb +34 -0
  177. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/string/match_output_string.rb +35 -0
  178. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/string/output_string_eq.rb +33 -0
  179. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/matchers/string.rb +1 -0
  180. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platform.rb +17 -0
  181. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/announcer.rb +205 -0
  182. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/aruba_file_creator.rb +33 -0
  183. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/aruba_fixed_size_file_creator.rb +40 -0
  184. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/aruba_logger.rb +98 -0
  185. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/command_monitor.rb +127 -0
  186. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/determine_disk_usage.rb +68 -0
  187. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/determine_file_size.rb +22 -0
  188. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/filesystem_status.rb +70 -0
  189. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/local_environment.rb +29 -0
  190. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/simple_table.rb +46 -0
  191. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/unix_command_string.rb +23 -0
  192. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/unix_environment_variables.rb +205 -0
  193. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/unix_platform.rb +250 -0
  194. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/unix_which.rb +82 -0
  195. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/windows_command_string.rb +20 -0
  196. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/windows_environment_variables.rb +89 -0
  197. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/windows_platform.rb +48 -0
  198. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/platforms/windows_which.rb +107 -0
  199. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/processes/basic_process.rb +146 -0
  200. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/processes/debug_process.rb +80 -0
  201. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/processes/in_process.rb +136 -0
  202. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/processes/spawn_process.rb +368 -0
  203. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/rspec.rb +94 -0
  204. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/runtime.rb +101 -0
  205. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/setup.rb +105 -0
  206. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba/version.rb +3 -0
  207. data/vendor/bundle/ruby/3.2.0/gems/aruba-2.2.0/lib/aruba.rb +1 -0
  208. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/doc/jamis.rb +592 -0
  209. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/blankslate.rb +138 -0
  210. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/builder/blankslate.rb +24 -0
  211. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/builder/version.rb +9 -0
  212. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/builder/xchar.rb +198 -0
  213. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/builder/xmlbase.rb +200 -0
  214. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/builder/xmlevents.rb +64 -0
  215. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/builder/xmlmarkup.rb +345 -0
  216. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/lib/builder.rb +14 -0
  217. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/rakelib/publish.rake +21 -0
  218. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/rakelib/tags.rake +63 -0
  219. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/rakelib/testing.rake +8 -0
  220. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/helper.rb +13 -0
  221. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/performance.rb +42 -0
  222. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/preload.rb +40 -0
  223. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/test_blankslate.rb +208 -0
  224. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/test_eventbuilder.rb +151 -0
  225. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/test_markupbuilder.rb +617 -0
  226. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/test_method_caching.rb +63 -0
  227. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/test_namecollision.rb +40 -0
  228. data/vendor/bundle/ruby/3.2.0/gems/builder-3.2.4/test/test_xchar.rb +85 -0
  229. data/vendor/bundle/ruby/3.2.0/gems/bump-0.10.0/lib/bump/tasks.rb +45 -0
  230. data/vendor/bundle/ruby/3.2.0/gems/bump-0.10.0/lib/bump.rb +312 -0
  231. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/ext/byebug/extconf.rb +12 -0
  232. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/attacher.rb +48 -0
  233. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/breakpoint.rb +111 -0
  234. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/command.rb +111 -0
  235. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/command_list.rb +34 -0
  236. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/break.rb +112 -0
  237. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/catch.rb +78 -0
  238. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/condition.rb +55 -0
  239. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/continue.rb +68 -0
  240. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/debug.rb +38 -0
  241. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/delete.rb +55 -0
  242. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/disable/breakpoints.rb +42 -0
  243. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/disable/display.rb +43 -0
  244. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/disable.rb +33 -0
  245. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/display.rb +66 -0
  246. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/down.rb +45 -0
  247. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/edit.rb +69 -0
  248. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/enable/breakpoints.rb +42 -0
  249. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/enable/display.rb +43 -0
  250. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/enable.rb +33 -0
  251. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/finish.rb +57 -0
  252. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/frame.rb +57 -0
  253. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/help.rb +64 -0
  254. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/history.rb +39 -0
  255. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/info/breakpoints.rb +65 -0
  256. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/info/display.rb +49 -0
  257. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/info/file.rb +80 -0
  258. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/info/line.rb +35 -0
  259. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/info/program.rb +49 -0
  260. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/info.rb +37 -0
  261. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/interrupt.rb +34 -0
  262. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/irb.rb +50 -0
  263. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/kill.rb +45 -0
  264. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/list.rb +159 -0
  265. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/method.rb +53 -0
  266. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/next.rb +40 -0
  267. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/pry.rb +41 -0
  268. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/quit.rb +42 -0
  269. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/restart.rb +64 -0
  270. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/save.rb +72 -0
  271. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/set.rb +79 -0
  272. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/show.rb +45 -0
  273. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/skip.rb +85 -0
  274. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/source.rb +40 -0
  275. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/step.rb +40 -0
  276. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/thread/current.rb +37 -0
  277. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/thread/list.rb +43 -0
  278. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/thread/resume.rb +45 -0
  279. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/thread/stop.rb +43 -0
  280. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/thread/switch.rb +46 -0
  281. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/thread.rb +34 -0
  282. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/tracevar.rb +54 -0
  283. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/undisplay.rb +51 -0
  284. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/untracevar.rb +36 -0
  285. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/up.rb +45 -0
  286. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/var/all.rb +41 -0
  287. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/var/args.rb +39 -0
  288. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/var/const.rb +49 -0
  289. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/var/global.rb +37 -0
  290. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/var/instance.rb +39 -0
  291. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/var/local.rb +39 -0
  292. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/var.rb +37 -0
  293. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands/where.rb +53 -0
  294. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/commands.rb +40 -0
  295. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/context.rb +157 -0
  296. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/core.rb +115 -0
  297. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/errors.rb +29 -0
  298. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/frame.rb +185 -0
  299. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/bin.rb +47 -0
  300. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/eval.rb +126 -0
  301. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/file.rb +63 -0
  302. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/frame.rb +75 -0
  303. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/parse.rb +75 -0
  304. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/path.rb +40 -0
  305. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/reflection.rb +19 -0
  306. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/string.rb +33 -0
  307. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/thread.rb +67 -0
  308. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/toggle.rb +62 -0
  309. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/helpers/var.rb +54 -0
  310. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/history.rb +130 -0
  311. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/interface.rb +146 -0
  312. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/interfaces/local_interface.rb +63 -0
  313. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/interfaces/remote_interface.rb +50 -0
  314. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/interfaces/script_interface.rb +33 -0
  315. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/interfaces/test_interface.rb +67 -0
  316. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/option_setter.rb +95 -0
  317. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/printers/base.rb +68 -0
  318. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/printers/plain.rb +44 -0
  319. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/processors/command_processor.rb +173 -0
  320. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/processors/control_processor.rb +24 -0
  321. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/processors/post_mortem_processor.rb +18 -0
  322. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/processors/script_processor.rb +49 -0
  323. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/remote/client.rb +57 -0
  324. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/remote/server.rb +47 -0
  325. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/remote.rb +85 -0
  326. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/runner.rb +198 -0
  327. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/setting.rb +79 -0
  328. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/autoirb.rb +29 -0
  329. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/autolist.rb +29 -0
  330. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/autopry.rb +29 -0
  331. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/autosave.rb +17 -0
  332. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/basename.rb +16 -0
  333. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/callstyle.rb +20 -0
  334. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/fullpath.rb +16 -0
  335. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/histfile.rb +20 -0
  336. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/histsize.rb +20 -0
  337. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/linetrace.rb +22 -0
  338. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/listsize.rb +21 -0
  339. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/post_mortem.rb +27 -0
  340. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/savefile.rb +20 -0
  341. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/stack_on_error.rb +15 -0
  342. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/settings/width.rb +20 -0
  343. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/source_file_formatter.rb +71 -0
  344. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/subcommands.rb +54 -0
  345. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/version.rb +8 -0
  346. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug.rb +3 -0
  347. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/features/step_definitions/assertions.rb +152 -0
  348. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/features/step_definitions/cap_commands.rb +21 -0
  349. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/features/step_definitions/setup.rb +94 -0
  350. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/features/support/env.rb +11 -0
  351. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/features/support/remote_command_helpers.rb +29 -0
  352. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/features/support/vagrant_helpers.rb +41 -0
  353. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/all.rb +17 -0
  354. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/application.rb +153 -0
  355. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/empty_filter.rb +9 -0
  356. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/filter.rb +26 -0
  357. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/host_filter.rb +29 -0
  358. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/null_filter.rb +9 -0
  359. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/plugin_installer.rb +51 -0
  360. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/question.rb +76 -0
  361. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/role_filter.rb +29 -0
  362. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/scm_resolver.rb +149 -0
  363. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/server.rb +137 -0
  364. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/servers.rb +76 -0
  365. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/validated_variables.rb +110 -0
  366. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration/variables.rb +112 -0
  367. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/configuration.rb +189 -0
  368. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/console.rb +1 -0
  369. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/defaults.rb +36 -0
  370. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/deploy.rb +3 -0
  371. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/doctor/environment_doctor.rb +19 -0
  372. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/doctor/gems_doctor.rb +45 -0
  373. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/doctor/output_helpers.rb +79 -0
  374. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/doctor/servers_doctor.rb +105 -0
  375. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/doctor/variables_doctor.rb +74 -0
  376. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/doctor.rb +6 -0
  377. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/dotfile.rb +2 -0
  378. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/dsl/env.rb +43 -0
  379. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/dsl/paths.rb +89 -0
  380. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/dsl/stages.rb +31 -0
  381. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/dsl/task_enhancements.rb +61 -0
  382. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/dsl.rb +95 -0
  383. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/framework.rb +2 -0
  384. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/i18n.rb +46 -0
  385. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/immutable_task.rb +30 -0
  386. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/install.rb +1 -0
  387. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/plugin.rb +95 -0
  388. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/proc_helpers.rb +13 -0
  389. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm/git.rb +100 -0
  390. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm/hg.rb +55 -0
  391. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm/plugin.rb +13 -0
  392. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm/svn.rb +56 -0
  393. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm/tasks/git.rake +73 -0
  394. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm/tasks/hg.rake +53 -0
  395. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm/tasks/svn.rake +53 -0
  396. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/scm.rb +115 -0
  397. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/setup.rb +36 -0
  398. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/tasks/console.rake +25 -0
  399. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/tasks/deploy.rake +258 -0
  400. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/tasks/doctor.rake +24 -0
  401. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/tasks/framework.rake +67 -0
  402. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/tasks/install.rake +41 -0
  403. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/upload_task.rb +9 -0
  404. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/version.rb +3 -0
  405. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano/version_validator.rb +32 -0
  406. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/lib/capistrano.rb +0 -0
  407. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/integration/dsl_spec.rb +632 -0
  408. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/integration_spec_helper.rb +5 -0
  409. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/application_spec.rb +60 -0
  410. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/empty_filter_spec.rb +17 -0
  411. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/filter_spec.rb +109 -0
  412. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/host_filter_spec.rb +71 -0
  413. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/null_filter_spec.rb +17 -0
  414. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/plugin_installer_spec.rb +98 -0
  415. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/question_spec.rb +92 -0
  416. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/role_filter_spec.rb +80 -0
  417. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/scm_resolver_spec.rb +55 -0
  418. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/server_spec.rb +309 -0
  419. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration/servers_spec.rb +331 -0
  420. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/configuration_spec.rb +357 -0
  421. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/doctor/environment_doctor_spec.rb +44 -0
  422. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/doctor/gems_doctor_spec.rb +67 -0
  423. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/doctor/output_helpers_spec.rb +47 -0
  424. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/doctor/servers_doctor_spec.rb +86 -0
  425. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/doctor/variables_doctor_spec.rb +89 -0
  426. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/dsl/paths_spec.rb +228 -0
  427. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/dsl/task_enhancements_spec.rb +108 -0
  428. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/dsl_spec.rb +125 -0
  429. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/immutable_task_spec.rb +31 -0
  430. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/plugin_spec.rb +84 -0
  431. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/scm/git_spec.rb +184 -0
  432. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/scm/hg_spec.rb +109 -0
  433. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/scm/svn_spec.rb +137 -0
  434. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/scm_spec.rb +103 -0
  435. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/upload_task_spec.rb +19 -0
  436. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano/version_validator_spec.rb +118 -0
  437. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/lib/capistrano_spec.rb +7 -0
  438. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/spec_helper.rb +29 -0
  439. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/support/matchers.rb +5 -0
  440. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/support/tasks/database.rake +11 -0
  441. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/support/tasks/fail.rake +8 -0
  442. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/support/tasks/failed.rake +5 -0
  443. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/support/tasks/plugin.rake +6 -0
  444. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/support/tasks/root.rake +11 -0
  445. data/vendor/bundle/ruby/3.2.0/gems/capistrano-3.18.0/spec/support/test_app.rb +202 -0
  446. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/duo.rb +81 -0
  447. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/_map.rb +17 -0
  448. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/comment_filter.rb +25 -0
  449. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/count.rb +39 -0
  450. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/debug.rb +49 -0
  451. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/debug_lint.rb +63 -0
  452. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/div.rb +23 -0
  453. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/encoder.rb +190 -0
  454. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/filter.rb +58 -0
  455. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html/css.rb +65 -0
  456. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html/numbering.rb +108 -0
  457. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html/output.rb +164 -0
  458. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/html.rb +333 -0
  459. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/json.rb +83 -0
  460. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/lines_of_code.rb +45 -0
  461. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/lint.rb +59 -0
  462. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/null.rb +18 -0
  463. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/page.rb +24 -0
  464. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/span.rb +23 -0
  465. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/statistic.rb +95 -0
  466. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/terminal.rb +195 -0
  467. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/text.rb +46 -0
  468. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/token_kind_filter.rb +111 -0
  469. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/xml.rb +72 -0
  470. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders/yaml.rb +50 -0
  471. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/encoders.rb +18 -0
  472. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/for_redcloth.rb +95 -0
  473. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/file_type.rb +151 -0
  474. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/plugin.rb +55 -0
  475. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/plugin_host.rb +221 -0
  476. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/helpers/word_list.rb +72 -0
  477. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/_map.rb +24 -0
  478. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/c.rb +189 -0
  479. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/clojure.rb +217 -0
  480. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/cpp.rb +217 -0
  481. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/css.rb +196 -0
  482. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/debug.rb +75 -0
  483. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/delphi.rb +144 -0
  484. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/diff.rb +221 -0
  485. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/erb.rb +81 -0
  486. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/go.rb +208 -0
  487. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/groovy.rb +268 -0
  488. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/haml.rb +168 -0
  489. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/html.rb +275 -0
  490. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/java/builtin_types.rb +421 -0
  491. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/java.rb +174 -0
  492. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/java_script.rb +236 -0
  493. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/json.rb +98 -0
  494. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/lua.rb +280 -0
  495. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/php.rb +527 -0
  496. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/python.rb +287 -0
  497. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/raydebug.rb +75 -0
  498. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/ruby/patterns.rb +178 -0
  499. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/ruby/string_state.rb +79 -0
  500. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/ruby.rb +477 -0
  501. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/sass.rb +232 -0
  502. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/scanner.rb +337 -0
  503. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/sql.rb +169 -0
  504. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/taskpaper.rb +36 -0
  505. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/text.rb +26 -0
  506. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/xml.rb +17 -0
  507. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners/yaml.rb +140 -0
  508. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/scanners.rb +27 -0
  509. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles/_map.rb +7 -0
  510. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles/alpha.rb +153 -0
  511. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles/style.rb +18 -0
  512. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/styles.rb +15 -0
  513. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/token_kinds.rb +85 -0
  514. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/tokens.rb +164 -0
  515. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/tokens_proxy.rb +55 -0
  516. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay/version.rb +3 -0
  517. data/vendor/bundle/ruby/3.2.0/gems/coderay-1.1.3/lib/coderay.rb +284 -0
  518. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/agent.rb +588 -0
  519. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/array.rb +56 -0
  520. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/async.rb +449 -0
  521. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atom.rb +222 -0
  522. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb +127 -0
  523. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb +144 -0
  524. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb +167 -0
  525. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb +135 -0
  526. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/count_down_latch.rb +100 -0
  527. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb +128 -0
  528. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/event.rb +109 -0
  529. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/fiber_local_var.rb +109 -0
  530. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/java_count_down_latch.rb +43 -0
  531. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/locals.rb +189 -0
  532. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/lock_local_var.rb +28 -0
  533. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb +68 -0
  534. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb +81 -0
  535. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb +44 -0
  536. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb +131 -0
  537. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb +255 -0
  538. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb +379 -0
  539. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/semaphore.rb +163 -0
  540. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic/thread_local_var.rb +111 -0
  541. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic_reference/atomic_direct_update.rb +37 -0
  542. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb +67 -0
  543. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb +28 -0
  544. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/atomics.rb +10 -0
  545. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb +107 -0
  546. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb +111 -0
  547. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/java_non_concurrent_priority_queue.rb +84 -0
  548. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb +160 -0
  549. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/map/atomic_reference_map_backend.rb +927 -0
  550. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb +66 -0
  551. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb +148 -0
  552. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb +82 -0
  553. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/map/truffleruby_map_backend.rb +14 -0
  554. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb +143 -0
  555. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb +160 -0
  556. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/concern/deprecation.rb +34 -0
  557. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb +73 -0
  558. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/concern/logging.rb +116 -0
  559. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/concern/obligation.rb +220 -0
  560. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/concern/observable.rb +110 -0
  561. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/configuration.rb +105 -0
  562. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/constants.rb +8 -0
  563. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/dataflow.rb +81 -0
  564. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/delay.rb +199 -0
  565. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/errors.rb +74 -0
  566. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/exchanger.rb +353 -0
  567. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb +131 -0
  568. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb +62 -0
  569. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/executor_service.rb +185 -0
  570. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb +220 -0
  571. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb +66 -0
  572. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb +44 -0
  573. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/java_executor_service.rb +103 -0
  574. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/java_single_thread_executor.rb +30 -0
  575. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/java_thread_pool_executor.rb +140 -0
  576. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb +82 -0
  577. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_single_thread_executor.rb +21 -0
  578. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb +366 -0
  579. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb +35 -0
  580. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb +34 -0
  581. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb +107 -0
  582. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb +28 -0
  583. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb +103 -0
  584. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/single_thread_executor.rb +57 -0
  585. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb +88 -0
  586. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executor/timer_set.rb +172 -0
  587. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/executors.rb +20 -0
  588. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/future.rb +141 -0
  589. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/hash.rb +50 -0
  590. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/immutable_struct.rb +101 -0
  591. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/ivar.rb +208 -0
  592. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/map.rb +350 -0
  593. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/maybe.rb +229 -0
  594. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/mutable_struct.rb +239 -0
  595. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/mvar.rb +242 -0
  596. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/options.rb +42 -0
  597. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/promise.rb +580 -0
  598. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/promises.rb +2168 -0
  599. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/re_include.rb +60 -0
  600. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/scheduled_task.rb +331 -0
  601. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/set.rb +64 -0
  602. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/settable_struct.rb +139 -0
  603. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb +102 -0
  604. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb +22 -0
  605. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb +171 -0
  606. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/condition.rb +62 -0
  607. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/full_memory_barrier.rb +29 -0
  608. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/jruby_lockable_object.rb +15 -0
  609. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/lock.rb +38 -0
  610. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/lockable_object.rb +75 -0
  611. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb +89 -0
  612. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/object.rb +151 -0
  613. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/safe_initialization.rb +36 -0
  614. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization/volatile.rb +101 -0
  615. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/synchronization.rb +13 -0
  616. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb +47 -0
  617. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util/adder.rb +74 -0
  618. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util/cheap_lockable.rb +81 -0
  619. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb +52 -0
  620. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util/power_of_two_tuple.rb +38 -0
  621. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util/striped64.rb +246 -0
  622. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util/volatile.rb +75 -0
  623. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util/xor_shift_random.rb +50 -0
  624. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/thread_safe/util.rb +16 -0
  625. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/timer_task.rb +311 -0
  626. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/tuple.rb +82 -0
  627. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/tvar.rb +222 -0
  628. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/utility/engine.rb +45 -0
  629. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/utility/monotonic_time.rb +19 -0
  630. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb +77 -0
  631. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/utility/native_integer.rb +54 -0
  632. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/utility/processor_counter.rb +110 -0
  633. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent/version.rb +3 -0
  634. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent-ruby.rb +5 -0
  635. data/vendor/bundle/ruby/3.2.0/gems/concurrent-ruby-1.2.2/lib/concurrent-ruby/concurrent.rb +134 -0
  636. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/benchmarks/bench.rb +67 -0
  637. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/benchmarks/hash.rb +69 -0
  638. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/benchmarks/invariants.rb +91 -0
  639. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/benchmarks/io.rb +62 -0
  640. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/benchmarks/wrap_test.rb +57 -0
  641. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/features/support/env.rb +8 -0
  642. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/attrs.rb +26 -0
  643. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/builtin_contracts.rb +575 -0
  644. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/call_with.rb +119 -0
  645. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/core.rb +54 -0
  646. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/decorators.rb +50 -0
  647. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/engine/base.rb +137 -0
  648. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/engine/eigenclass.rb +51 -0
  649. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/engine/target.rb +72 -0
  650. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/engine.rb +28 -0
  651. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/errors.rb +74 -0
  652. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/formatters.rb +140 -0
  653. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/invariants.rb +72 -0
  654. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/method_handler.rb +197 -0
  655. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/method_reference.rb +102 -0
  656. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/support.rb +63 -0
  657. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/validators.rb +143 -0
  658. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts/version.rb +5 -0
  659. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/lib/contracts.rb +290 -0
  660. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/script/rubocop.rb +5 -0
  661. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/attrs_spec.rb +119 -0
  662. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/builtin_contracts_spec.rb +457 -0
  663. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/contracts_spec.rb +773 -0
  664. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/fixtures/fixtures.rb +725 -0
  665. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/invariants_spec.rb +17 -0
  666. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/methods_spec.rb +54 -0
  667. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/module_spec.rb +18 -0
  668. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/override_validators_spec.rb +162 -0
  669. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/ruby_version_specific/contracts_spec_1.9.rb +24 -0
  670. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/ruby_version_specific/contracts_spec_2.0.rb +55 -0
  671. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/ruby_version_specific/contracts_spec_2.1.rb +63 -0
  672. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/spec_helper.rb +102 -0
  673. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/support.rb +10 -0
  674. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/support_spec.rb +21 -0
  675. data/vendor/bundle/ruby/3.2.0/gems/contracts-0.17/spec/validators_spec.rb +47 -0
  676. data/vendor/bundle/ruby/3.2.0/gems/crack-0.4.5/lib/crack/json.rb +98 -0
  677. data/vendor/bundle/ruby/3.2.0/gems/crack-0.4.5/lib/crack/util.rb +17 -0
  678. data/vendor/bundle/ruby/3.2.0/gems/crack-0.4.5/lib/crack/version.rb +3 -0
  679. data/vendor/bundle/ruby/3.2.0/gems/crack-0.4.5/lib/crack/xml.rb +238 -0
  680. data/vendor/bundle/ruby/3.2.0/gems/crack-0.4.5/lib/crack.rb +7 -0
  681. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/cucumber.rb +8 -0
  682. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/cucumber_mixin.rb +133 -0
  683. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/cucumber_rails.rb +8 -0
  684. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/cucumber_rails_rspec.rb +8 -0
  685. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/cucumber_rails_rspec2.rb +8 -0
  686. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/cucumber_rspec.rb +8 -0
  687. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/cucumber_rspec2.rb +8 -0
  688. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/autotest/discover.rb +14 -0
  689. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/cli/configuration.rb +163 -0
  690. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/cli/main.rb +101 -0
  691. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/cli/options.rb +635 -0
  692. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/cli/profile_loader.rb +113 -0
  693. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/cli/rerun_file.rb +31 -0
  694. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/configuration.rb +307 -0
  695. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/constantize.rb +44 -0
  696. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/deprecate.rb +14 -0
  697. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/encoding.rb +7 -0
  698. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/errors.rb +53 -0
  699. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/envelope.rb +11 -0
  700. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/gherkin_source_parsed.rb +13 -0
  701. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/gherkin_source_read.rb +16 -0
  702. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/hook_test_step_created.rb +12 -0
  703. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/step_activated.rb +20 -0
  704. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/step_definition_registered.rb +15 -0
  705. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_case_created.rb +12 -0
  706. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_case_finished.rb +16 -0
  707. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_case_ready.rb +12 -0
  708. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_case_started.rb +13 -0
  709. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_run_finished.rb +12 -0
  710. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_run_started.rb +14 -0
  711. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_step_created.rb +12 -0
  712. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_step_finished.rb +16 -0
  713. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/test_step_started.rb +13 -0
  714. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events/undefined_parameter_type.rb +11 -0
  715. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/events.rb +46 -0
  716. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/file_specs.rb +40 -0
  717. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/activate_steps.rb +75 -0
  718. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/apply_after_hooks.rb +11 -0
  719. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/apply_after_step_hooks.rb +14 -0
  720. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/apply_around_hooks.rb +14 -0
  721. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/apply_before_hooks.rb +11 -0
  722. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/broadcast_test_case_ready_event.rb +12 -0
  723. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/broadcast_test_run_started_event.rb +28 -0
  724. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/gated_receiver.rb +25 -0
  725. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/prepare_world.rb +39 -0
  726. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/quit.rb +25 -0
  727. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/randomizer.rb +45 -0
  728. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/retry.rb +51 -0
  729. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/tag_limits/test_case_index.rb +31 -0
  730. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/tag_limits/verifier.rb +55 -0
  731. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters/tag_limits.rb +44 -0
  732. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/filters.rb +14 -0
  733. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/ansicolor.rb +147 -0
  734. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/ast_lookup.rb +171 -0
  735. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/backtrace_filter.rb +56 -0
  736. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/console.rb +267 -0
  737. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/console_counts.rb +41 -0
  738. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/console_issues.rb +68 -0
  739. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/duration.rb +15 -0
  740. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/duration_extractor.rb +32 -0
  741. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/errors.rb +9 -0
  742. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/fail_fast.rb +23 -0
  743. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/fanout.rb +28 -0
  744. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/html.rb +26 -0
  745. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/http_io.rb +154 -0
  746. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/ignore_missing_messages.rb +19 -0
  747. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/interceptor.rb +75 -0
  748. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/io.rb +80 -0
  749. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/json.rb +333 -0
  750. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/junit.rb +265 -0
  751. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/message.rb +23 -0
  752. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/message_builder.rb +267 -0
  753. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/pretty.rb +475 -0
  754. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/progress.rb +115 -0
  755. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/publish_banner_printer.rb +75 -0
  756. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/query/hook_by_test_step.rb +34 -0
  757. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/query/pickle_by_test.rb +28 -0
  758. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/query/pickle_step_by_test_step.rb +28 -0
  759. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/query/step_definitions_by_test_step.rb +42 -0
  760. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/query/test_case_started_by_test_case.rb +44 -0
  761. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/rerun.rb +53 -0
  762. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/stepdefs.rb +15 -0
  763. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/steps.rb +52 -0
  764. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/summary.rb +66 -0
  765. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/unicode.rb +52 -0
  766. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/url_reporter.rb +19 -0
  767. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/formatter/usage.rb +147 -0
  768. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/gherkin/data_table_parser.rb +45 -0
  769. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/gherkin/formatter/ansi_escapes.rb +96 -0
  770. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/gherkin/formatter/escaping.rb +19 -0
  771. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/gherkin/i18n.rb +17 -0
  772. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/gherkin/steps_parser.rb +42 -0
  773. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/dsl.rb +154 -0
  774. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/hook.rb +70 -0
  775. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/invoke_in_world.rb +65 -0
  776. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/proto_world.rb +210 -0
  777. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/registry_and_more.rb +236 -0
  778. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/registry_wrapper.rb +31 -0
  779. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/snippet.rb +207 -0
  780. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/step_definition.rb +168 -0
  781. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/glue/world_factory.rb +23 -0
  782. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/hooks.rb +111 -0
  783. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/load_path.rb +15 -0
  784. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +157 -0
  785. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/multiline_argument/data_table.rb +626 -0
  786. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/multiline_argument/doc_string.rb +11 -0
  787. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/multiline_argument.rb +60 -0
  788. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/platform.rb +22 -0
  789. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/project_initializer.rb +44 -0
  790. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/rake/task.rb +181 -0
  791. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/rspec/disable_option_parser.rb +29 -0
  792. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/rspec/doubles.rb +19 -0
  793. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/running_test_case.rb +61 -0
  794. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/after_hooks.rb +31 -0
  795. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/before_hooks.rb +33 -0
  796. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/for_programming_languages.rb +34 -0
  797. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/meta_message_builder.rb +108 -0
  798. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/step_hooks.rb +30 -0
  799. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/support_code.rb +153 -0
  800. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/user_interface.rb +69 -0
  801. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime.rb +285 -0
  802. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/step_definition_light.rb +24 -0
  803. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/step_definitions.rb +15 -0
  804. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/step_match.rb +154 -0
  805. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/step_match_search.rb +68 -0
  806. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/term/ansicolor.rb +135 -0
  807. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/term/banner.rb +59 -0
  808. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/unit.rb +13 -0
  809. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber.rb +27 -0
  810. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/simplecov_setup.rb +20 -0
  811. data/vendor/bundle/ruby/3.2.0/gems/cucumber-ci-environment-9.2.0/lib/cucumber/ci_environment/variable_expression.rb +41 -0
  812. data/vendor/bundle/ruby/3.2.0/gems/cucumber-ci-environment-9.2.0/lib/cucumber/ci_environment.rb +80 -0
  813. data/vendor/bundle/ruby/3.2.0/gems/cucumber-ci-environment-9.2.0/spec/capture_warnings.rb +74 -0
  814. data/vendor/bundle/ruby/3.2.0/gems/cucumber-ci-environment-9.2.0/spec/cucumber/ci_environment/ci_environment_spec.rb +29 -0
  815. data/vendor/bundle/ruby/3.2.0/gems/cucumber-ci-environment-9.2.0/spec/cucumber/ci_environment/evaluate_variable_expression_spec.rb +38 -0
  816. data/vendor/bundle/ruby/3.2.0/gems/cucumber-ci-environment-9.2.0/spec/cucumber/ci_environment/github_pull_request_integration_spec.rb +10 -0
  817. data/vendor/bundle/ruby/3.2.0/gems/cucumber-ci-environment-9.2.0/spec/cucumber/ci_environment/remove_userinfo_from_url_spec.rb +29 -0
  818. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/compiler.rb +91 -0
  819. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/event.rb +61 -0
  820. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/event_bus.rb +73 -0
  821. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/events.rb +102 -0
  822. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/filter.rb +84 -0
  823. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/gherkin/document.rb +25 -0
  824. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/gherkin/parser.rb +52 -0
  825. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/gherkin/writer/helpers.rb +174 -0
  826. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/gherkin/writer.rb +259 -0
  827. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/platform.rb +16 -0
  828. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/report/summary.rb +39 -0
  829. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/action.rb +84 -0
  830. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/around_hook.rb +36 -0
  831. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/case.rb +100 -0
  832. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/data_table.rb +117 -0
  833. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/doc_string.rb +78 -0
  834. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/empty_multiline_argument.rb +32 -0
  835. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/filters/activate_steps_for_self_test.rb +35 -0
  836. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/filters/locations_filter.rb +40 -0
  837. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/filters/name_filter.rb +24 -0
  838. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/filters/tag_filter.rb +49 -0
  839. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/filters.rb +4 -0
  840. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/location.rb +187 -0
  841. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/result.rb +436 -0
  842. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/runner.rb +157 -0
  843. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/step.rb +74 -0
  844. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/tag.rb +21 -0
  845. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core/test/timer.rb +52 -0
  846. data/vendor/bundle/ruby/3.2.0/gems/cucumber-core-12.0.0/lib/cucumber/core.rb +45 -0
  847. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/argument.rb +41 -0
  848. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/ast.rb +166 -0
  849. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/combinatorial_generated_expression_factory.rb +42 -0
  850. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/cucumber_expression.rb +121 -0
  851. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/cucumber_expression_generator.rb +93 -0
  852. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/cucumber_expression_parser.rb +203 -0
  853. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/cucumber_expression_tokenizer.rb +90 -0
  854. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/errors.rb +232 -0
  855. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/expression_factory.rb +24 -0
  856. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/generated_expression.rb +33 -0
  857. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/group.rb +20 -0
  858. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/group_builder.rb +44 -0
  859. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/parameter_type.rb +76 -0
  860. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/parameter_type_matcher.rb +61 -0
  861. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/parameter_type_registry.rb +82 -0
  862. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/regular_expression.rb +49 -0
  863. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/tree_regexp.rb +84 -0
  864. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/argument_spec.rb +19 -0
  865. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/combinatorial_generated_expression_factory_test.rb +44 -0
  866. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_generator_spec.rb +234 -0
  867. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_parser_spec.rb +25 -0
  868. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +178 -0
  869. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_tokenizer_spec.rb +25 -0
  870. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_transformation_spec.rb +29 -0
  871. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/custom_parameter_type_spec.rb +216 -0
  872. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/expression_factory_spec.rb +21 -0
  873. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/parameter_type_registry_spec.rb +81 -0
  874. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/parameter_type_spec.rb +18 -0
  875. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +93 -0
  876. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/tree_regexp_spec.rb +187 -0
  877. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/ast_builder.rb +262 -0
  878. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/ast_node.rb +30 -0
  879. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/dialect.rb +63 -0
  880. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/errors.rb +47 -0
  881. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/gherkin_line.rb +109 -0
  882. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/parser.rb +3897 -0
  883. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/pickles/compiler.rb +201 -0
  884. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/query.rb +65 -0
  885. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/stream/parser_message_stream.rb +99 -0
  886. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/token.rb +18 -0
  887. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/token_formatter_builder.rb +39 -0
  888. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/token_matcher.rb +200 -0
  889. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin/token_scanner.rb +40 -0
  890. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/lib/gherkin.rb +39 -0
  891. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/spec/capture_warnings.rb +74 -0
  892. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/spec/gherkin/dialect_spec.rb +13 -0
  893. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/spec/gherkin/gherkin_line_spec.rb +36 -0
  894. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/spec/gherkin/gherkin_spec.rb +45 -0
  895. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/spec/gherkin/parser_spec.rb +10 -0
  896. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/spec/gherkin/query_spec.rb +157 -0
  897. data/vendor/bundle/ruby/3.2.0/gems/cucumber-gherkin-26.2.0/spec/gherkin/stream/parser_message_stream_spec.rb +67 -0
  898. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/lib/cucumber/html_formatter/assets_loader.rb +34 -0
  899. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/lib/cucumber/html_formatter/template_writer.rb +20 -0
  900. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/lib/cucumber/html_formatter.rb +69 -0
  901. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/spec/acceptance_spec.rb +33 -0
  902. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/spec/capture_warnings.rb +74 -0
  903. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/spec/html-formatter/assets_loader_spec.rb +30 -0
  904. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/spec/html-formatter/template_writer_spec.rb +30 -0
  905. data/vendor/bundle/ruby/3.2.0/gems/cucumber-html-formatter-20.4.0/spec/html_formatter_spec.rb +87 -0
  906. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages/id_generator.rb +24 -0
  907. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages/message/deserialization.rb +39 -0
  908. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages/message/serialization.rb +73 -0
  909. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages/message/utils.rb +46 -0
  910. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages/message.rb +11 -0
  911. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages/ndjson_to_message_enumerator.rb +21 -0
  912. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages/time_conversion.rb +33 -0
  913. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages.deserializers.rb +1207 -0
  914. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages.dtos.rb +2000 -0
  915. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/lib/cucumber/messages.rb +10 -0
  916. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/capture_warnings.rb +74 -0
  917. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/acceptance_spec.rb +33 -0
  918. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/id_generator_spec.rb +29 -0
  919. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/message/deserialization_spec.rb +30 -0
  920. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/message/dummy_messages.rb +38 -0
  921. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/message/serialization_spec.rb +89 -0
  922. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/message/utils_spec.rb +30 -0
  923. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/ndjson_serialization_spec.rb +56 -0
  924. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/time_conversion_spec.rb +41 -0
  925. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/version_spec.rb +11 -0
  926. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/lib/cucumber/tag_expressions/expressions.rb +84 -0
  927. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/lib/cucumber/tag_expressions/parser.rb +166 -0
  928. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/lib/cucumber/tag_expressions.rb +1 -0
  929. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/errors_spec.rb +13 -0
  930. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/evaluations_spec.rb +17 -0
  931. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/parsing_spec.rb +14 -0
  932. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/array.rb +7 -0
  933. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/backports.rb +9 -0
  934. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/block.rb +37 -0
  935. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/callbacks.rb +325 -0
  936. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/change.rb +174 -0
  937. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/htmldiff.rb +150 -0
  938. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/hunk.rb +358 -0
  939. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/internals.rb +308 -0
  940. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/ldiff.rb +171 -0
  941. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs/string.rb +5 -0
  942. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff/lcs.rb +739 -0
  943. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/lib/diff-lcs.rb +3 -0
  944. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/change_spec.rb +89 -0
  945. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/diff_spec.rb +51 -0
  946. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/hunk_spec.rb +83 -0
  947. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/issues_spec.rb +154 -0
  948. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/lcs_spec.rb +56 -0
  949. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/ldiff_spec.rb +87 -0
  950. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/patch_spec.rb +416 -0
  951. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/sdiff_spec.rb +214 -0
  952. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/spec_helper.rb +374 -0
  953. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/traverse_balanced_spec.rb +310 -0
  954. data/vendor/bundle/ruby/3.2.0/gems/diff-lcs-1.5.0/spec/traverse_sequences_spec.rb +137 -0
  955. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/ext/ffi_c/extconf.rb +115 -0
  956. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/abstract_memory.rb +44 -0
  957. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/autopointer.rb +188 -0
  958. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/buffer.rb +4 -0
  959. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/callback.rb +4 -0
  960. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/compat.rb +43 -0
  961. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/data_converter.rb +67 -0
  962. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/dynamic_library.rb +89 -0
  963. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/enum.rb +303 -0
  964. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/errno.rb +43 -0
  965. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/ffi.rb +50 -0
  966. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/function.rb +71 -0
  967. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/io.rb +62 -0
  968. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/library.rb +576 -0
  969. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/library_path.rb +109 -0
  970. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/managedstruct.rb +84 -0
  971. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/memorypointer.rb +1 -0
  972. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/platform.rb +187 -0
  973. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/pointer.rb +167 -0
  974. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/struct.rb +317 -0
  975. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/struct_by_reference.rb +72 -0
  976. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/struct_layout.rb +96 -0
  977. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/struct_layout_builder.rb +227 -0
  978. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/tools/const_generator.rb +232 -0
  979. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/tools/generator.rb +105 -0
  980. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/tools/generator_task.rb +32 -0
  981. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/tools/struct_generator.rb +195 -0
  982. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/tools/types_generator.rb +137 -0
  983. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/types.rb +220 -0
  984. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/union.rb +43 -0
  985. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/variadic.rb +80 -0
  986. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi/version.rb +3 -0
  987. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi.rb +27 -0
  988. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/rakelib/ffi_gem_helper.rb +65 -0
  989. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/getlogin.rb +8 -0
  990. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/getpid.rb +8 -0
  991. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/gettimeofday.rb +18 -0
  992. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/hello.rb +8 -0
  993. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/hello_ractor.rb +11 -0
  994. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/inotify.rb +60 -0
  995. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/pty.rb +75 -0
  996. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/qsort.rb +20 -0
  997. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/samples/qsort_ractor.rb +28 -0
  998. data/vendor/bundle/ruby/3.2.0/gems/formatador-1.1.0/lib/formatador/progressbar.rb +91 -0
  999. data/vendor/bundle/ruby/3.2.0/gems/formatador-1.1.0/lib/formatador/table.rb +105 -0
  1000. data/vendor/bundle/ruby/3.2.0/gems/formatador-1.1.0/lib/formatador.rb +140 -0
  1001. data/vendor/bundle/ruby/3.2.0/gems/formatador-1.1.0/tests/basic_tests.rb +29 -0
  1002. data/vendor/bundle/ruby/3.2.0/gems/formatador-1.1.0/tests/table_tests.rb +145 -0
  1003. data/vendor/bundle/ruby/3.2.0/gems/formatador-1.1.0/tests/tests_helper.rb +27 -0
  1004. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/aruba_adapter.rb +59 -0
  1005. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/cli/environments/bundler.rb +22 -0
  1006. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/cli/environments/evaluate_only.rb +35 -0
  1007. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/cli/environments/valid.rb +69 -0
  1008. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/cli.rb +200 -0
  1009. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commander.rb +104 -0
  1010. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commands/all.rb +37 -0
  1011. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commands/change.rb +31 -0
  1012. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commands/notification.rb +26 -0
  1013. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commands/pause.rb +29 -0
  1014. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commands/reload.rb +36 -0
  1015. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commands/scope.rb +38 -0
  1016. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/commands/show.rb +24 -0
  1017. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/config.rb +18 -0
  1018. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/deprecated/dsl.rb +45 -0
  1019. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/deprecated/evaluator.rb +39 -0
  1020. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/deprecated/guard.rb +328 -0
  1021. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/deprecated/guardfile.rb +84 -0
  1022. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/deprecated/watcher.rb +27 -0
  1023. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/dsl.rb +438 -0
  1024. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/dsl_describer.rb +160 -0
  1025. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/dsl_reader.rb +51 -0
  1026. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/group.rb +64 -0
  1027. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/guardfile/evaluator.rb +232 -0
  1028. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/guardfile/generator.rb +128 -0
  1029. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/guardfile.rb +37 -0
  1030. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/interactor.rb +53 -0
  1031. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/debugging.rb +68 -0
  1032. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/groups.rb +40 -0
  1033. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/helpers.rb +13 -0
  1034. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/plugins.rb +53 -0
  1035. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/queue.rb +51 -0
  1036. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/scope.rb +121 -0
  1037. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/session.rb +180 -0
  1038. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/state.rb +25 -0
  1039. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/tracing.rb +33 -0
  1040. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/internals/traps.rb +10 -0
  1041. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/jobs/base.rb +21 -0
  1042. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/jobs/pry_wrapper.rb +336 -0
  1043. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/jobs/sleep.rb +26 -0
  1044. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/notifier.rb +71 -0
  1045. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/options.rb +22 -0
  1046. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/plugin.rb +303 -0
  1047. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/plugin_util.rb +191 -0
  1048. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/rake_task.rb +42 -0
  1049. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/runner.rb +128 -0
  1050. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/terminal.rb +13 -0
  1051. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/ui/colors.rb +56 -0
  1052. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/ui/config.rb +70 -0
  1053. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/ui/logger.rb +30 -0
  1054. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/ui.rb +262 -0
  1055. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/version.rb +3 -0
  1056. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/watcher/pattern/deprecated_regexp.rb +45 -0
  1057. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/watcher/pattern/match_result.rb +18 -0
  1058. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/watcher/pattern/matcher.rb +33 -0
  1059. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/watcher/pattern/pathname_path.rb +15 -0
  1060. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/watcher/pattern/simple_path.rb +23 -0
  1061. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/watcher/pattern.rb +24 -0
  1062. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard/watcher.rb +88 -0
  1063. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/guard.rb +169 -0
  1064. data/vendor/bundle/ruby/3.2.0/gems/guard-2.18.1/lib/tasks/releaser.rb +116 -0
  1065. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/lib/guard/compat/example.rb +34 -0
  1066. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/lib/guard/compat/plugin.rb +124 -0
  1067. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/lib/guard/compat/test/helper.rb +36 -0
  1068. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/lib/guard/compat/test/template.rb +68 -0
  1069. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/lib/guard/compat/version.rb +5 -0
  1070. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/lib/guard/compat.rb +7 -0
  1071. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/spec/guard/compat/example_spec.rb +53 -0
  1072. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/spec/guard/compat/example_template_spec.rb +30 -0
  1073. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/spec/guard/compat/no_guard_spec.rb +63 -0
  1074. data/vendor/bundle/ruby/3.2.0/gems/guard-compat-1.2.1/spec/spec_helper.rb +73 -0
  1075. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/command.rb +71 -0
  1076. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/deprecator.rb +86 -0
  1077. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/dsl.rb +72 -0
  1078. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/inspectors/base_inspector.rb +73 -0
  1079. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/inspectors/factory.rb +23 -0
  1080. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/inspectors/focused_inspector.rb +39 -0
  1081. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/inspectors/keeping_inspector.rb +97 -0
  1082. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/inspectors/simple_inspector.rb +21 -0
  1083. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/notifier.rb +55 -0
  1084. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/options.rb +37 -0
  1085. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/results.rb +23 -0
  1086. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/rspec_process.rb +93 -0
  1087. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/runner.rb +100 -0
  1088. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec/version.rb +5 -0
  1089. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec.rb +51 -0
  1090. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec_defaults.rb +5 -0
  1091. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec_formatter.rb +147 -0
  1092. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/lib/guard/rspec_formatter_results_path.rb +29 -0
  1093. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/acceptance/fixtures/succeeding_spec.rb +4 -0
  1094. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/acceptance/formatter_spec.rb +46 -0
  1095. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/command_spec.rb +95 -0
  1096. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/deprecator_spec.rb +101 -0
  1097. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/inspectors/base_inspector_spec.rb +144 -0
  1098. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/inspectors/factory_spec.rb +45 -0
  1099. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/inspectors/focused_inspector_spec.rb +140 -0
  1100. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/inspectors/keeping_inspector_spec.rb +200 -0
  1101. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/inspectors/shared_examples.rb +121 -0
  1102. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/inspectors/simple_inspector_spec.rb +59 -0
  1103. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/notifier_spec.rb +90 -0
  1104. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/results_spec.rb +66 -0
  1105. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/rspec_process_spec.rb +152 -0
  1106. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/runner_spec.rb +372 -0
  1107. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec/template_spec.rb +78 -0
  1108. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec_formatter_spec.rb +277 -0
  1109. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/lib/guard/rspec_spec.rb +91 -0
  1110. data/vendor/bundle/ruby/3.2.0/gems/guard-rspec-4.7.3/spec/spec_helper.rb +145 -0
  1111. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/compare_hashes.rb +69 -0
  1112. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/diff.rb +177 -0
  1113. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/lcs.rb +66 -0
  1114. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/lcs_compare_arrays.rb +32 -0
  1115. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/linear_compare_array.rb +159 -0
  1116. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/patch.rb +88 -0
  1117. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/util.rb +155 -0
  1118. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff/version.rb +5 -0
  1119. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/lib/hashdiff.rb +10 -0
  1120. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/best_diff_spec.rb +75 -0
  1121. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/diff_array_spec.rb +60 -0
  1122. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/diff_spec.rb +360 -0
  1123. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/lcs_spec.rb +76 -0
  1124. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/linear_compare_array_spec.rb +50 -0
  1125. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/patch_spec.rb +185 -0
  1126. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/readme_spec.rb +15 -0
  1127. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/hashdiff/util_spec.rb +116 -0
  1128. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.0.1/spec/spec_helper.rb +15 -0
  1129. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/base.rb +304 -0
  1130. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/cache.rb +113 -0
  1131. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/cache_file.rb +36 -0
  1132. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/cascade.rb +56 -0
  1133. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/chain.rb +130 -0
  1134. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/fallbacks.rb +115 -0
  1135. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/flatten.rb +118 -0
  1136. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/gettext.rb +83 -0
  1137. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/interpolation_compiler.rb +123 -0
  1138. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/key_value.rb +204 -0
  1139. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/lazy_loadable.rb +184 -0
  1140. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/memoize.rb +54 -0
  1141. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/metadata.rb +71 -0
  1142. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/pluralization.rb +96 -0
  1143. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/simple.rb +113 -0
  1144. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend/transliterator.rb +108 -0
  1145. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/backend.rb +22 -0
  1146. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/config.rb +165 -0
  1147. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/exceptions.rb +157 -0
  1148. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/gettext/helpers.rb +75 -0
  1149. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/gettext/po_parser.rb +329 -0
  1150. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/gettext.rb +28 -0
  1151. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/interpolate/ruby.rb +53 -0
  1152. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/locale/fallbacks.rb +97 -0
  1153. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/locale/tag/parents.rb +24 -0
  1154. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/locale/tag/rfc4646.rb +74 -0
  1155. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/locale/tag/simple.rb +39 -0
  1156. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/locale/tag.rb +28 -0
  1157. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/locale.rb +8 -0
  1158. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/middleware.rb +17 -0
  1159. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/basics.rb +58 -0
  1160. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/defaults.rb +52 -0
  1161. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/interpolation.rb +163 -0
  1162. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/link.rb +66 -0
  1163. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/localization/date.rb +122 -0
  1164. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/localization/date_time.rb +103 -0
  1165. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/localization/procs.rb +118 -0
  1166. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/localization/time.rb +103 -0
  1167. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/localization.rb +19 -0
  1168. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/lookup.rb +81 -0
  1169. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/pluralization.rb +35 -0
  1170. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests/procs.rb +66 -0
  1171. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/tests.rb +14 -0
  1172. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/utils.rb +55 -0
  1173. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n/version.rb +5 -0
  1174. data/vendor/bundle/ruby/3.2.0/gems/i18n-1.14.1/lib/i18n.rb +435 -0
  1175. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter/base.rb +129 -0
  1176. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter/bsd.rb +107 -0
  1177. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter/config.rb +31 -0
  1178. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb +77 -0
  1179. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter/linux.rb +108 -0
  1180. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter/polling.rb +40 -0
  1181. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter/windows.rb +96 -0
  1182. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/adapter.rb +43 -0
  1183. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/backend.rb +40 -0
  1184. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/change.rb +69 -0
  1185. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/cli.rb +65 -0
  1186. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/directory.rb +93 -0
  1187. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/error.rb +11 -0
  1188. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/event/config.rb +40 -0
  1189. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/event/loop.rb +94 -0
  1190. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/event/processor.rb +126 -0
  1191. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/event/queue.rb +54 -0
  1192. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/file.rb +95 -0
  1193. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/fsm.rb +133 -0
  1194. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/listener/config.rb +41 -0
  1195. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/listener.rb +136 -0
  1196. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/logger.rb +36 -0
  1197. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/monotonic_time.rb +27 -0
  1198. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/options.rb +26 -0
  1199. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/queue_optimizer.rb +129 -0
  1200. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/record/entry.rb +66 -0
  1201. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/record/symlink_detector.rb +41 -0
  1202. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/record.rb +123 -0
  1203. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/silencer/controller.rb +50 -0
  1204. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/silencer.rb +106 -0
  1205. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/thread.rb +54 -0
  1206. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen/version.rb +5 -0
  1207. data/vendor/bundle/ruby/3.2.0/gems/listen-3.8.0/lib/listen.rb +47 -0
  1208. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/context.rb +48 -0
  1209. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device/date_rolling_log_file.rb +74 -0
  1210. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device/log_file.rb +40 -0
  1211. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device/multi.rb +47 -0
  1212. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device/null.rb +15 -0
  1213. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device/rolling_log_file.rb +145 -0
  1214. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device/size_rolling_log_file.rb +63 -0
  1215. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device/writer.rb +202 -0
  1216. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/device.rb +57 -0
  1217. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/date_time_formatter.rb +26 -0
  1218. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/exception_formatter.rb +39 -0
  1219. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/id_formatter.rb +24 -0
  1220. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/inspect_formatter.rb +12 -0
  1221. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/object_formatter.rb +12 -0
  1222. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/pretty_print_formatter.rb +27 -0
  1223. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/string_formatter.rb +12 -0
  1224. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/strip_formatter.rb +12 -0
  1225. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/structured_formatter.rb +65 -0
  1226. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter/truncate_formatter.rb +27 -0
  1227. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/formatter.rb +198 -0
  1228. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/log_entry.rb +74 -0
  1229. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/logger.rb +645 -0
  1230. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/rack/context.rb +18 -0
  1231. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/rack/request_id.rb +27 -0
  1232. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/rack/unit_of_work.rb +17 -0
  1233. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/rack.rb +9 -0
  1234. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/severity.rb +46 -0
  1235. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/tag_formatter.rb +115 -0
  1236. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/tagged_logger_support.rb +66 -0
  1237. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/tagged_logging.rb +29 -0
  1238. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/tags.rb +48 -0
  1239. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack/template.rb +133 -0
  1240. data/vendor/bundle/ruby/3.2.0/gems/lumberjack-1.2.10/lib/lumberjack.rb +111 -0
  1241. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.0.0/lib/method_source/code_helpers.rb +154 -0
  1242. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.0.0/lib/method_source/source_location.rb +138 -0
  1243. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.0.0/lib/method_source/version.rb +3 -0
  1244. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.0.0/lib/method_source.rb +141 -0
  1245. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.0.0/spec/method_source/code_helpers_spec.rb +43 -0
  1246. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.0.0/spec/method_source_spec.rb +143 -0
  1247. data/vendor/bundle/ruby/3.2.0/gems/method_source-1.0.0/spec/spec_helper.rb +101 -0
  1248. data/vendor/bundle/ruby/3.2.0/gems/mini_mime-1.1.5/bench/bench.rb +51 -0
  1249. data/vendor/bundle/ruby/3.2.0/gems/mini_mime-1.1.5/lib/mini_mime/version.rb +4 -0
  1250. data/vendor/bundle/ruby/3.2.0/gems/mini_mime-1.1.5/lib/mini_mime.rb +186 -0
  1251. data/vendor/bundle/ruby/3.2.0/gems/multi_test-1.1.0/lib/multi_test/assertion_library.rb +73 -0
  1252. data/vendor/bundle/ruby/3.2.0/gems/multi_test-1.1.0/lib/multi_test/minitest_world.rb +10 -0
  1253. data/vendor/bundle/ruby/3.2.0/gems/multi_test-1.1.0/lib/multi_test.rb +33 -0
  1254. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/autoenvironment.rb +9 -0
  1255. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/builder.rb +9 -0
  1256. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/environment/dumper/default.rb +9 -0
  1257. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/environment/dumper.rb +15 -0
  1258. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/environment/loader/default.rb +9 -0
  1259. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/environment/loader/predicate.rb +18 -0
  1260. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/environment/loader.rb +20 -0
  1261. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/environment.rb +81 -0
  1262. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv/version.rb +3 -0
  1263. data/vendor/bundle/ruby/3.2.0/gems/nenv-0.3.0/lib/nenv.rb +30 -0
  1264. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/lib/net/scp/download.rb +165 -0
  1265. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/lib/net/scp/errors.rb +5 -0
  1266. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/lib/net/scp/upload.rb +142 -0
  1267. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/lib/net/scp/version.rb +68 -0
  1268. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/lib/net/scp.rb +448 -0
  1269. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/lib/uri/open-scp.rb +20 -0
  1270. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/lib/uri/scp.rb +35 -0
  1271. data/vendor/bundle/ruby/3.2.0/gems/net-scp-4.0.0/setup.rb +1331 -0
  1272. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/agent.rb +284 -0
  1273. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/certificate.rb +183 -0
  1274. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/constants.rb +20 -0
  1275. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/ed25519.rb +186 -0
  1276. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/ed25519_loader.rb +31 -0
  1277. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/key_manager.rb +310 -0
  1278. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/methods/abstract.rb +79 -0
  1279. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/methods/hostbased.rb +72 -0
  1280. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/methods/keyboard_interactive.rb +77 -0
  1281. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/methods/none.rb +34 -0
  1282. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/methods/password.rb +80 -0
  1283. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/methods/publickey.rb +137 -0
  1284. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/pageant.rb +497 -0
  1285. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/pub_key_fingerprint.rb +43 -0
  1286. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/authentication/session.rb +165 -0
  1287. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/buffer.rb +449 -0
  1288. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/buffered_io.rb +202 -0
  1289. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/config.rb +406 -0
  1290. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/connection/channel.rb +694 -0
  1291. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/connection/constants.rb +33 -0
  1292. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/connection/event_loop.rb +123 -0
  1293. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/connection/keepalive.rb +59 -0
  1294. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/connection/session.rb +712 -0
  1295. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/connection/term.rb +180 -0
  1296. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/errors.rb +106 -0
  1297. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/key_factory.rb +218 -0
  1298. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/known_hosts.rb +265 -0
  1299. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/loggable.rb +62 -0
  1300. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/packet.rb +106 -0
  1301. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/prompt.rb +62 -0
  1302. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/proxy/command.rb +123 -0
  1303. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/proxy/errors.rb +16 -0
  1304. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/proxy/http.rb +98 -0
  1305. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/proxy/https.rb +50 -0
  1306. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/proxy/jump.rb +54 -0
  1307. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/proxy/socks4.rb +67 -0
  1308. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/proxy/socks5.rb +140 -0
  1309. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/service/forward.rb +426 -0
  1310. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/channel.rb +147 -0
  1311. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/extensions.rb +173 -0
  1312. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/kex.rb +46 -0
  1313. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/local_packet.rb +53 -0
  1314. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/packet.rb +101 -0
  1315. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/remote_packet.rb +40 -0
  1316. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/script.rb +180 -0
  1317. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test/socket.rb +65 -0
  1318. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/test.rb +94 -0
  1319. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/algorithms.rb +524 -0
  1320. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/chacha20_poly1305_cipher.rb +117 -0
  1321. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/chacha20_poly1305_cipher_loader.rb +17 -0
  1322. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/cipher_factory.rb +128 -0
  1323. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/constants.rb +40 -0
  1324. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/ctr.rb +115 -0
  1325. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/abstract.rb +97 -0
  1326. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/md5.rb +10 -0
  1327. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/md5_96.rb +9 -0
  1328. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/none.rb +13 -0
  1329. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/ripemd160.rb +11 -0
  1330. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha1.rb +11 -0
  1331. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha1_96.rb +9 -0
  1332. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha2_256.rb +11 -0
  1333. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha2_256_96.rb +9 -0
  1334. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha2_256_etm.rb +12 -0
  1335. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha2_512.rb +11 -0
  1336. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha2_512_96.rb +9 -0
  1337. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac/sha2_512_etm.rb +12 -0
  1338. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/hmac.rb +47 -0
  1339. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/identity_cipher.rb +65 -0
  1340. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/abstract.rb +130 -0
  1341. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/abstract5656.rb +72 -0
  1342. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/curve25519_sha256.rb +39 -0
  1343. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/curve25519_sha256_loader.rb +30 -0
  1344. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb +37 -0
  1345. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/diffie_hellman_group14_sha256.rb +11 -0
  1346. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb +122 -0
  1347. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb +72 -0
  1348. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb +11 -0
  1349. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb +39 -0
  1350. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb +21 -0
  1351. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb +21 -0
  1352. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/kex.rb +31 -0
  1353. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/key_expander.rb +30 -0
  1354. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/openssl.rb +274 -0
  1355. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/openssl_cipher_extensions.rb +8 -0
  1356. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/packet_stream.rb +301 -0
  1357. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/server_version.rb +77 -0
  1358. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/session.rb +354 -0
  1359. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/transport/state.rb +208 -0
  1360. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/verifiers/accept_new.rb +33 -0
  1361. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/verifiers/accept_new_or_local_tunnel.rb +33 -0
  1362. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/verifiers/always.rb +58 -0
  1363. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/verifiers/never.rb +19 -0
  1364. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh/version.rb +68 -0
  1365. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/lib/net/ssh.rb +336 -0
  1366. data/vendor/bundle/ruby/3.2.0/gems/net-ssh-7.2.0/support/ssh_tunnel_bug.rb +65 -0
  1367. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/base.rb +127 -0
  1368. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/config.rb +34 -0
  1369. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/detected.rb +122 -0
  1370. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/emacs/client.rb +52 -0
  1371. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/emacs.rb +97 -0
  1372. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/file.rb +44 -0
  1373. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/gntp.rb +92 -0
  1374. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/growl.rb +82 -0
  1375. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/libnotify.rb +54 -0
  1376. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/notifysend.rb +91 -0
  1377. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/rb_notifu.rb +89 -0
  1378. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/terminal_notifier.rb +59 -0
  1379. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/terminal_title.rb +39 -0
  1380. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/tmux/client.rb +107 -0
  1381. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/tmux/notification.rb +62 -0
  1382. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/tmux/session.rb +40 -0
  1383. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier/tmux.rb +132 -0
  1384. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/notifier.rb +210 -0
  1385. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany/version.rb +3 -0
  1386. data/vendor/bundle/ruby/3.2.0/gems/notiffany-0.1.3/lib/notiffany.rb +6 -0
  1387. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/basic_object.rb +10 -0
  1388. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/block_command.rb +22 -0
  1389. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/class_command.rb +194 -0
  1390. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/cli.rb +207 -0
  1391. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/code/code_file.rb +114 -0
  1392. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/code/code_range.rb +73 -0
  1393. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/code/loc.rb +105 -0
  1394. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/code.rb +357 -0
  1395. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/code_object.rb +197 -0
  1396. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/color_printer.rb +66 -0
  1397. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/command.rb +520 -0
  1398. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/command_set.rb +418 -0
  1399. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/command_state.rb +31 -0
  1400. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/amend_line.rb +103 -0
  1401. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/bang.rb +24 -0
  1402. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/bang_pry.rb +21 -0
  1403. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/cat/abstract_formatter.rb +32 -0
  1404. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/cat/exception_formatter.rb +90 -0
  1405. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/cat/file_formatter.rb +77 -0
  1406. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/cat/input_expression_formatter.rb +48 -0
  1407. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/cat.rb +70 -0
  1408. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/cd.rb +46 -0
  1409. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/change_inspector.rb +34 -0
  1410. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/change_prompt.rb +51 -0
  1411. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/clear_screen.rb +20 -0
  1412. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/code_collector.rb +182 -0
  1413. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/disable_pry.rb +31 -0
  1414. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/easter_eggs.rb +101 -0
  1415. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/edit/exception_patcher.rb +29 -0
  1416. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/edit/file_and_line_locator.rb +47 -0
  1417. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/edit.rb +223 -0
  1418. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/exit.rb +47 -0
  1419. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/exit_all.rb +33 -0
  1420. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/exit_program.rb +27 -0
  1421. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/find_method.rb +199 -0
  1422. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/fix_indent.rb +23 -0
  1423. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/help.rb +171 -0
  1424. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/hist.rb +182 -0
  1425. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/import_set.rb +27 -0
  1426. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/jump_to.rb +33 -0
  1427. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/list_inspectors.rb +42 -0
  1428. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/constants.rb +75 -0
  1429. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/formatter.rb +55 -0
  1430. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/globals.rb +50 -0
  1431. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/grep.rb +23 -0
  1432. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/instance_vars.rb +40 -0
  1433. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/interrogatable.rb +24 -0
  1434. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/jruby_hacks.rb +55 -0
  1435. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/local_names.rb +37 -0
  1436. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/local_vars.rb +47 -0
  1437. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/ls_entity.rb +65 -0
  1438. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/methods.rb +55 -0
  1439. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/methods_helper.rb +50 -0
  1440. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls/self_methods.rb +34 -0
  1441. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ls.rb +135 -0
  1442. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/nesting.rb +29 -0
  1443. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/play.rb +113 -0
  1444. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/pry_backtrace.rb +30 -0
  1445. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/pry_version.rb +21 -0
  1446. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/raise_up.rb +38 -0
  1447. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/reload_code.rb +74 -0
  1448. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/reset.rb +22 -0
  1449. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/ri.rb +75 -0
  1450. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/save_file.rb +63 -0
  1451. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/shell_command.rb +75 -0
  1452. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/shell_mode.rb +29 -0
  1453. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/show_doc.rb +93 -0
  1454. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/show_info.rb +234 -0
  1455. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/show_input.rb +22 -0
  1456. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/show_source.rb +118 -0
  1457. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/stat.rb +44 -0
  1458. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/switch_to.rb +29 -0
  1459. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/toggle_color.rb +28 -0
  1460. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/watch_expression/expression.rb +43 -0
  1461. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/watch_expression.rb +110 -0
  1462. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/whereami.rb +205 -0
  1463. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/commands/wtf.rb +95 -0
  1464. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/config/attributable.rb +22 -0
  1465. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/config/lazy_value.rb +29 -0
  1466. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/config/memoized_value.rb +34 -0
  1467. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/config/value.rb +24 -0
  1468. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/config.rb +314 -0
  1469. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/control_d_handler.rb +28 -0
  1470. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/core_extensions.rb +144 -0
  1471. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/editor.rb +157 -0
  1472. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/env.rb +18 -0
  1473. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/exception_handler.rb +43 -0
  1474. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/exceptions.rb +73 -0
  1475. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/forwardable.rb +27 -0
  1476. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers/base_helpers.rb +71 -0
  1477. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers/command_helpers.rb +146 -0
  1478. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers/documentation_helpers.rb +84 -0
  1479. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers/options_helpers.rb +34 -0
  1480. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers/platform.rb +55 -0
  1481. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers/table.rb +121 -0
  1482. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers/text.rb +118 -0
  1483. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/helpers.rb +8 -0
  1484. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/history.rb +153 -0
  1485. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/hooks.rb +180 -0
  1486. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/indent.rb +412 -0
  1487. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/input_completer.rb +283 -0
  1488. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/input_lock.rb +129 -0
  1489. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/inspector.rb +39 -0
  1490. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/last_exception.rb +61 -0
  1491. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/method/disowned.rb +67 -0
  1492. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/method/patcher.rb +131 -0
  1493. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/method/weird_method_locator.rb +222 -0
  1494. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/method.rb +600 -0
  1495. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/object_path.rb +91 -0
  1496. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/output.rb +136 -0
  1497. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/pager.rb +249 -0
  1498. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/prompt.rb +214 -0
  1499. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/pry_class.rb +396 -0
  1500. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/pry_instance.rb +701 -0
  1501. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/repl.rb +256 -0
  1502. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/repl_file_loader.rb +79 -0
  1503. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/ring.rb +89 -0
  1504. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/slop/commands.rb +190 -0
  1505. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/slop/option.rb +210 -0
  1506. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/slop.rb +672 -0
  1507. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/syntax_highlighter.rb +26 -0
  1508. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/system_command_handler.rb +17 -0
  1509. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/testable/evalable.rb +24 -0
  1510. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/testable/mockable.rb +22 -0
  1511. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/testable/pry_tester.rb +88 -0
  1512. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/testable/utility.rb +34 -0
  1513. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/testable/variables.rb +52 -0
  1514. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/testable.rb +68 -0
  1515. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/version.rb +5 -0
  1516. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/warning.rb +20 -0
  1517. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/wrapped_module/candidate.rb +139 -0
  1518. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry/wrapped_module.rb +382 -0
  1519. data/vendor/bundle/ruby/3.2.0/gems/pry-0.14.2/lib/pry.rb +145 -0
  1520. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/byebug/processors/pry_processor.rb +158 -0
  1521. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry/byebug/breakpoints.rb +167 -0
  1522. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/base.rb +29 -0
  1523. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/cli.rb +6 -0
  1524. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/backtrace.rb +31 -0
  1525. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/breakpoint.rb +137 -0
  1526. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/continue.rb +43 -0
  1527. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/down.rb +35 -0
  1528. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/exit_all.rb +18 -0
  1529. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/finish.rb +28 -0
  1530. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/frame.rb +35 -0
  1531. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/next.rb +39 -0
  1532. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/step.rb +34 -0
  1533. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands/up.rb +35 -0
  1534. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/commands.rb +12 -0
  1535. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/control_d_handler.rb +9 -0
  1536. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/helpers/breakpoints.rb +82 -0
  1537. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/helpers/location.rb +24 -0
  1538. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/helpers/multiline.rb +23 -0
  1539. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/helpers/navigation.rb +19 -0
  1540. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/pry_ext.rb +20 -0
  1541. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/pry_remote_ext.rb +44 -0
  1542. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug/version.rb +8 -0
  1543. data/vendor/bundle/ruby/3.2.0/gems/pry-byebug-3.10.1/lib/pry-byebug.rb +4 -0
  1544. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/ext/psych/extconf.rb +53 -0
  1545. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/class_loader.rb +104 -0
  1546. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/coder.rb +95 -0
  1547. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/core_ext.rb +19 -0
  1548. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/exception.rb +28 -0
  1549. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/handler.rb +255 -0
  1550. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/handlers/document_stream.rb +23 -0
  1551. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/handlers/recorder.rb +40 -0
  1552. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/json/ruby_events.rb +20 -0
  1553. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/json/stream.rb +17 -0
  1554. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/json/tree_builder.rb +13 -0
  1555. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/json/yaml_events.rb +30 -0
  1556. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes/alias.rb +21 -0
  1557. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes/document.rb +63 -0
  1558. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes/mapping.rb +59 -0
  1559. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes/node.rb +75 -0
  1560. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes/scalar.rb +70 -0
  1561. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes/sequence.rb +84 -0
  1562. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes/stream.rb +40 -0
  1563. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/nodes.rb +78 -0
  1564. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/omap.rb +5 -0
  1565. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/parser.rb +65 -0
  1566. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/scalar_scanner.rb +142 -0
  1567. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/set.rb +5 -0
  1568. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/stream.rb +38 -0
  1569. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/streaming.rb +28 -0
  1570. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/syntax_error.rb +22 -0
  1571. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/tree_builder.rb +137 -0
  1572. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/versions.rb +10 -0
  1573. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/visitors/depth_first.rb +27 -0
  1574. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/visitors/emitter.rb +52 -0
  1575. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/visitors/json_tree.rb +25 -0
  1576. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/visitors/to_ruby.rb +436 -0
  1577. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/visitors/visitor.rb +34 -0
  1578. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/visitors/yaml_tree.rb +587 -0
  1579. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/visitors.rb +7 -0
  1580. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych/y.rb +10 -0
  1581. data/vendor/bundle/ruby/3.2.0/gems/psych-5.1.1.1/lib/psych.rb +745 -0
  1582. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.4/lib/public_suffix/domain.rb +235 -0
  1583. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.4/lib/public_suffix/errors.rb +41 -0
  1584. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.4/lib/public_suffix/list.rb +247 -0
  1585. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.4/lib/public_suffix/rule.rb +350 -0
  1586. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.4/lib/public_suffix/version.rb +14 -0
  1587. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.4/lib/public_suffix.rb +177 -0
  1588. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/doc/jamis.rb +592 -0
  1589. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/application.rb +855 -0
  1590. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/backtrace.rb +24 -0
  1591. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/clean.rb +78 -0
  1592. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/cloneable.rb +17 -0
  1593. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/cpu_counter.rb +107 -0
  1594. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/default_loader.rb +15 -0
  1595. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/dsl_definition.rb +195 -0
  1596. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/early_time.rb +22 -0
  1597. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/ext/core.rb +26 -0
  1598. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/ext/string.rb +176 -0
  1599. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/file_creation_task.rb +25 -0
  1600. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/file_list.rb +435 -0
  1601. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/file_task.rb +58 -0
  1602. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/file_utils.rb +132 -0
  1603. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/file_utils_ext.rb +134 -0
  1604. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/invocation_chain.rb +57 -0
  1605. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/invocation_exception_mixin.rb +17 -0
  1606. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/late_time.rb +18 -0
  1607. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/linked_list.rb +112 -0
  1608. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/loaders/makefile.rb +54 -0
  1609. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/multi_task.rb +14 -0
  1610. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/name_space.rb +38 -0
  1611. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/packagetask.rb +222 -0
  1612. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/phony.rb +16 -0
  1613. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/private_reader.rb +21 -0
  1614. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/promise.rb +100 -0
  1615. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/pseudo_status.rb +30 -0
  1616. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/rake_module.rb +67 -0
  1617. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/rake_test_loader.rb +27 -0
  1618. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/rule_recursion_overflow_error.rb +20 -0
  1619. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/scope.rb +43 -0
  1620. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/task.rb +434 -0
  1621. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/task_argument_error.rb +8 -0
  1622. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/task_arguments.rb +109 -0
  1623. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/task_manager.rb +331 -0
  1624. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/tasklib.rb +12 -0
  1625. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/testtask.rb +189 -0
  1626. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/thread_history_display.rb +49 -0
  1627. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/thread_pool.rb +163 -0
  1628. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/trace_output.rb +23 -0
  1629. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/version.rb +10 -0
  1630. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake/win32.rb +51 -0
  1631. data/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/lib/rake.rb +71 -0
  1632. data/vendor/bundle/ruby/3.2.0/gems/rb-fsevent-0.11.2/ext/rakefile.rb +231 -0
  1633. data/vendor/bundle/ruby/3.2.0/gems/rb-fsevent-0.11.2/lib/otnetstring.rb +85 -0
  1634. data/vendor/bundle/ruby/3.2.0/gems/rb-fsevent-0.11.2/lib/rb-fsevent/fsevent.rb +157 -0
  1635. data/vendor/bundle/ruby/3.2.0/gems/rb-fsevent-0.11.2/lib/rb-fsevent/version.rb +5 -0
  1636. data/vendor/bundle/ruby/3.2.0/gems/rb-fsevent-0.11.2/lib/rb-fsevent.rb +3 -0
  1637. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify/errors.rb +3 -0
  1638. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify/event.rb +146 -0
  1639. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify/native/flags.rb +94 -0
  1640. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify/native.rb +33 -0
  1641. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify/notifier.rb +326 -0
  1642. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify/version.rb +24 -0
  1643. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify/watcher.rb +88 -0
  1644. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/lib/rb-inotify.rb +15 -0
  1645. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/spec/inotify_spec.rb +9 -0
  1646. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/spec/notifier_spec.rb +180 -0
  1647. data/vendor/bundle/ruby/3.2.0/gems/rb-inotify-0.10.1/spec/spec_helper.rb +29 -0
  1648. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/alias.rb +111 -0
  1649. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/anon_class.rb +10 -0
  1650. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/any_method.rb +379 -0
  1651. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/attr.rb +175 -0
  1652. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/class_module.rb +801 -0
  1653. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_object.rb +421 -0
  1654. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_objects.rb +5 -0
  1655. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/comment.rb +229 -0
  1656. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/constant.rb +186 -0
  1657. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context/section.rb +233 -0
  1658. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context.rb +1264 -0
  1659. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/cross_reference.rb +225 -0
  1660. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/encoding.rb +131 -0
  1661. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erb_partial.rb +18 -0
  1662. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erbio.rb +37 -0
  1663. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/extend.rb +9 -0
  1664. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/darkfish.rb +786 -0
  1665. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/json_index.rb +300 -0
  1666. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/markup.rb +159 -0
  1667. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/message_extractor.rb +68 -0
  1668. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po.rb +84 -0
  1669. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po_entry.rb +141 -0
  1670. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot.rb +98 -0
  1671. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/ri.rb +30 -0
  1672. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator.rb +51 -0
  1673. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ghost_method.rb +6 -0
  1674. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/locale.rb +102 -0
  1675. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/text.rb +126 -0
  1676. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n.rb +10 -0
  1677. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/include.rb +9 -0
  1678. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/known_classes.rb +74 -0
  1679. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/entities.rb +2131 -0
  1680. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/literals.rb +474 -0
  1681. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown.rb +16783 -0
  1682. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_changer.rb +22 -0
  1683. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_span.rb +35 -0
  1684. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attribute_manager.rb +402 -0
  1685. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attributes.rb +70 -0
  1686. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/blank_line.rb +27 -0
  1687. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/block_quote.rb +14 -0
  1688. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/document.rb +164 -0
  1689. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/formatter.rb +265 -0
  1690. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/hard_break.rb +31 -0
  1691. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/heading.rb +78 -0
  1692. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/include.rb +42 -0
  1693. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/indented_paragraph.rb +47 -0
  1694. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list.rb +101 -0
  1695. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list_item.rb +99 -0
  1696. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/paragraph.rb +28 -0
  1697. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/parser.rb +581 -0
  1698. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/pre_process.rb +298 -0
  1699. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/raw.rb +69 -0
  1700. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/regexp_handling.rb +40 -0
  1701. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/rule.rb +20 -0
  1702. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/table.rb +47 -0
  1703. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_ansi.rb +93 -0
  1704. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_bs.rb +77 -0
  1705. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html.rb +449 -0
  1706. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_crossref.rb +175 -0
  1707. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_snippet.rb +284 -0
  1708. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_joined_paragraph.rb +46 -0
  1709. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_label.rb +74 -0
  1710. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_markdown.rb +191 -0
  1711. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_rdoc.rb +344 -0
  1712. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_table_of_contents.rb +88 -0
  1713. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_test.rb +69 -0
  1714. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_tt_only.rb +120 -0
  1715. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/verbatim.rb +83 -0
  1716. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup.rb +235 -0
  1717. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/meta_method.rb +6 -0
  1718. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/method_attr.rb +418 -0
  1719. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/mixin.rb +120 -0
  1720. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_class.rb +92 -0
  1721. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_module.rb +73 -0
  1722. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/options.rb +1330 -0
  1723. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/c.rb +1225 -0
  1724. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/changelog.rb +334 -0
  1725. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/markdown.rb +22 -0
  1726. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/rd.rb +22 -0
  1727. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ripper_state_lex.rb +590 -0
  1728. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby.rb +2360 -0
  1729. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby_tools.rb +165 -0
  1730. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/simple.rb +61 -0
  1731. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/text.rb +11 -0
  1732. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser.rb +294 -0
  1733. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/block_parser.rb +1710 -0
  1734. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline.rb +71 -0
  1735. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline_parser.rb +1210 -0
  1736. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd.rb +99 -0
  1737. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rdoc.rb +563 -0
  1738. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/require.rb +51 -0
  1739. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/driver.rb +1513 -0
  1740. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/formatter.rb +6 -0
  1741. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/paths.rb +171 -0
  1742. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/store.rb +6 -0
  1743. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/task.rb +71 -0
  1744. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri.rb +20 -0
  1745. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rubygems_hook.rb +248 -0
  1746. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/servlet.rb +451 -0
  1747. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/single_class.rb +30 -0
  1748. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/normal.rb +58 -0
  1749. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/quiet.rb +59 -0
  1750. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/verbose.rb +44 -0
  1751. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats.rb +461 -0
  1752. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/store.rb +979 -0
  1753. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/task.rb +355 -0
  1754. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/text.rb +312 -0
  1755. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/token_stream.rb +118 -0
  1756. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/tom_doc.rb +263 -0
  1757. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/top_level.rb +288 -0
  1758. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/version.rb +10 -0
  1759. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc.rb +201 -0
  1760. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/attlistdecl.rb +63 -0
  1761. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/attribute.rb +210 -0
  1762. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/cdata.rb +68 -0
  1763. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/child.rb +97 -0
  1764. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/comment.rb +80 -0
  1765. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/doctype.rb +311 -0
  1766. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/document.rb +451 -0
  1767. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/dtd/attlistdecl.rb +11 -0
  1768. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/dtd/dtd.rb +47 -0
  1769. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/dtd/elementdecl.rb +18 -0
  1770. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/dtd/entitydecl.rb +57 -0
  1771. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/dtd/notationdecl.rb +40 -0
  1772. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/element.rb +2599 -0
  1773. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/encoding.rb +51 -0
  1774. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/entity.rb +181 -0
  1775. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/formatters/default.rb +116 -0
  1776. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/formatters/pretty.rb +142 -0
  1777. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/formatters/transitive.rb +58 -0
  1778. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/functions.rb +447 -0
  1779. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/instruction.rb +79 -0
  1780. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/light/node.rb +188 -0
  1781. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/namespace.rb +63 -0
  1782. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/node.rb +76 -0
  1783. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/output.rb +30 -0
  1784. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parent.rb +166 -0
  1785. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parseexception.rb +52 -0
  1786. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/baseparser.rb +694 -0
  1787. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/lightparser.rb +59 -0
  1788. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/pullparser.rb +197 -0
  1789. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/sax2parser.rb +273 -0
  1790. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/streamparser.rb +61 -0
  1791. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/treeparser.rb +101 -0
  1792. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/ultralightparser.rb +57 -0
  1793. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/parsers/xpathparser.rb +739 -0
  1794. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/quickpath.rb +266 -0
  1795. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/rexml.rb +39 -0
  1796. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/sax2listener.rb +98 -0
  1797. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/security.rb +28 -0
  1798. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/source.rb +298 -0
  1799. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/streamlistener.rb +93 -0
  1800. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/text.rb +426 -0
  1801. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/undefinednamespaceexception.rb +9 -0
  1802. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/validation/relaxng.rb +539 -0
  1803. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/validation/validation.rb +144 -0
  1804. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/validation/validationexception.rb +10 -0
  1805. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/xmldecl.rb +130 -0
  1806. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/xmltokens.rb +85 -0
  1807. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/xpath.rb +81 -0
  1808. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml/xpath_parser.rb +974 -0
  1809. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.2.6/lib/rexml.rb +3 -0
  1810. data/vendor/bundle/ruby/3.2.0/gems/rspec-3.12.0/lib/rspec/version.rb +5 -0
  1811. data/vendor/bundle/ruby/3.2.0/gems/rspec-3.12.0/lib/rspec.rb +3 -0
  1812. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/autorun.rb +3 -0
  1813. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/backtrace_formatter.rb +65 -0
  1814. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/bisect/coordinator.rb +62 -0
  1815. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/bisect/example_minimizer.rb +173 -0
  1816. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/bisect/fork_runner.rb +138 -0
  1817. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/bisect/server.rb +61 -0
  1818. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/bisect/shell_command.rb +126 -0
  1819. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/bisect/shell_runner.rb +73 -0
  1820. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/bisect/utilities.rb +69 -0
  1821. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/configuration.rb +2385 -0
  1822. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/configuration_options.rb +233 -0
  1823. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/did_you_mean.rb +46 -0
  1824. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/drb.rb +120 -0
  1825. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/dsl.rb +98 -0
  1826. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/example.rb +666 -0
  1827. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/example_group.rb +905 -0
  1828. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/example_status_persister.rb +235 -0
  1829. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/filter_manager.rb +231 -0
  1830. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/flat_map.rb +20 -0
  1831. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/base_bisect_formatter.rb +45 -0
  1832. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/base_formatter.rb +70 -0
  1833. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/base_text_formatter.rb +75 -0
  1834. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/bisect_drb_formatter.rb +29 -0
  1835. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/bisect_progress_formatter.rb +157 -0
  1836. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/console_codes.rb +76 -0
  1837. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  1838. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/documentation_formatter.rb +102 -0
  1839. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/exception_presenter.rb +525 -0
  1840. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/failure_list_formatter.rb +23 -0
  1841. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  1842. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/helpers.rb +118 -0
  1843. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/html_formatter.rb +153 -0
  1844. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/html_printer.rb +412 -0
  1845. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/html_snippet_extractor.rb +120 -0
  1846. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/json_formatter.rb +102 -0
  1847. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  1848. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/progress_formatter.rb +29 -0
  1849. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/protocol.rb +182 -0
  1850. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/snippet_extractor.rb +134 -0
  1851. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters/syntax_highlighter.rb +91 -0
  1852. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/formatters.rb +279 -0
  1853. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/hooks.rb +646 -0
  1854. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/invocations.rb +87 -0
  1855. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/memoized_helpers.rb +580 -0
  1856. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/metadata.rb +498 -0
  1857. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/metadata_filter.rb +255 -0
  1858. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  1859. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  1860. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  1861. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/mocking_adapters/null.rb +14 -0
  1862. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  1863. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  1864. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/notifications.rb +521 -0
  1865. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/option_parser.rb +323 -0
  1866. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/ordering.rb +169 -0
  1867. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/output_wrapper.rb +29 -0
  1868. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/pending.rb +157 -0
  1869. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/profiler.rb +34 -0
  1870. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/project_initializer/spec/spec_helper.rb +98 -0
  1871. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/project_initializer.rb +48 -0
  1872. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/rake_task.rb +188 -0
  1873. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/reporter.rb +265 -0
  1874. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/ruby_project.rb +53 -0
  1875. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/runner.rb +212 -0
  1876. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/sandbox.rb +37 -0
  1877. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/set.rb +54 -0
  1878. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/shared_context.rb +55 -0
  1879. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/shared_example_group.rb +271 -0
  1880. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/shell_escape.rb +49 -0
  1881. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  1882. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/version.rb +9 -0
  1883. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/warnings.rb +40 -0
  1884. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core/world.rb +287 -0
  1885. data/vendor/bundle/ruby/3.2.0/gems/rspec-core-3.12.2/lib/rspec/core.rb +212 -0
  1886. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/block_snippet_extractor.rb +253 -0
  1887. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/configuration.rb +230 -0
  1888. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/expectation_target.rb +163 -0
  1889. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/fail_with.rb +39 -0
  1890. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/failure_aggregator.rb +229 -0
  1891. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/handler.rb +182 -0
  1892. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/minitest_integration.rb +58 -0
  1893. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/syntax.rb +132 -0
  1894. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations/version.rb +8 -0
  1895. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/expectations.rb +82 -0
  1896. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/aliased_matcher.rb +116 -0
  1897. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/all.rb +86 -0
  1898. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/base_matcher.rb +198 -0
  1899. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/be.rb +191 -0
  1900. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/be_between.rb +77 -0
  1901. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/be_instance_of.rb +26 -0
  1902. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/be_kind_of.rb +20 -0
  1903. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/be_within.rb +72 -0
  1904. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/change.rb +450 -0
  1905. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/compound.rb +290 -0
  1906. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/contain_exactly.rb +310 -0
  1907. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/count_expectation.rb +169 -0
  1908. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/cover.rb +24 -0
  1909. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/eq.rb +40 -0
  1910. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/eql.rb +34 -0
  1911. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/equal.rb +81 -0
  1912. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/exist.rb +90 -0
  1913. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/has.rb +167 -0
  1914. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  1915. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/include.rb +213 -0
  1916. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/match.rb +106 -0
  1917. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/operators.rb +128 -0
  1918. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/output.rb +207 -0
  1919. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/raise_error.rb +271 -0
  1920. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/respond_to.rb +200 -0
  1921. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/satisfy.rb +60 -0
  1922. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  1923. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/throw_symbol.rb +138 -0
  1924. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in/yield.rb +375 -0
  1925. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/built_in.rb +53 -0
  1926. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/composable.rb +171 -0
  1927. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/dsl.rb +545 -0
  1928. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/english_phrasing.rb +58 -0
  1929. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +82 -0
  1930. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/fail_matchers.rb +42 -0
  1931. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/generated_descriptions.rb +41 -0
  1932. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/matcher_delegator.rb +35 -0
  1933. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/matcher_protocol.rb +105 -0
  1934. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers.rb +1044 -0
  1935. data/vendor/bundle/ruby/3.2.0/gems/rspec-its-1.3.0/features/step_definitions/additional_cli_steps.rb +32 -0
  1936. data/vendor/bundle/ruby/3.2.0/gems/rspec-its-1.3.0/features/support/env.rb +23 -0
  1937. data/vendor/bundle/ruby/3.2.0/gems/rspec-its-1.3.0/lib/rspec/its/version.rb +5 -0
  1938. data/vendor/bundle/ruby/3.2.0/gems/rspec-its-1.3.0/lib/rspec/its.rb +182 -0
  1939. data/vendor/bundle/ruby/3.2.0/gems/rspec-its-1.3.0/spec/rspec/its_spec.rb +380 -0
  1940. data/vendor/bundle/ruby/3.2.0/gems/rspec-its-1.3.0/spec/spec_helper.rb +15 -0
  1941. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/chain.rb +111 -0
  1942. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  1943. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/expect_chain_chain.rb +31 -0
  1944. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/expectation_chain.rb +50 -0
  1945. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  1946. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/proxy.rb +125 -0
  1947. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/recorder.rb +295 -0
  1948. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/stub_chain.rb +51 -0
  1949. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance/stub_chain_chain.rb +23 -0
  1950. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/any_instance.rb +11 -0
  1951. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/argument_list_matcher.rb +117 -0
  1952. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/argument_matchers.rb +322 -0
  1953. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/configuration.rb +212 -0
  1954. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/error_generator.rb +390 -0
  1955. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/example_methods.rb +434 -0
  1956. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/instance_method_stasher.rb +146 -0
  1957. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/marshal_extension.rb +41 -0
  1958. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  1959. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/matchers/have_received.rb +134 -0
  1960. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/matchers/receive.rb +134 -0
  1961. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/matchers/receive_message_chain.rb +82 -0
  1962. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/matchers/receive_messages.rb +77 -0
  1963. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/message_chain.rb +87 -0
  1964. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/message_expectation.rb +820 -0
  1965. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/method_double.rb +316 -0
  1966. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/method_reference.rb +214 -0
  1967. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/minitest_integration.rb +68 -0
  1968. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/mutate_const.rb +339 -0
  1969. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/object_reference.rb +149 -0
  1970. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/order_group.rb +81 -0
  1971. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/proxy.rb +520 -0
  1972. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/space.rb +238 -0
  1973. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/standalone.rb +3 -0
  1974. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/syntax.rb +325 -0
  1975. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/targets.rb +124 -0
  1976. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/test_double.rb +171 -0
  1977. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/verifying_double.rb +123 -0
  1978. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/verifying_message_expectation.rb +55 -0
  1979. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/verifying_proxy.rb +221 -0
  1980. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks/version.rb +9 -0
  1981. data/vendor/bundle/ruby/3.2.0/gems/rspec-mocks-3.12.6/lib/rspec/mocks.rb +133 -0
  1982. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/caller_filter.rb +83 -0
  1983. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/comparable_version.rb +46 -0
  1984. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/differ.rb +215 -0
  1985. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/directory_maker.rb +63 -0
  1986. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/encoded_string.rb +161 -0
  1987. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/fuzzy_matcher.rb +48 -0
  1988. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/hunk_generator.rb +47 -0
  1989. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/matcher_definition.rb +42 -0
  1990. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/method_signature_verifier.rb +438 -0
  1991. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/mutex.rb +73 -0
  1992. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/object_formatter.rb +275 -0
  1993. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/recursive_const_methods.rb +76 -0
  1994. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/reentrant_mutex.rb +78 -0
  1995. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/ruby_features.rb +198 -0
  1996. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/source/location.rb +21 -0
  1997. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/source/node.rb +110 -0
  1998. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/source/token.rb +94 -0
  1999. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/source.rb +85 -0
  2000. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/deprecation_helpers.rb +48 -0
  2001. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/diff_helpers.rb +31 -0
  2002. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/formatting_support.rb +9 -0
  2003. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/in_sub_process.rb +67 -0
  2004. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/library_wide_checks.rb +150 -0
  2005. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/shell_out.rb +108 -0
  2006. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/stderr_splitter.rb +75 -0
  2007. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/string_matcher.rb +45 -0
  2008. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/with_isolated_directory.rb +13 -0
  2009. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec/with_isolated_stderr.rb +13 -0
  2010. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/spec.rb +82 -0
  2011. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/version.rb +7 -0
  2012. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/warnings.rb +39 -0
  2013. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support/with_keywords_when_needed.rb +33 -0
  2014. data/vendor/bundle/ruby/3.2.0/gems/rspec-support-3.12.1/lib/rspec/support.rb +160 -0
  2015. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/ext/ruby_prof/extconf.rb +22 -0
  2016. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/call_tree.rb +57 -0
  2017. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/call_tree_visitor.rb +36 -0
  2018. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/compatibility.rb +113 -0
  2019. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/exclude_common_methods.rb +198 -0
  2020. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/measurement.rb +17 -0
  2021. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/method_info.rb +85 -0
  2022. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/abstract_printer.rb +138 -0
  2023. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/call_info_printer.rb +53 -0
  2024. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/call_stack_printer.rb +180 -0
  2025. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/call_tree_printer.rb +145 -0
  2026. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/dot_printer.rb +132 -0
  2027. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/flat_printer.rb +53 -0
  2028. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/graph_html_printer.rb +63 -0
  2029. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/graph_printer.rb +113 -0
  2030. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/printers/multi_printer.rb +127 -0
  2031. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/profile.rb +70 -0
  2032. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/rack.rb +105 -0
  2033. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/task.rb +147 -0
  2034. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/thread.rb +20 -0
  2035. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof/version.rb +3 -0
  2036. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/ruby-prof.rb +52 -0
  2037. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/lib/unprof.rb +10 -0
  2038. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/abstract_printer_test.rb +27 -0
  2039. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/alias_test.rb +117 -0
  2040. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/call_tree_builder.rb +126 -0
  2041. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/call_tree_test.rb +94 -0
  2042. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/call_tree_visitor_test.rb +27 -0
  2043. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/call_trees_test.rb +66 -0
  2044. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/compatibility_test.rb +49 -0
  2045. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/duplicate_names_test.rb +32 -0
  2046. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/dynamic_method_test.rb +62 -0
  2047. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/enumerable_test.rb +21 -0
  2048. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/exceptions_test.rb +24 -0
  2049. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/exclude_methods_test.rb +146 -0
  2050. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/exclude_threads_test.rb +48 -0
  2051. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/fiber_test.rb +195 -0
  2052. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/gc_test.rb +102 -0
  2053. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/inverse_call_tree_test.rb +174 -0
  2054. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/line_number_test.rb +134 -0
  2055. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/marshal_test.rb +145 -0
  2056. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/measure_allocations.rb +26 -0
  2057. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/measure_allocations_test.rb +660 -0
  2058. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/measure_memory_test.rb +1024 -0
  2059. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/measure_process_time_test.rb +1610 -0
  2060. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/measure_times.rb +56 -0
  2061. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/measure_wall_time_test.rb +421 -0
  2062. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/measurement_test.rb +82 -0
  2063. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/merge_test.rb +146 -0
  2064. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/method_info_test.rb +95 -0
  2065. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/multi_printer_test.rb +66 -0
  2066. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/no_method_class_test.rb +15 -0
  2067. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/pause_resume_test.rb +171 -0
  2068. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/prime.rb +54 -0
  2069. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/prime_script.rb +6 -0
  2070. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/printer_call_stack_test.rb +27 -0
  2071. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/printer_call_tree_test.rb +30 -0
  2072. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/printer_flat_test.rb +99 -0
  2073. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/printer_graph_html_test.rb +59 -0
  2074. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/printer_graph_test.rb +40 -0
  2075. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/printers_test.rb +135 -0
  2076. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/printing_recursive_graph_test.rb +81 -0
  2077. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/profile_test.rb +101 -0
  2078. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/rack_test.rb +93 -0
  2079. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/recursive_test.rb +425 -0
  2080. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/scheduler.rb +363 -0
  2081. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/singleton_test.rb +38 -0
  2082. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/stack_printer_test.rb +61 -0
  2083. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/start_stop_test.rb +106 -0
  2084. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/test_helper.rb +20 -0
  2085. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/thread_test.rb +235 -0
  2086. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/unique_call_path_test.rb +136 -0
  2087. data/vendor/bundle/ruby/3.2.0/gems/ruby-prof-1.6.3/test/yarv_test.rb +60 -0
  2088. data/vendor/bundle/ruby/3.2.0/gems/shellany-0.0.1/lib/shellany/sheller.rb +144 -0
  2089. data/vendor/bundle/ruby/3.2.0/gems/shellany-0.0.1/lib/shellany/version.rb +3 -0
  2090. data/vendor/bundle/ruby/3.2.0/gems/shellany-0.0.1/lib/shellany.rb +5 -0
  2091. data/vendor/bundle/ruby/3.2.0/gems/shellany-0.0.1/spec/lib/shellany/sheller_spec.rb +141 -0
  2092. data/vendor/bundle/ruby/3.2.0/gems/shellany-0.0.1/spec/shellany_spec.rb +5 -0
  2093. data/vendor/bundle/ruby/3.2.0/gems/shellany-0.0.1/spec/spec_helper.rb +24 -0
  2094. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/examples/simple_connection.rb +9 -0
  2095. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/core_ext/array.rb +5 -0
  2096. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/core_ext/hash.rb +11 -0
  2097. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/all.rb +40 -0
  2098. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/abstract.rb +167 -0
  2099. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/connection_pool/cache.rb +83 -0
  2100. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/connection_pool/nil_cache.rb +15 -0
  2101. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/connection_pool.rb +183 -0
  2102. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/local.rb +66 -0
  2103. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/netssh/known_hosts.rb +143 -0
  2104. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/netssh.rb +189 -0
  2105. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/printer.rb +20 -0
  2106. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/backends/skipper.rb +27 -0
  2107. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/color.rb +58 -0
  2108. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/command.rb +260 -0
  2109. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/command_map.rb +73 -0
  2110. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/configuration.rb +104 -0
  2111. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/coordinator.rb +39 -0
  2112. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/deprecation_logger.rb +19 -0
  2113. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/dsl.rb +15 -0
  2114. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/exception.rb +13 -0
  2115. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/formatters/abstract.rb +51 -0
  2116. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/formatters/black_hole.rb +15 -0
  2117. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/formatters/dot.rb +18 -0
  2118. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/formatters/pretty.rb +60 -0
  2119. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/formatters/simple_text.rb +20 -0
  2120. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/host.rb +194 -0
  2121. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/log_message.rb +13 -0
  2122. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/logger.rb +9 -0
  2123. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/mapping_interaction_handler.rb +48 -0
  2124. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/runners/abstract.rb +29 -0
  2125. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/runners/group.rb +24 -0
  2126. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/runners/null.rb +12 -0
  2127. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/runners/parallel.rb +25 -0
  2128. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/runners/sequential.rb +38 -0
  2129. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/version.rb +3 -0
  2130. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit.rb +29 -0
  2131. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/functional/backends/test_local.rb +122 -0
  2132. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/functional/backends/test_netssh.rb +233 -0
  2133. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/functional/test_ssh_server_comes_up_for_functional_tests.rb +24 -0
  2134. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/helper.rb +81 -0
  2135. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/support/vagrant_wrapper.rb +64 -0
  2136. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/backends/test_abstract.rb +202 -0
  2137. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/backends/test_connection_pool.rb +148 -0
  2138. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/backends/test_local.rb +22 -0
  2139. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/backends/test_netssh.rb +94 -0
  2140. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/backends/test_printer.rb +73 -0
  2141. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/formatters/test_custom.rb +71 -0
  2142. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/formatters/test_dot.rb +58 -0
  2143. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/formatters/test_pretty.rb +143 -0
  2144. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/formatters/test_simple_text.rb +83 -0
  2145. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/runners/test_group.rb +17 -0
  2146. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/runners/test_parallel.rb +18 -0
  2147. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/runners/test_sequential.rb +18 -0
  2148. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_color.rb +80 -0
  2149. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_command.rb +274 -0
  2150. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_command_map.rb +78 -0
  2151. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_configuration.rb +124 -0
  2152. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_coordinator.rb +161 -0
  2153. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_deprecation_logger.rb +38 -0
  2154. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_dsl.rb +26 -0
  2155. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_host.rb +147 -0
  2156. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_logger.rb +17 -0
  2157. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/test/unit/test_mapping_interaction_handler.rb +101 -0
  2158. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.1.0/ext/stringio/extconf.rb +7 -0
  2159. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/examples/uname_test.rb +42 -0
  2160. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/lib/sys/platform.rb +58 -0
  2161. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/lib/sys/uname.rb +21 -0
  2162. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/lib/sys/unix/uname.rb +312 -0
  2163. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/lib/sys/windows/uname.rb +499 -0
  2164. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/lib/sys-uname.rb +3 -0
  2165. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/spec/spec_helper.rb +12 -0
  2166. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/spec/sys_platform_spec.rb +69 -0
  2167. data/vendor/bundle/ruby/3.2.0/gems/sys-uname-1.2.3/spec/sys_uname_spec.rb +449 -0
  2168. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/actions/create_file.rb +105 -0
  2169. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/actions/create_link.rb +61 -0
  2170. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/actions/directory.rb +108 -0
  2171. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/actions/empty_directory.rb +143 -0
  2172. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/actions/file_manipulation.rb +373 -0
  2173. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/actions/inject_into_file.rb +130 -0
  2174. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/actions.rb +340 -0
  2175. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/base.rb +825 -0
  2176. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/command.rb +151 -0
  2177. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/core_ext/hash_with_indifferent_access.rb +107 -0
  2178. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/error.rb +106 -0
  2179. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/group.rb +281 -0
  2180. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/invocation.rb +178 -0
  2181. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/line_editor/basic.rb +37 -0
  2182. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/line_editor/readline.rb +88 -0
  2183. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/line_editor.rb +17 -0
  2184. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/nested_context.rb +29 -0
  2185. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/parser/argument.rb +89 -0
  2186. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/parser/arguments.rb +195 -0
  2187. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/parser/option.rb +178 -0
  2188. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/parser/options.rb +293 -0
  2189. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/parser.rb +4 -0
  2190. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/rake_compat.rb +72 -0
  2191. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/runner.rb +335 -0
  2192. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/basic.rb +388 -0
  2193. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/color.rb +115 -0
  2194. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/column_printer.rb +29 -0
  2195. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/html.rb +84 -0
  2196. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/lcs_diff.rb +49 -0
  2197. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/table_printer.rb +134 -0
  2198. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/terminal.rb +42 -0
  2199. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell/wrapped_printer.rb +38 -0
  2200. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/shell.rb +81 -0
  2201. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/util.rb +285 -0
  2202. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/version.rb +3 -0
  2203. data/vendor/bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor.rb +663 -0
  2204. data/vendor/bundle/ruby/3.2.0/gems/timecop-0.9.8/lib/timecop/time_extensions.rb +160 -0
  2205. data/vendor/bundle/ruby/3.2.0/gems/timecop-0.9.8/lib/timecop/time_stack_item.rb +140 -0
  2206. data/vendor/bundle/ruby/3.2.0/gems/timecop-0.9.8/lib/timecop/timecop.rb +240 -0
  2207. data/vendor/bundle/ruby/3.2.0/gems/timecop-0.9.8/lib/timecop/version.rb +3 -0
  2208. data/vendor/bundle/ruby/3.2.0/gems/timecop-0.9.8/lib/timecop.rb +2 -0
  2209. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/api.rb +111 -0
  2210. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/assertion_failure.rb +13 -0
  2211. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/callback_registry.rb +37 -0
  2212. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/config.rb +20 -0
  2213. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/cucumber.rb +12 -0
  2214. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/deprecation.rb +11 -0
  2215. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/errors.rb +19 -0
  2216. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/async_http_client_adapter.rb +223 -0
  2217. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/curb_adapter.rb +353 -0
  2218. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/em_http_request_adapter.rb +239 -0
  2219. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/excon_adapter.rb +167 -0
  2220. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_lib_adapter.rb +9 -0
  2221. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_lib_adapter_registry.rb +21 -0
  2222. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_rb/client.rb +17 -0
  2223. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_rb/request.rb +18 -0
  2224. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_rb/response.rb +69 -0
  2225. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_rb/streamer.rb +33 -0
  2226. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_rb/webmock.rb +74 -0
  2227. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/http_rb_adapter.rb +39 -0
  2228. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/httpclient_adapter.rb +261 -0
  2229. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/manticore_adapter.rb +147 -0
  2230. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/net_http.rb +294 -0
  2231. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/net_http_response.rb +36 -0
  2232. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/patron_adapter.rb +132 -0
  2233. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/http_lib_adapters/typhoeus_hydra_adapter.rb +176 -0
  2234. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/matchers/any_arg_matcher.rb +15 -0
  2235. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/matchers/hash_argument_matcher.rb +23 -0
  2236. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/matchers/hash_excluding_matcher.rb +17 -0
  2237. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/matchers/hash_including_matcher.rb +19 -0
  2238. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/minitest.rb +43 -0
  2239. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/rack_response.rb +71 -0
  2240. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/request_body_diff.rb +66 -0
  2241. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/request_execution_verifier.rb +79 -0
  2242. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/request_pattern.rb +423 -0
  2243. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/request_registry.rb +37 -0
  2244. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/request_signature.rb +56 -0
  2245. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/request_signature_snippet.rb +63 -0
  2246. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/request_stub.rb +134 -0
  2247. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/response.rb +161 -0
  2248. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/responses_sequence.rb +42 -0
  2249. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/rspec/matchers/request_pattern_matcher.rb +80 -0
  2250. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/rspec/matchers/webmock_matcher.rb +69 -0
  2251. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/rspec/matchers.rb +29 -0
  2252. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/rspec.rb +44 -0
  2253. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/stub_registry.rb +84 -0
  2254. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/stub_request_snippet.rb +40 -0
  2255. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/test_unit.rb +22 -0
  2256. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/hash_counter.rb +45 -0
  2257. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/hash_keys_stringifier.rb +27 -0
  2258. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/hash_validator.rb +19 -0
  2259. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/headers.rb +78 -0
  2260. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/json.rb +69 -0
  2261. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/query_mapper.rb +283 -0
  2262. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/uri.rb +113 -0
  2263. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/values_stringifier.rb +22 -0
  2264. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/version_checker.rb +113 -0
  2265. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/version.rb +5 -0
  2266. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/webmock.rb +175 -0
  2267. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock.rb +61 -0
  2268. metadata +2259 -6
@@ -0,0 +1,2168 @@
1
+ require 'concurrent/synchronization/object'
2
+ require 'concurrent/atomic/atomic_boolean'
3
+ require 'concurrent/atomic/atomic_fixnum'
4
+ require 'concurrent/collection/lock_free_stack'
5
+ require 'concurrent/configuration'
6
+ require 'concurrent/errors'
7
+ require 'concurrent/re_include'
8
+
9
+ module Concurrent
10
+
11
+ # {include:file:docs-source/promises-main.md}
12
+ module Promises
13
+
14
+ # @!macro promises.param.default_executor
15
+ # @param [Executor, :io, :fast] default_executor Instance of an executor or a name of the
16
+ # global executor. Default executor propagates to chained futures unless overridden with
17
+ # executor parameter or changed with {AbstractEventFuture#with_default_executor}.
18
+ #
19
+ # @!macro promises.param.executor
20
+ # @param [Executor, :io, :fast] executor Instance of an executor or a name of the
21
+ # global executor. The task is executed on it, default executor remains unchanged.
22
+ #
23
+ # @!macro promises.param.args
24
+ # @param [Object] args arguments which are passed to the task when it's executed.
25
+ # (It might be prepended with other arguments, see the @yeild section).
26
+ #
27
+ # @!macro promises.shortcut.on
28
+ # Shortcut of {#$0_on} with default `:io` executor supplied.
29
+ # @see #$0_on
30
+ #
31
+ # @!macro promises.shortcut.using
32
+ # Shortcut of {#$0_using} with default `:io` executor supplied.
33
+ # @see #$0_using
34
+ #
35
+ # @!macro promise.param.task-future
36
+ # @yieldreturn will become result of the returned Future.
37
+ # Its returned value becomes {Future#value} fulfilling it,
38
+ # raised exception becomes {Future#reason} rejecting it.
39
+ #
40
+ # @!macro promise.param.callback
41
+ # @yieldreturn is forgotten.
42
+
43
+ # Container of all {Future}, {Event} factory methods. They are never constructed directly with
44
+ # new.
45
+ module FactoryMethods
46
+ extend ReInclude
47
+ extend self
48
+
49
+ module Configuration
50
+ # @return [Executor, :io, :fast] the executor which is used when none is supplied
51
+ # to a factory method. The method can be overridden in the receivers of
52
+ # `include FactoryMethod`
53
+ def default_executor
54
+ :io
55
+ end
56
+ end
57
+
58
+ include Configuration
59
+
60
+ # @!macro promises.shortcut.on
61
+ # @return [ResolvableEvent]
62
+ def resolvable_event
63
+ resolvable_event_on default_executor
64
+ end
65
+
66
+ # Created resolvable event, user is responsible for resolving the event once by
67
+ # {Promises::ResolvableEvent#resolve}.
68
+ #
69
+ # @!macro promises.param.default_executor
70
+ # @return [ResolvableEvent]
71
+ def resolvable_event_on(default_executor = self.default_executor)
72
+ ResolvableEventPromise.new(default_executor).future
73
+ end
74
+
75
+ # @!macro promises.shortcut.on
76
+ # @return [ResolvableFuture]
77
+ def resolvable_future
78
+ resolvable_future_on default_executor
79
+ end
80
+
81
+ # Creates resolvable future, user is responsible for resolving the future once by
82
+ # {Promises::ResolvableFuture#resolve}, {Promises::ResolvableFuture#fulfill},
83
+ # or {Promises::ResolvableFuture#reject}
84
+ #
85
+ # @!macro promises.param.default_executor
86
+ # @return [ResolvableFuture]
87
+ def resolvable_future_on(default_executor = self.default_executor)
88
+ ResolvableFuturePromise.new(default_executor).future
89
+ end
90
+
91
+ # @!macro promises.shortcut.on
92
+ # @return [Future]
93
+ def future(*args, &task)
94
+ future_on(default_executor, *args, &task)
95
+ end
96
+
97
+ # Constructs new Future which will be resolved after block is evaluated on default executor.
98
+ # Evaluation begins immediately.
99
+ #
100
+ # @!macro promises.param.default_executor
101
+ # @!macro promises.param.args
102
+ # @yield [*args] to the task.
103
+ # @!macro promise.param.task-future
104
+ # @return [Future]
105
+ def future_on(default_executor, *args, &task)
106
+ ImmediateEventPromise.new(default_executor).future.then(*args, &task)
107
+ end
108
+
109
+ # Creates resolved future with will be either fulfilled with the given value or rejection with
110
+ # the given reason.
111
+ #
112
+ # @param [true, false] fulfilled
113
+ # @param [Object] value
114
+ # @param [Object] reason
115
+ # @!macro promises.param.default_executor
116
+ # @return [Future]
117
+ def resolved_future(fulfilled, value, reason, default_executor = self.default_executor)
118
+ ImmediateFuturePromise.new(default_executor, fulfilled, value, reason).future
119
+ end
120
+
121
+ # Creates resolved future with will be fulfilled with the given value.
122
+ #
123
+ # @!macro promises.param.default_executor
124
+ # @param [Object] value
125
+ # @return [Future]
126
+ def fulfilled_future(value, default_executor = self.default_executor)
127
+ resolved_future true, value, nil, default_executor
128
+ end
129
+
130
+ # Creates resolved future with will be rejected with the given reason.
131
+ #
132
+ # @!macro promises.param.default_executor
133
+ # @param [Object] reason
134
+ # @return [Future]
135
+ def rejected_future(reason, default_executor = self.default_executor)
136
+ resolved_future false, nil, reason, default_executor
137
+ end
138
+
139
+ # Creates resolved event.
140
+ #
141
+ # @!macro promises.param.default_executor
142
+ # @return [Event]
143
+ def resolved_event(default_executor = self.default_executor)
144
+ ImmediateEventPromise.new(default_executor).event
145
+ end
146
+
147
+ # General constructor. Behaves differently based on the argument's type. It's provided for convenience
148
+ # but it's better to be explicit.
149
+ #
150
+ # @see rejected_future, resolved_event, fulfilled_future
151
+ # @!macro promises.param.default_executor
152
+ # @return [Event, Future]
153
+ #
154
+ # @overload make_future(nil, default_executor = self.default_executor)
155
+ # @param [nil] nil
156
+ # @return [Event] resolved event.
157
+ #
158
+ # @overload make_future(a_future, default_executor = self.default_executor)
159
+ # @param [Future] a_future
160
+ # @return [Future] a future which will be resolved when a_future is.
161
+ #
162
+ # @overload make_future(an_event, default_executor = self.default_executor)
163
+ # @param [Event] an_event
164
+ # @return [Event] an event which will be resolved when an_event is.
165
+ #
166
+ # @overload make_future(exception, default_executor = self.default_executor)
167
+ # @param [Exception] exception
168
+ # @return [Future] a rejected future with the exception as its reason.
169
+ #
170
+ # @overload make_future(value, default_executor = self.default_executor)
171
+ # @param [Object] value when none of the above overloads fits
172
+ # @return [Future] a fulfilled future with the value.
173
+ def make_future(argument = nil, default_executor = self.default_executor)
174
+ case argument
175
+ when AbstractEventFuture
176
+ # returning wrapper would change nothing
177
+ argument
178
+ when Exception
179
+ rejected_future argument, default_executor
180
+ when nil
181
+ resolved_event default_executor
182
+ else
183
+ fulfilled_future argument, default_executor
184
+ end
185
+ end
186
+
187
+ # @!macro promises.shortcut.on
188
+ # @return [Future, Event]
189
+ def delay(*args, &task)
190
+ delay_on default_executor, *args, &task
191
+ end
192
+
193
+ # Creates new event or future which is resolved only after it is touched,
194
+ # see {Concurrent::AbstractEventFuture#touch}.
195
+ #
196
+ # @!macro promises.param.default_executor
197
+ # @overload delay_on(default_executor, *args, &task)
198
+ # If task is provided it returns a {Future} representing the result of the task.
199
+ # @!macro promises.param.args
200
+ # @yield [*args] to the task.
201
+ # @!macro promise.param.task-future
202
+ # @return [Future]
203
+ # @overload delay_on(default_executor)
204
+ # If no task is provided, it returns an {Event}
205
+ # @return [Event]
206
+ def delay_on(default_executor, *args, &task)
207
+ event = DelayPromise.new(default_executor).event
208
+ task ? event.chain(*args, &task) : event
209
+ end
210
+
211
+ # @!macro promises.shortcut.on
212
+ # @return [Future, Event]
213
+ def schedule(intended_time, *args, &task)
214
+ schedule_on default_executor, intended_time, *args, &task
215
+ end
216
+
217
+ # Creates new event or future which is resolved in intended_time.
218
+ #
219
+ # @!macro promises.param.default_executor
220
+ # @!macro promises.param.intended_time
221
+ # @param [Numeric, Time] intended_time `Numeric` means to run in `intended_time` seconds.
222
+ # `Time` means to run on `intended_time`.
223
+ # @overload schedule_on(default_executor, intended_time, *args, &task)
224
+ # If task is provided it returns a {Future} representing the result of the task.
225
+ # @!macro promises.param.args
226
+ # @yield [*args] to the task.
227
+ # @!macro promise.param.task-future
228
+ # @return [Future]
229
+ # @overload schedule_on(default_executor, intended_time)
230
+ # If no task is provided, it returns an {Event}
231
+ # @return [Event]
232
+ def schedule_on(default_executor, intended_time, *args, &task)
233
+ event = ScheduledPromise.new(default_executor, intended_time).event
234
+ task ? event.chain(*args, &task) : event
235
+ end
236
+
237
+ # @!macro promises.shortcut.on
238
+ # @return [Future]
239
+ def zip_futures(*futures_and_or_events)
240
+ zip_futures_on default_executor, *futures_and_or_events
241
+ end
242
+
243
+ # Creates new future which is resolved after all futures_and_or_events are resolved.
244
+ # Its value is array of zipped future values. Its reason is array of reasons for rejection.
245
+ # If there is an error it rejects.
246
+ # @!macro promises.event-conversion
247
+ # If event is supplied, which does not have value and can be only resolved, it's
248
+ # represented as `:fulfilled` with value `nil`.
249
+ #
250
+ # @!macro promises.param.default_executor
251
+ # @param [AbstractEventFuture] futures_and_or_events
252
+ # @return [Future]
253
+ def zip_futures_on(default_executor, *futures_and_or_events)
254
+ ZipFuturesPromise.new_blocked_by(futures_and_or_events, default_executor).future
255
+ end
256
+
257
+ alias_method :zip, :zip_futures
258
+
259
+ # @!macro promises.shortcut.on
260
+ # @return [Event]
261
+ def zip_events(*futures_and_or_events)
262
+ zip_events_on default_executor, *futures_and_or_events
263
+ end
264
+
265
+ # Creates new event which is resolved after all futures_and_or_events are resolved.
266
+ # (Future is resolved when fulfilled or rejected.)
267
+ #
268
+ # @!macro promises.param.default_executor
269
+ # @param [AbstractEventFuture] futures_and_or_events
270
+ # @return [Event]
271
+ def zip_events_on(default_executor, *futures_and_or_events)
272
+ ZipEventsPromise.new_blocked_by(futures_and_or_events, default_executor).event
273
+ end
274
+
275
+ # @!macro promises.shortcut.on
276
+ # @return [Future]
277
+ def any_resolved_future(*futures_and_or_events)
278
+ any_resolved_future_on default_executor, *futures_and_or_events
279
+ end
280
+
281
+ alias_method :any, :any_resolved_future
282
+
283
+ # Creates new future which is resolved after first futures_and_or_events is resolved.
284
+ # Its result equals result of the first resolved future.
285
+ # @!macro promises.any-touch
286
+ # If resolved it does not propagate {Concurrent::AbstractEventFuture#touch}, leaving delayed
287
+ # futures un-executed if they are not required any more.
288
+ # @!macro promises.event-conversion
289
+ #
290
+ # @!macro promises.param.default_executor
291
+ # @param [AbstractEventFuture] futures_and_or_events
292
+ # @return [Future]
293
+ def any_resolved_future_on(default_executor, *futures_and_or_events)
294
+ AnyResolvedFuturePromise.new_blocked_by(futures_and_or_events, default_executor).future
295
+ end
296
+
297
+ # @!macro promises.shortcut.on
298
+ # @return [Future]
299
+ def any_fulfilled_future(*futures_and_or_events)
300
+ any_fulfilled_future_on default_executor, *futures_and_or_events
301
+ end
302
+
303
+ # Creates new future which is resolved after first of futures_and_or_events is fulfilled.
304
+ # Its result equals result of the first resolved future or if all futures_and_or_events reject,
305
+ # it has reason of the last resolved future.
306
+ # @!macro promises.any-touch
307
+ # @!macro promises.event-conversion
308
+ #
309
+ # @!macro promises.param.default_executor
310
+ # @param [AbstractEventFuture] futures_and_or_events
311
+ # @return [Future]
312
+ def any_fulfilled_future_on(default_executor, *futures_and_or_events)
313
+ AnyFulfilledFuturePromise.new_blocked_by(futures_and_or_events, default_executor).future
314
+ end
315
+
316
+ # @!macro promises.shortcut.on
317
+ # @return [Event]
318
+ def any_event(*futures_and_or_events)
319
+ any_event_on default_executor, *futures_and_or_events
320
+ end
321
+
322
+ # Creates new event which becomes resolved after first of the futures_and_or_events resolves.
323
+ # @!macro promises.any-touch
324
+ #
325
+ # @!macro promises.param.default_executor
326
+ # @param [AbstractEventFuture] futures_and_or_events
327
+ # @return [Event]
328
+ def any_event_on(default_executor, *futures_and_or_events)
329
+ AnyResolvedEventPromise.new_blocked_by(futures_and_or_events, default_executor).event
330
+ end
331
+
332
+ # TODO consider adding first(count, *futures)
333
+ # TODO consider adding zip_by(slice, *futures) processing futures in slices
334
+ # TODO or rather a generic aggregator taking a function
335
+ end
336
+
337
+ module InternalStates
338
+ # @!visibility private
339
+ class State
340
+ def resolved?
341
+ raise NotImplementedError
342
+ end
343
+
344
+ def to_sym
345
+ raise NotImplementedError
346
+ end
347
+ end
348
+
349
+ # @!visibility private
350
+ class Pending < State
351
+ def resolved?
352
+ false
353
+ end
354
+
355
+ def to_sym
356
+ :pending
357
+ end
358
+ end
359
+
360
+ # @!visibility private
361
+ class Reserved < Pending
362
+ end
363
+
364
+ # @!visibility private
365
+ class ResolvedWithResult < State
366
+ def resolved?
367
+ true
368
+ end
369
+
370
+ def to_sym
371
+ :resolved
372
+ end
373
+
374
+ def result
375
+ [fulfilled?, value, reason]
376
+ end
377
+
378
+ def fulfilled?
379
+ raise NotImplementedError
380
+ end
381
+
382
+ def value
383
+ raise NotImplementedError
384
+ end
385
+
386
+ def reason
387
+ raise NotImplementedError
388
+ end
389
+
390
+ def apply
391
+ raise NotImplementedError
392
+ end
393
+ end
394
+
395
+ # @!visibility private
396
+ class Fulfilled < ResolvedWithResult
397
+
398
+ def initialize(value)
399
+ @Value = value
400
+ end
401
+
402
+ def fulfilled?
403
+ true
404
+ end
405
+
406
+ def apply(args, block)
407
+ block.call value, *args
408
+ end
409
+
410
+ def value
411
+ @Value
412
+ end
413
+
414
+ def reason
415
+ nil
416
+ end
417
+
418
+ def to_sym
419
+ :fulfilled
420
+ end
421
+ end
422
+
423
+ # @!visibility private
424
+ class FulfilledArray < Fulfilled
425
+ def apply(args, block)
426
+ block.call(*value, *args)
427
+ end
428
+ end
429
+
430
+ # @!visibility private
431
+ class Rejected < ResolvedWithResult
432
+ def initialize(reason)
433
+ @Reason = reason
434
+ end
435
+
436
+ def fulfilled?
437
+ false
438
+ end
439
+
440
+ def value
441
+ nil
442
+ end
443
+
444
+ def reason
445
+ @Reason
446
+ end
447
+
448
+ def to_sym
449
+ :rejected
450
+ end
451
+
452
+ def apply(args, block)
453
+ block.call reason, *args
454
+ end
455
+ end
456
+
457
+ # @!visibility private
458
+ class PartiallyRejected < ResolvedWithResult
459
+ def initialize(value, reason)
460
+ super()
461
+ @Value = value
462
+ @Reason = reason
463
+ end
464
+
465
+ def fulfilled?
466
+ false
467
+ end
468
+
469
+ def to_sym
470
+ :rejected
471
+ end
472
+
473
+ def value
474
+ @Value
475
+ end
476
+
477
+ def reason
478
+ @Reason
479
+ end
480
+
481
+ def apply(args, block)
482
+ block.call(*reason, *args)
483
+ end
484
+ end
485
+
486
+ # @!visibility private
487
+ PENDING = Pending.new
488
+ # @!visibility private
489
+ RESERVED = Reserved.new
490
+ # @!visibility private
491
+ RESOLVED = Fulfilled.new(nil)
492
+
493
+ def RESOLVED.to_sym
494
+ :resolved
495
+ end
496
+ end
497
+
498
+ private_constant :InternalStates
499
+
500
+ # @!macro promises.shortcut.event-future
501
+ # @see Event#$0
502
+ # @see Future#$0
503
+
504
+ # @!macro promises.param.timeout
505
+ # @param [Numeric] timeout the maximum time in second to wait.
506
+
507
+ # @!macro promises.warn.blocks
508
+ # @note This function potentially blocks current thread until the Future is resolved.
509
+ # Be careful it can deadlock. Try to chain instead.
510
+
511
+ # Common ancestor of {Event} and {Future} classes, many shared methods are defined here.
512
+ class AbstractEventFuture < Synchronization::Object
513
+ safe_initialization!
514
+ attr_atomic(:internal_state)
515
+ private :internal_state=, :swap_internal_state, :compare_and_set_internal_state, :update_internal_state
516
+ # @!method internal_state
517
+ # @!visibility private
518
+
519
+ include InternalStates
520
+
521
+ def initialize(promise, default_executor)
522
+ super()
523
+ @Lock = Mutex.new
524
+ @Condition = ConditionVariable.new
525
+ @Promise = promise
526
+ @DefaultExecutor = default_executor
527
+ @Callbacks = LockFreeStack.new
528
+ @Waiters = AtomicFixnum.new 0
529
+ self.internal_state = PENDING
530
+ end
531
+
532
+ private :initialize
533
+
534
+ # Returns its state.
535
+ # @return [Symbol]
536
+ #
537
+ # @overload an_event.state
538
+ # @return [:pending, :resolved]
539
+ # @overload a_future.state
540
+ # Both :fulfilled, :rejected implies :resolved.
541
+ # @return [:pending, :fulfilled, :rejected]
542
+ def state
543
+ internal_state.to_sym
544
+ end
545
+
546
+ # Is it in pending state?
547
+ # @return [Boolean]
548
+ def pending?
549
+ !internal_state.resolved?
550
+ end
551
+
552
+ # Is it in resolved state?
553
+ # @return [Boolean]
554
+ def resolved?
555
+ internal_state.resolved?
556
+ end
557
+
558
+ # Propagates touch. Requests all the delayed futures, which it depends on, to be
559
+ # executed. This method is called by any other method requiring resolved state, like {#wait}.
560
+ # @return [self]
561
+ def touch
562
+ @Promise.touch
563
+ self
564
+ end
565
+
566
+ # @!macro promises.touches
567
+ # Calls {Concurrent::AbstractEventFuture#touch}.
568
+
569
+ # @!macro promises.method.wait
570
+ # Wait (block the Thread) until receiver is {#resolved?}.
571
+ # @!macro promises.touches
572
+ #
573
+ # @!macro promises.warn.blocks
574
+ # @!macro promises.param.timeout
575
+ # @return [self, true, false] self implies timeout was not used, true implies timeout was used
576
+ # and it was resolved, false implies it was not resolved within timeout.
577
+ def wait(timeout = nil)
578
+ result = wait_until_resolved(timeout)
579
+ timeout ? result : self
580
+ end
581
+
582
+ # Returns default executor.
583
+ # @return [Executor] default executor
584
+ # @see #with_default_executor
585
+ # @see FactoryMethods#future_on
586
+ # @see FactoryMethods#resolvable_future
587
+ # @see FactoryMethods#any_fulfilled_future_on
588
+ # @see similar
589
+ def default_executor
590
+ @DefaultExecutor
591
+ end
592
+
593
+ # @!macro promises.shortcut.on
594
+ # @return [Future]
595
+ def chain(*args, &task)
596
+ chain_on @DefaultExecutor, *args, &task
597
+ end
598
+
599
+ # Chains the task to be executed asynchronously on executor after it is resolved.
600
+ #
601
+ # @!macro promises.param.executor
602
+ # @!macro promises.param.args
603
+ # @return [Future]
604
+ # @!macro promise.param.task-future
605
+ #
606
+ # @overload an_event.chain_on(executor, *args, &task)
607
+ # @yield [*args] to the task.
608
+ # @overload a_future.chain_on(executor, *args, &task)
609
+ # @yield [fulfilled, value, reason, *args] to the task.
610
+ # @yieldparam [true, false] fulfilled
611
+ # @yieldparam [Object] value
612
+ # @yieldparam [Object] reason
613
+ def chain_on(executor, *args, &task)
614
+ ChainPromise.new_blocked_by1(self, @DefaultExecutor, executor, args, &task).future
615
+ end
616
+
617
+ # @return [String] Short string representation.
618
+ def to_s
619
+ format '%s %s>', super[0..-2], state
620
+ end
621
+
622
+ alias_method :inspect, :to_s
623
+
624
+ # Resolves the resolvable when receiver is resolved.
625
+ #
626
+ # @param [Resolvable] resolvable
627
+ # @return [self]
628
+ def chain_resolvable(resolvable)
629
+ on_resolution! { resolvable.resolve_with internal_state }
630
+ end
631
+
632
+ alias_method :tangle, :chain_resolvable
633
+
634
+ # @!macro promises.shortcut.using
635
+ # @return [self]
636
+ def on_resolution(*args, &callback)
637
+ on_resolution_using @DefaultExecutor, *args, &callback
638
+ end
639
+
640
+ # Stores the callback to be executed synchronously on resolving thread after it is
641
+ # resolved.
642
+ #
643
+ # @!macro promises.param.args
644
+ # @!macro promise.param.callback
645
+ # @return [self]
646
+ #
647
+ # @overload an_event.on_resolution!(*args, &callback)
648
+ # @yield [*args] to the callback.
649
+ # @overload a_future.on_resolution!(*args, &callback)
650
+ # @yield [fulfilled, value, reason, *args] to the callback.
651
+ # @yieldparam [true, false] fulfilled
652
+ # @yieldparam [Object] value
653
+ # @yieldparam [Object] reason
654
+ def on_resolution!(*args, &callback)
655
+ add_callback :callback_on_resolution, args, callback
656
+ end
657
+
658
+ # Stores the callback to be executed asynchronously on executor after it is resolved.
659
+ #
660
+ # @!macro promises.param.executor
661
+ # @!macro promises.param.args
662
+ # @!macro promise.param.callback
663
+ # @return [self]
664
+ #
665
+ # @overload an_event.on_resolution_using(executor, *args, &callback)
666
+ # @yield [*args] to the callback.
667
+ # @overload a_future.on_resolution_using(executor, *args, &callback)
668
+ # @yield [fulfilled, value, reason, *args] to the callback.
669
+ # @yieldparam [true, false] fulfilled
670
+ # @yieldparam [Object] value
671
+ # @yieldparam [Object] reason
672
+ def on_resolution_using(executor, *args, &callback)
673
+ add_callback :async_callback_on_resolution, executor, args, callback
674
+ end
675
+
676
+ # @!macro promises.method.with_default_executor
677
+ # Crates new object with same class with the executor set as its new default executor.
678
+ # Any futures depending on it will use the new default executor.
679
+ # @!macro promises.shortcut.event-future
680
+ # @abstract
681
+ # @return [AbstractEventFuture]
682
+ def with_default_executor(executor)
683
+ raise NotImplementedError
684
+ end
685
+
686
+ # @!visibility private
687
+ def resolve_with(state, raise_on_reassign = true, reserved = false)
688
+ if compare_and_set_internal_state(reserved ? RESERVED : PENDING, state)
689
+ # go to synchronized block only if there were waiting threads
690
+ @Lock.synchronize { @Condition.broadcast } unless @Waiters.value == 0
691
+ call_callbacks state
692
+ else
693
+ return rejected_resolution(raise_on_reassign, state)
694
+ end
695
+ self
696
+ end
697
+
698
+ # For inspection.
699
+ # @!visibility private
700
+ # @return [Array<AbstractPromise>]
701
+ def blocks
702
+ @Callbacks.each_with_object([]) do |(method, args), promises|
703
+ promises.push(args[0]) if method == :callback_notify_blocked
704
+ end
705
+ end
706
+
707
+ # For inspection.
708
+ # @!visibility private
709
+ def callbacks
710
+ @Callbacks.each.to_a
711
+ end
712
+
713
+ # For inspection.
714
+ # @!visibility private
715
+ def promise
716
+ @Promise
717
+ end
718
+
719
+ # For inspection.
720
+ # @!visibility private
721
+ def touched?
722
+ promise.touched?
723
+ end
724
+
725
+ # For inspection.
726
+ # @!visibility private
727
+ def waiting_threads
728
+ @Waiters.each.to_a
729
+ end
730
+
731
+ # @!visibility private
732
+ def add_callback_notify_blocked(promise, index)
733
+ add_callback :callback_notify_blocked, promise, index
734
+ end
735
+
736
+ # @!visibility private
737
+ def add_callback_clear_delayed_node(node)
738
+ add_callback(:callback_clear_delayed_node, node)
739
+ end
740
+
741
+ # @!visibility private
742
+ def with_hidden_resolvable
743
+ # TODO (pitr-ch 10-Dec-2018): documentation, better name if in edge
744
+ self
745
+ end
746
+
747
+ private
748
+
749
+ def add_callback(method, *args)
750
+ state = internal_state
751
+ if state.resolved?
752
+ call_callback method, state, args
753
+ else
754
+ @Callbacks.push [method, args]
755
+ state = internal_state
756
+ # take back if it was resolved in the meanwhile
757
+ call_callbacks state if state.resolved?
758
+ end
759
+ self
760
+ end
761
+
762
+ def callback_clear_delayed_node(state, node)
763
+ node.value = nil
764
+ end
765
+
766
+ # @return [Boolean]
767
+ def wait_until_resolved(timeout)
768
+ return true if resolved?
769
+
770
+ touch
771
+
772
+ @Lock.synchronize do
773
+ @Waiters.increment
774
+ begin
775
+ unless resolved?
776
+ @Condition.wait @Lock, timeout
777
+ end
778
+ ensure
779
+ # JRuby may raise ConcurrencyError
780
+ @Waiters.decrement
781
+ end
782
+ end
783
+ resolved?
784
+ end
785
+
786
+ def call_callback(method, state, args)
787
+ self.send method, state, *args
788
+ end
789
+
790
+ def call_callbacks(state)
791
+ method, args = @Callbacks.pop
792
+ while method
793
+ call_callback method, state, args
794
+ method, args = @Callbacks.pop
795
+ end
796
+ end
797
+
798
+ def with_async(executor, *args, &block)
799
+ Concurrent.executor(executor).post(*args, &block)
800
+ end
801
+
802
+ def async_callback_on_resolution(state, executor, args, callback)
803
+ with_async(executor, state, args, callback) do |st, ar, cb|
804
+ callback_on_resolution st, ar, cb
805
+ end
806
+ end
807
+
808
+ def callback_notify_blocked(state, promise, index)
809
+ promise.on_blocker_resolution self, index
810
+ end
811
+ end
812
+
813
+ # Represents an event which will happen in future (will be resolved). The event is either
814
+ # pending or resolved. It should be always resolved. Use {Future} to communicate rejections and
815
+ # cancellation.
816
+ class Event < AbstractEventFuture
817
+
818
+ alias_method :then, :chain
819
+
820
+
821
+ # @!macro promises.method.zip
822
+ # Creates a new event or a future which will be resolved when receiver and other are.
823
+ # Returns an event if receiver and other are events, otherwise returns a future.
824
+ # If just one of the parties is Future then the result
825
+ # of the returned future is equal to the result of the supplied future. If both are futures
826
+ # then the result is as described in {FactoryMethods#zip_futures_on}.
827
+ #
828
+ # @return [Future, Event]
829
+ def zip(other)
830
+ if other.is_a?(Future)
831
+ ZipFutureEventPromise.new_blocked_by2(other, self, @DefaultExecutor).future
832
+ else
833
+ ZipEventEventPromise.new_blocked_by2(self, other, @DefaultExecutor).event
834
+ end
835
+ end
836
+
837
+ alias_method :&, :zip
838
+
839
+ # Creates a new event which will be resolved when the first of receiver, `event_or_future`
840
+ # resolves.
841
+ #
842
+ # @return [Event]
843
+ def any(event_or_future)
844
+ AnyResolvedEventPromise.new_blocked_by2(self, event_or_future, @DefaultExecutor).event
845
+ end
846
+
847
+ alias_method :|, :any
848
+
849
+ # Creates new event dependent on receiver which will not evaluate until touched, see {#touch}.
850
+ # In other words, it inserts delay into the chain of Futures making rest of it lazy evaluated.
851
+ #
852
+ # @return [Event]
853
+ def delay
854
+ event = DelayPromise.new(@DefaultExecutor).event
855
+ ZipEventEventPromise.new_blocked_by2(self, event, @DefaultExecutor).event
856
+ end
857
+
858
+ # @!macro promise.method.schedule
859
+ # Creates new event dependent on receiver scheduled to execute on/in intended_time.
860
+ # In time is interpreted from the moment the receiver is resolved, therefore it inserts
861
+ # delay into the chain.
862
+ #
863
+ # @!macro promises.param.intended_time
864
+ # @return [Event]
865
+ def schedule(intended_time)
866
+ chain do
867
+ event = ScheduledPromise.new(@DefaultExecutor, intended_time).event
868
+ ZipEventEventPromise.new_blocked_by2(self, event, @DefaultExecutor).event
869
+ end.flat_event
870
+ end
871
+
872
+ # Converts event to a future. The future is fulfilled when the event is resolved, the future may never fail.
873
+ #
874
+ # @return [Future]
875
+ def to_future
876
+ future = Promises.resolvable_future
877
+ ensure
878
+ chain_resolvable(future)
879
+ end
880
+
881
+ # Returns self, since this is event
882
+ # @return [Event]
883
+ def to_event
884
+ self
885
+ end
886
+
887
+ # @!macro promises.method.with_default_executor
888
+ # @return [Event]
889
+ def with_default_executor(executor)
890
+ EventWrapperPromise.new_blocked_by1(self, executor).event
891
+ end
892
+
893
+ private
894
+
895
+ def rejected_resolution(raise_on_reassign, state)
896
+ raise Concurrent::MultipleAssignmentError.new('Event can be resolved only once') if raise_on_reassign
897
+ return false
898
+ end
899
+
900
+ def callback_on_resolution(state, args, callback)
901
+ callback.call(*args)
902
+ end
903
+ end
904
+
905
+ # Represents a value which will become available in future. May reject with a reason instead,
906
+ # e.g. when the tasks raises an exception.
907
+ class Future < AbstractEventFuture
908
+
909
+ # Is it in fulfilled state?
910
+ # @return [Boolean]
911
+ def fulfilled?
912
+ state = internal_state
913
+ state.resolved? && state.fulfilled?
914
+ end
915
+
916
+ # Is it in rejected state?
917
+ # @return [Boolean]
918
+ def rejected?
919
+ state = internal_state
920
+ state.resolved? && !state.fulfilled?
921
+ end
922
+
923
+ # @!macro promises.warn.nil
924
+ # @note Make sure returned `nil` is not confused with timeout, no value when rejected,
925
+ # no reason when fulfilled, etc.
926
+ # Use more exact methods if needed, like {#wait}, {#value!}, {#result}, etc.
927
+
928
+ # @!macro promises.method.value
929
+ # Return value of the future.
930
+ # @!macro promises.touches
931
+ #
932
+ # @!macro promises.warn.blocks
933
+ # @!macro promises.warn.nil
934
+ # @!macro promises.param.timeout
935
+ # @!macro promises.param.timeout_value
936
+ # @param [Object] timeout_value a value returned by the method when it times out
937
+ # @return [Object, nil, timeout_value] the value of the Future when fulfilled,
938
+ # timeout_value on timeout,
939
+ # nil on rejection.
940
+ def value(timeout = nil, timeout_value = nil)
941
+ if wait_until_resolved timeout
942
+ internal_state.value
943
+ else
944
+ timeout_value
945
+ end
946
+ end
947
+
948
+ # Returns reason of future's rejection.
949
+ # @!macro promises.touches
950
+ #
951
+ # @!macro promises.warn.blocks
952
+ # @!macro promises.warn.nil
953
+ # @!macro promises.param.timeout
954
+ # @!macro promises.param.timeout_value
955
+ # @return [Object, timeout_value] the reason, or timeout_value on timeout, or nil on fulfillment.
956
+ def reason(timeout = nil, timeout_value = nil)
957
+ if wait_until_resolved timeout
958
+ internal_state.reason
959
+ else
960
+ timeout_value
961
+ end
962
+ end
963
+
964
+ # Returns triplet fulfilled?, value, reason.
965
+ # @!macro promises.touches
966
+ #
967
+ # @!macro promises.warn.blocks
968
+ # @!macro promises.param.timeout
969
+ # @return [Array(Boolean, Object, Object), nil] triplet of fulfilled?, value, reason, or nil
970
+ # on timeout.
971
+ def result(timeout = nil)
972
+ internal_state.result if wait_until_resolved timeout
973
+ end
974
+
975
+ # @!macro promises.method.wait
976
+ # @raise [Exception] {#reason} on rejection
977
+ def wait!(timeout = nil)
978
+ result = wait_until_resolved!(timeout)
979
+ timeout ? result : self
980
+ end
981
+
982
+ # @!macro promises.method.value
983
+ # @return [Object, nil, timeout_value] the value of the Future when fulfilled,
984
+ # or nil on rejection,
985
+ # or timeout_value on timeout.
986
+ # @raise [Exception] {#reason} on rejection
987
+ def value!(timeout = nil, timeout_value = nil)
988
+ if wait_until_resolved! timeout
989
+ internal_state.value
990
+ else
991
+ timeout_value
992
+ end
993
+ end
994
+
995
+ # Allows rejected Future to be risen with `raise` method.
996
+ # If the reason is not an exception `Runtime.new(reason)` is returned.
997
+ #
998
+ # @example
999
+ # raise Promises.rejected_future(StandardError.new("boom"))
1000
+ # raise Promises.rejected_future("or just boom")
1001
+ # @raise [Concurrent::Error] when raising not rejected future
1002
+ # @return [Exception]
1003
+ def exception(*args)
1004
+ raise Concurrent::Error, 'it is not rejected' unless rejected?
1005
+ raise ArgumentError unless args.size <= 1
1006
+ reason = Array(internal_state.reason).flatten.compact
1007
+ if reason.size > 1
1008
+ ex = Concurrent::MultipleErrors.new reason
1009
+ ex.set_backtrace(caller)
1010
+ ex
1011
+ else
1012
+ ex = if reason[0].respond_to? :exception
1013
+ reason[0].exception(*args)
1014
+ else
1015
+ RuntimeError.new(reason[0]).exception(*args)
1016
+ end
1017
+ ex.set_backtrace Array(ex.backtrace) + caller
1018
+ ex
1019
+ end
1020
+ end
1021
+
1022
+ # @!macro promises.shortcut.on
1023
+ # @return [Future]
1024
+ def then(*args, &task)
1025
+ then_on @DefaultExecutor, *args, &task
1026
+ end
1027
+
1028
+ # Chains the task to be executed asynchronously on executor after it fulfills. Does not run
1029
+ # the task if it rejects. It will resolve though, triggering any dependent futures.
1030
+ #
1031
+ # @!macro promises.param.executor
1032
+ # @!macro promises.param.args
1033
+ # @!macro promise.param.task-future
1034
+ # @return [Future]
1035
+ # @yield [value, *args] to the task.
1036
+ def then_on(executor, *args, &task)
1037
+ ThenPromise.new_blocked_by1(self, @DefaultExecutor, executor, args, &task).future
1038
+ end
1039
+
1040
+ # @!macro promises.shortcut.on
1041
+ # @return [Future]
1042
+ def rescue(*args, &task)
1043
+ rescue_on @DefaultExecutor, *args, &task
1044
+ end
1045
+
1046
+ # Chains the task to be executed asynchronously on executor after it rejects. Does not run
1047
+ # the task if it fulfills. It will resolve though, triggering any dependent futures.
1048
+ #
1049
+ # @!macro promises.param.executor
1050
+ # @!macro promises.param.args
1051
+ # @!macro promise.param.task-future
1052
+ # @return [Future]
1053
+ # @yield [reason, *args] to the task.
1054
+ def rescue_on(executor, *args, &task)
1055
+ RescuePromise.new_blocked_by1(self, @DefaultExecutor, executor, args, &task).future
1056
+ end
1057
+
1058
+ # @!macro promises.method.zip
1059
+ # @return [Future]
1060
+ def zip(other)
1061
+ if other.is_a?(Future)
1062
+ ZipFuturesPromise.new_blocked_by2(self, other, @DefaultExecutor).future
1063
+ else
1064
+ ZipFutureEventPromise.new_blocked_by2(self, other, @DefaultExecutor).future
1065
+ end
1066
+ end
1067
+
1068
+ alias_method :&, :zip
1069
+
1070
+ # Creates a new event which will be resolved when the first of receiver, `event_or_future`
1071
+ # resolves. Returning future will have value nil if event_or_future is event and resolves
1072
+ # first.
1073
+ #
1074
+ # @return [Future]
1075
+ def any(event_or_future)
1076
+ AnyResolvedFuturePromise.new_blocked_by2(self, event_or_future, @DefaultExecutor).future
1077
+ end
1078
+
1079
+ alias_method :|, :any
1080
+
1081
+ # Creates new future dependent on receiver which will not evaluate until touched, see {#touch}.
1082
+ # In other words, it inserts delay into the chain of Futures making rest of it lazy evaluated.
1083
+ #
1084
+ # @return [Future]
1085
+ def delay
1086
+ event = DelayPromise.new(@DefaultExecutor).event
1087
+ ZipFutureEventPromise.new_blocked_by2(self, event, @DefaultExecutor).future
1088
+ end
1089
+
1090
+ # @!macro promise.method.schedule
1091
+ # @return [Future]
1092
+ def schedule(intended_time)
1093
+ chain do
1094
+ event = ScheduledPromise.new(@DefaultExecutor, intended_time).event
1095
+ ZipFutureEventPromise.new_blocked_by2(self, event, @DefaultExecutor).future
1096
+ end.flat
1097
+ end
1098
+
1099
+ # @!macro promises.method.with_default_executor
1100
+ # @return [Future]
1101
+ def with_default_executor(executor)
1102
+ FutureWrapperPromise.new_blocked_by1(self, executor).future
1103
+ end
1104
+
1105
+ # Creates new future which will have result of the future returned by receiver. If receiver
1106
+ # rejects it will have its rejection.
1107
+ #
1108
+ # @param [Integer] level how many levels of futures should flatten
1109
+ # @return [Future]
1110
+ def flat_future(level = 1)
1111
+ FlatFuturePromise.new_blocked_by1(self, level, @DefaultExecutor).future
1112
+ end
1113
+
1114
+ alias_method :flat, :flat_future
1115
+
1116
+ # Creates new event which will be resolved when the returned event by receiver is.
1117
+ # Be careful if the receiver rejects it will just resolve since Event does not hold reason.
1118
+ #
1119
+ # @return [Event]
1120
+ def flat_event
1121
+ FlatEventPromise.new_blocked_by1(self, @DefaultExecutor).event
1122
+ end
1123
+
1124
+ # @!macro promises.shortcut.using
1125
+ # @return [self]
1126
+ def on_fulfillment(*args, &callback)
1127
+ on_fulfillment_using @DefaultExecutor, *args, &callback
1128
+ end
1129
+
1130
+ # Stores the callback to be executed synchronously on resolving thread after it is
1131
+ # fulfilled. Does nothing on rejection.
1132
+ #
1133
+ # @!macro promises.param.args
1134
+ # @!macro promise.param.callback
1135
+ # @return [self]
1136
+ # @yield [value, *args] to the callback.
1137
+ def on_fulfillment!(*args, &callback)
1138
+ add_callback :callback_on_fulfillment, args, callback
1139
+ end
1140
+
1141
+ # Stores the callback to be executed asynchronously on executor after it is
1142
+ # fulfilled. Does nothing on rejection.
1143
+ #
1144
+ # @!macro promises.param.executor
1145
+ # @!macro promises.param.args
1146
+ # @!macro promise.param.callback
1147
+ # @return [self]
1148
+ # @yield [value, *args] to the callback.
1149
+ def on_fulfillment_using(executor, *args, &callback)
1150
+ add_callback :async_callback_on_fulfillment, executor, args, callback
1151
+ end
1152
+
1153
+ # @!macro promises.shortcut.using
1154
+ # @return [self]
1155
+ def on_rejection(*args, &callback)
1156
+ on_rejection_using @DefaultExecutor, *args, &callback
1157
+ end
1158
+
1159
+ # Stores the callback to be executed synchronously on resolving thread after it is
1160
+ # rejected. Does nothing on fulfillment.
1161
+ #
1162
+ # @!macro promises.param.args
1163
+ # @!macro promise.param.callback
1164
+ # @return [self]
1165
+ # @yield [reason, *args] to the callback.
1166
+ def on_rejection!(*args, &callback)
1167
+ add_callback :callback_on_rejection, args, callback
1168
+ end
1169
+
1170
+ # Stores the callback to be executed asynchronously on executor after it is
1171
+ # rejected. Does nothing on fulfillment.
1172
+ #
1173
+ # @!macro promises.param.executor
1174
+ # @!macro promises.param.args
1175
+ # @!macro promise.param.callback
1176
+ # @return [self]
1177
+ # @yield [reason, *args] to the callback.
1178
+ def on_rejection_using(executor, *args, &callback)
1179
+ add_callback :async_callback_on_rejection, executor, args, callback
1180
+ end
1181
+
1182
+ # Allows to use futures as green threads. The receiver has to evaluate to a future which
1183
+ # represents what should be done next. It basically flattens indefinitely until non Future
1184
+ # values is returned which becomes result of the returned future. Any encountered exception
1185
+ # will become reason of the returned future.
1186
+ #
1187
+ # @return [Future]
1188
+ # @param [#call(value)] run_test
1189
+ # an object which when called returns either Future to keep running with
1190
+ # or nil, then the run completes with the value.
1191
+ # The run_test can be used to extract the Future from deeper structure,
1192
+ # or to distinguish Future which is a resulting value from a future
1193
+ # which is suppose to continue running.
1194
+ # @example
1195
+ # body = lambda do |v|
1196
+ # v += 1
1197
+ # v < 5 ? Promises.future(v, &body) : v
1198
+ # end
1199
+ # Promises.future(0, &body).run.value! # => 5
1200
+ def run(run_test = method(:run_test))
1201
+ RunFuturePromise.new_blocked_by1(self, @DefaultExecutor, run_test).future
1202
+ end
1203
+
1204
+ # @!visibility private
1205
+ def apply(args, block)
1206
+ internal_state.apply args, block
1207
+ end
1208
+
1209
+ # Converts future to event which is resolved when future is resolved by fulfillment or rejection.
1210
+ #
1211
+ # @return [Event]
1212
+ def to_event
1213
+ event = Promises.resolvable_event
1214
+ ensure
1215
+ chain_resolvable(event)
1216
+ end
1217
+
1218
+ # Returns self, since this is a future
1219
+ # @return [Future]
1220
+ def to_future
1221
+ self
1222
+ end
1223
+
1224
+ # @return [String] Short string representation.
1225
+ def to_s
1226
+ if resolved?
1227
+ format '%s with %s>', super[0..-2], (fulfilled? ? value : reason).inspect
1228
+ else
1229
+ super
1230
+ end
1231
+ end
1232
+
1233
+ alias_method :inspect, :to_s
1234
+
1235
+ private
1236
+
1237
+ def run_test(v)
1238
+ v if v.is_a?(Future)
1239
+ end
1240
+
1241
+ def rejected_resolution(raise_on_reassign, state)
1242
+ if raise_on_reassign
1243
+ if internal_state == RESERVED
1244
+ raise Concurrent::MultipleAssignmentError.new(
1245
+ "Future can be resolved only once. It is already reserved.")
1246
+ else
1247
+ raise Concurrent::MultipleAssignmentError.new(
1248
+ "Future can be resolved only once. It's #{result}, trying to set #{state.result}.",
1249
+ current_result: result,
1250
+ new_result: state.result)
1251
+ end
1252
+ end
1253
+ return false
1254
+ end
1255
+
1256
+ def wait_until_resolved!(timeout = nil)
1257
+ result = wait_until_resolved(timeout)
1258
+ raise self if rejected?
1259
+ result
1260
+ end
1261
+
1262
+ def async_callback_on_fulfillment(state, executor, args, callback)
1263
+ with_async(executor, state, args, callback) do |st, ar, cb|
1264
+ callback_on_fulfillment st, ar, cb
1265
+ end
1266
+ end
1267
+
1268
+ def async_callback_on_rejection(state, executor, args, callback)
1269
+ with_async(executor, state, args, callback) do |st, ar, cb|
1270
+ callback_on_rejection st, ar, cb
1271
+ end
1272
+ end
1273
+
1274
+ def callback_on_fulfillment(state, args, callback)
1275
+ state.apply args, callback if state.fulfilled?
1276
+ end
1277
+
1278
+ def callback_on_rejection(state, args, callback)
1279
+ state.apply args, callback unless state.fulfilled?
1280
+ end
1281
+
1282
+ def callback_on_resolution(state, args, callback)
1283
+ callback.call(*state.result, *args)
1284
+ end
1285
+
1286
+ end
1287
+
1288
+ # Marker module of Future, Event resolved manually.
1289
+ module Resolvable
1290
+ include InternalStates
1291
+ end
1292
+
1293
+ # A Event which can be resolved by user.
1294
+ class ResolvableEvent < Event
1295
+ include Resolvable
1296
+
1297
+ # @!macro raise_on_reassign
1298
+ # @raise [MultipleAssignmentError] when already resolved and raise_on_reassign is true.
1299
+
1300
+ # @!macro promise.param.raise_on_reassign
1301
+ # @param [Boolean] raise_on_reassign should method raise exception if already resolved
1302
+ # @return [self, false] false is returned when raise_on_reassign is false and the receiver
1303
+ # is already resolved.
1304
+ #
1305
+
1306
+ # Makes the event resolved, which triggers all dependent futures.
1307
+ #
1308
+ # @!macro promise.param.raise_on_reassign
1309
+ # @!macro promise.param.reserved
1310
+ # @param [true, false] reserved
1311
+ # Set to true if the resolvable is {#reserve}d by you,
1312
+ # marks resolution of reserved resolvable events and futures explicitly.
1313
+ # Advanced feature, ignore unless you use {Resolvable#reserve} from edge.
1314
+ def resolve(raise_on_reassign = true, reserved = false)
1315
+ resolve_with RESOLVED, raise_on_reassign, reserved
1316
+ end
1317
+
1318
+ # Creates new event wrapping receiver, effectively hiding the resolve method.
1319
+ #
1320
+ # @return [Event]
1321
+ def with_hidden_resolvable
1322
+ @with_hidden_resolvable ||= EventWrapperPromise.new_blocked_by1(self, @DefaultExecutor).event
1323
+ end
1324
+
1325
+ # Behaves as {AbstractEventFuture#wait} but has one additional optional argument
1326
+ # resolve_on_timeout.
1327
+ #
1328
+ # @param [true, false] resolve_on_timeout
1329
+ # If it times out and the argument is true it will also resolve the event.
1330
+ # @return [self, true, false]
1331
+ # @see AbstractEventFuture#wait
1332
+ def wait(timeout = nil, resolve_on_timeout = false)
1333
+ super(timeout) or if resolve_on_timeout
1334
+ # if it fails to resolve it was resolved in the meantime
1335
+ # so return true as if there was no timeout
1336
+ !resolve(false)
1337
+ else
1338
+ false
1339
+ end
1340
+ end
1341
+ end
1342
+
1343
+ # A Future which can be resolved by user.
1344
+ class ResolvableFuture < Future
1345
+ include Resolvable
1346
+
1347
+ # Makes the future resolved with result of triplet `fulfilled?`, `value`, `reason`,
1348
+ # which triggers all dependent futures.
1349
+ #
1350
+ # @param [true, false] fulfilled
1351
+ # @param [Object] value
1352
+ # @param [Object] reason
1353
+ # @!macro promise.param.raise_on_reassign
1354
+ # @!macro promise.param.reserved
1355
+ def resolve(fulfilled = true, value = nil, reason = nil, raise_on_reassign = true, reserved = false)
1356
+ resolve_with(fulfilled ? Fulfilled.new(value) : Rejected.new(reason), raise_on_reassign, reserved)
1357
+ end
1358
+
1359
+ # Makes the future fulfilled with `value`,
1360
+ # which triggers all dependent futures.
1361
+ #
1362
+ # @param [Object] value
1363
+ # @!macro promise.param.raise_on_reassign
1364
+ # @!macro promise.param.reserved
1365
+ def fulfill(value, raise_on_reassign = true, reserved = false)
1366
+ resolve_with Fulfilled.new(value), raise_on_reassign, reserved
1367
+ end
1368
+
1369
+ # Makes the future rejected with `reason`,
1370
+ # which triggers all dependent futures.
1371
+ #
1372
+ # @param [Object] reason
1373
+ # @!macro promise.param.raise_on_reassign
1374
+ # @!macro promise.param.reserved
1375
+ def reject(reason, raise_on_reassign = true, reserved = false)
1376
+ resolve_with Rejected.new(reason), raise_on_reassign, reserved
1377
+ end
1378
+
1379
+ # Evaluates the block and sets its result as future's value fulfilling, if the block raises
1380
+ # an exception the future rejects with it.
1381
+ #
1382
+ # @yield [*args] to the block.
1383
+ # @yieldreturn [Object] value
1384
+ # @return [self]
1385
+ def evaluate_to(*args, &block)
1386
+ promise.evaluate_to(*args, block)
1387
+ end
1388
+
1389
+ # Evaluates the block and sets its result as future's value fulfilling, if the block raises
1390
+ # an exception the future rejects with it.
1391
+ #
1392
+ # @yield [*args] to the block.
1393
+ # @yieldreturn [Object] value
1394
+ # @return [self]
1395
+ # @raise [Exception] also raise reason on rejection.
1396
+ def evaluate_to!(*args, &block)
1397
+ promise.evaluate_to(*args, block).wait!
1398
+ end
1399
+
1400
+ # @!macro promises.resolvable.resolve_on_timeout
1401
+ # @param [::Array(true, Object, nil), ::Array(false, nil, Exception), nil] resolve_on_timeout
1402
+ # If it times out and the argument is not nil it will also resolve the future
1403
+ # to the provided resolution.
1404
+
1405
+ # Behaves as {AbstractEventFuture#wait} but has one additional optional argument
1406
+ # resolve_on_timeout.
1407
+ #
1408
+ # @!macro promises.resolvable.resolve_on_timeout
1409
+ # @return [self, true, false]
1410
+ # @see AbstractEventFuture#wait
1411
+ def wait(timeout = nil, resolve_on_timeout = nil)
1412
+ super(timeout) or if resolve_on_timeout
1413
+ # if it fails to resolve it was resolved in the meantime
1414
+ # so return true as if there was no timeout
1415
+ !resolve(*resolve_on_timeout, false)
1416
+ else
1417
+ false
1418
+ end
1419
+ end
1420
+
1421
+ # Behaves as {Future#wait!} but has one additional optional argument
1422
+ # resolve_on_timeout.
1423
+ #
1424
+ # @!macro promises.resolvable.resolve_on_timeout
1425
+ # @return [self, true, false]
1426
+ # @raise [Exception] {#reason} on rejection
1427
+ # @see Future#wait!
1428
+ def wait!(timeout = nil, resolve_on_timeout = nil)
1429
+ super(timeout) or if resolve_on_timeout
1430
+ if resolve(*resolve_on_timeout, false)
1431
+ false
1432
+ else
1433
+ # if it fails to resolve it was resolved in the meantime
1434
+ # so return true as if there was no timeout
1435
+ raise self if rejected?
1436
+ true
1437
+ end
1438
+ else
1439
+ false
1440
+ end
1441
+ end
1442
+
1443
+ # Behaves as {Future#value} but has one additional optional argument
1444
+ # resolve_on_timeout.
1445
+ #
1446
+ # @!macro promises.resolvable.resolve_on_timeout
1447
+ # @return [Object, timeout_value, nil]
1448
+ # @see Future#value
1449
+ def value(timeout = nil, timeout_value = nil, resolve_on_timeout = nil)
1450
+ if wait_until_resolved timeout
1451
+ internal_state.value
1452
+ else
1453
+ if resolve_on_timeout
1454
+ unless resolve(*resolve_on_timeout, false)
1455
+ # if it fails to resolve it was resolved in the meantime
1456
+ # so return value as if there was no timeout
1457
+ return internal_state.value
1458
+ end
1459
+ end
1460
+ timeout_value
1461
+ end
1462
+ end
1463
+
1464
+ # Behaves as {Future#value!} but has one additional optional argument
1465
+ # resolve_on_timeout.
1466
+ #
1467
+ # @!macro promises.resolvable.resolve_on_timeout
1468
+ # @return [Object, timeout_value, nil]
1469
+ # @raise [Exception] {#reason} on rejection
1470
+ # @see Future#value!
1471
+ def value!(timeout = nil, timeout_value = nil, resolve_on_timeout = nil)
1472
+ if wait_until_resolved! timeout
1473
+ internal_state.value
1474
+ else
1475
+ if resolve_on_timeout
1476
+ unless resolve(*resolve_on_timeout, false)
1477
+ # if it fails to resolve it was resolved in the meantime
1478
+ # so return value as if there was no timeout
1479
+ raise self if rejected?
1480
+ return internal_state.value
1481
+ end
1482
+ end
1483
+ timeout_value
1484
+ end
1485
+ end
1486
+
1487
+ # Behaves as {Future#reason} but has one additional optional argument
1488
+ # resolve_on_timeout.
1489
+ #
1490
+ # @!macro promises.resolvable.resolve_on_timeout
1491
+ # @return [Exception, timeout_value, nil]
1492
+ # @see Future#reason
1493
+ def reason(timeout = nil, timeout_value = nil, resolve_on_timeout = nil)
1494
+ if wait_until_resolved timeout
1495
+ internal_state.reason
1496
+ else
1497
+ if resolve_on_timeout
1498
+ unless resolve(*resolve_on_timeout, false)
1499
+ # if it fails to resolve it was resolved in the meantime
1500
+ # so return value as if there was no timeout
1501
+ return internal_state.reason
1502
+ end
1503
+ end
1504
+ timeout_value
1505
+ end
1506
+ end
1507
+
1508
+ # Behaves as {Future#result} but has one additional optional argument
1509
+ # resolve_on_timeout.
1510
+ #
1511
+ # @!macro promises.resolvable.resolve_on_timeout
1512
+ # @return [::Array(Boolean, Object, Exception), nil]
1513
+ # @see Future#result
1514
+ def result(timeout = nil, resolve_on_timeout = nil)
1515
+ if wait_until_resolved timeout
1516
+ internal_state.result
1517
+ else
1518
+ if resolve_on_timeout
1519
+ unless resolve(*resolve_on_timeout, false)
1520
+ # if it fails to resolve it was resolved in the meantime
1521
+ # so return value as if there was no timeout
1522
+ internal_state.result
1523
+ end
1524
+ end
1525
+ # otherwise returns nil
1526
+ end
1527
+ end
1528
+
1529
+ # Creates new future wrapping receiver, effectively hiding the resolve method and similar.
1530
+ #
1531
+ # @return [Future]
1532
+ def with_hidden_resolvable
1533
+ @with_hidden_resolvable ||= FutureWrapperPromise.new_blocked_by1(self, @DefaultExecutor).future
1534
+ end
1535
+ end
1536
+
1537
+ # @abstract
1538
+ # @private
1539
+ class AbstractPromise < Synchronization::Object
1540
+ safe_initialization!
1541
+ include InternalStates
1542
+
1543
+ def initialize(future)
1544
+ super()
1545
+ @Future = future
1546
+ end
1547
+
1548
+ def future
1549
+ @Future
1550
+ end
1551
+
1552
+ alias_method :event, :future
1553
+
1554
+ def default_executor
1555
+ future.default_executor
1556
+ end
1557
+
1558
+ def state
1559
+ future.state
1560
+ end
1561
+
1562
+ def touch
1563
+ end
1564
+
1565
+ def to_s
1566
+ format '%s %s>', super[0..-2], @Future
1567
+ end
1568
+
1569
+ alias_method :inspect, :to_s
1570
+
1571
+ def delayed_because
1572
+ nil
1573
+ end
1574
+
1575
+ private
1576
+
1577
+ def resolve_with(new_state, raise_on_reassign = true)
1578
+ @Future.resolve_with(new_state, raise_on_reassign)
1579
+ end
1580
+
1581
+ # @return [Future]
1582
+ def evaluate_to(*args, block)
1583
+ resolve_with Fulfilled.new(block.call(*args))
1584
+ rescue Exception => error
1585
+ resolve_with Rejected.new(error)
1586
+ raise error unless error.is_a?(StandardError)
1587
+ end
1588
+ end
1589
+
1590
+ class ResolvableEventPromise < AbstractPromise
1591
+ def initialize(default_executor)
1592
+ super ResolvableEvent.new(self, default_executor)
1593
+ end
1594
+ end
1595
+
1596
+ class ResolvableFuturePromise < AbstractPromise
1597
+ def initialize(default_executor)
1598
+ super ResolvableFuture.new(self, default_executor)
1599
+ end
1600
+
1601
+ public :evaluate_to
1602
+ end
1603
+
1604
+ # @abstract
1605
+ class InnerPromise < AbstractPromise
1606
+ end
1607
+
1608
+ # @abstract
1609
+ class BlockedPromise < InnerPromise
1610
+
1611
+ private_class_method :new
1612
+
1613
+ def self.new_blocked_by1(blocker, *args, &block)
1614
+ blocker_delayed = blocker.promise.delayed_because
1615
+ promise = new(blocker_delayed, 1, *args, &block)
1616
+ blocker.add_callback_notify_blocked promise, 0
1617
+ promise
1618
+ end
1619
+
1620
+ def self.new_blocked_by2(blocker1, blocker2, *args, &block)
1621
+ blocker_delayed1 = blocker1.promise.delayed_because
1622
+ blocker_delayed2 = blocker2.promise.delayed_because
1623
+ delayed = if blocker_delayed1 && blocker_delayed2
1624
+ # TODO (pitr-ch 23-Dec-2016): use arrays when we know it will not grow (only flat adds delay)
1625
+ LockFreeStack.of2(blocker_delayed1, blocker_delayed2)
1626
+ else
1627
+ blocker_delayed1 || blocker_delayed2
1628
+ end
1629
+ promise = new(delayed, 2, *args, &block)
1630
+ blocker1.add_callback_notify_blocked promise, 0
1631
+ blocker2.add_callback_notify_blocked promise, 1
1632
+ promise
1633
+ end
1634
+
1635
+ def self.new_blocked_by(blockers, *args, &block)
1636
+ delayed = blockers.reduce(nil) { |d, f| add_delayed d, f.promise.delayed_because }
1637
+ promise = new(delayed, blockers.size, *args, &block)
1638
+ blockers.each_with_index { |f, i| f.add_callback_notify_blocked promise, i }
1639
+ promise
1640
+ end
1641
+
1642
+ def self.add_delayed(delayed1, delayed2)
1643
+ if delayed1 && delayed2
1644
+ delayed1.push delayed2
1645
+ delayed1
1646
+ else
1647
+ delayed1 || delayed2
1648
+ end
1649
+ end
1650
+
1651
+ def initialize(delayed, blockers_count, future)
1652
+ super(future)
1653
+ @Delayed = delayed
1654
+ @Countdown = AtomicFixnum.new blockers_count
1655
+ end
1656
+
1657
+ def on_blocker_resolution(future, index)
1658
+ countdown = process_on_blocker_resolution(future, index)
1659
+ resolvable = resolvable?(countdown, future, index)
1660
+
1661
+ on_resolvable(future, index) if resolvable
1662
+ end
1663
+
1664
+ def delayed_because
1665
+ @Delayed
1666
+ end
1667
+
1668
+ def touch
1669
+ clear_and_propagate_touch
1670
+ end
1671
+
1672
+ # for inspection only
1673
+ def blocked_by
1674
+ blocked_by = []
1675
+ ObjectSpace.each_object(AbstractEventFuture) { |o| blocked_by.push o if o.blocks.include? self }
1676
+ blocked_by
1677
+ end
1678
+
1679
+ private
1680
+
1681
+ def clear_and_propagate_touch(stack_or_element = @Delayed)
1682
+ return if stack_or_element.nil?
1683
+
1684
+ if stack_or_element.is_a? LockFreeStack
1685
+ stack_or_element.clear_each { |element| clear_and_propagate_touch element }
1686
+ else
1687
+ stack_or_element.touch unless stack_or_element.nil? # if still present
1688
+ end
1689
+ end
1690
+
1691
+ # @return [true,false] if resolvable
1692
+ def resolvable?(countdown, future, index)
1693
+ countdown.zero?
1694
+ end
1695
+
1696
+ def process_on_blocker_resolution(future, index)
1697
+ @Countdown.decrement
1698
+ end
1699
+
1700
+ def on_resolvable(resolved_future, index)
1701
+ raise NotImplementedError
1702
+ end
1703
+ end
1704
+
1705
+ # @abstract
1706
+ class BlockedTaskPromise < BlockedPromise
1707
+ def initialize(delayed, blockers_count, default_executor, executor, args, &task)
1708
+ raise ArgumentError, 'no block given' unless block_given?
1709
+ super delayed, 1, Future.new(self, default_executor)
1710
+ @Executor = executor
1711
+ @Task = task
1712
+ @Args = args
1713
+ end
1714
+
1715
+ def executor
1716
+ @Executor
1717
+ end
1718
+ end
1719
+
1720
+ class ThenPromise < BlockedTaskPromise
1721
+ private
1722
+
1723
+ def initialize(delayed, blockers_count, default_executor, executor, args, &task)
1724
+ super delayed, blockers_count, default_executor, executor, args, &task
1725
+ end
1726
+
1727
+ def on_resolvable(resolved_future, index)
1728
+ if resolved_future.fulfilled?
1729
+ Concurrent.executor(@Executor).post(resolved_future, @Args, @Task) do |future, args, task|
1730
+ evaluate_to lambda { future.apply args, task }
1731
+ end
1732
+ else
1733
+ resolve_with resolved_future.internal_state
1734
+ end
1735
+ end
1736
+ end
1737
+
1738
+ class RescuePromise < BlockedTaskPromise
1739
+ private
1740
+
1741
+ def initialize(delayed, blockers_count, default_executor, executor, args, &task)
1742
+ super delayed, blockers_count, default_executor, executor, args, &task
1743
+ end
1744
+
1745
+ def on_resolvable(resolved_future, index)
1746
+ if resolved_future.rejected?
1747
+ Concurrent.executor(@Executor).post(resolved_future, @Args, @Task) do |future, args, task|
1748
+ evaluate_to lambda { future.apply args, task }
1749
+ end
1750
+ else
1751
+ resolve_with resolved_future.internal_state
1752
+ end
1753
+ end
1754
+ end
1755
+
1756
+ class ChainPromise < BlockedTaskPromise
1757
+ private
1758
+
1759
+ def on_resolvable(resolved_future, index)
1760
+ if Future === resolved_future
1761
+ Concurrent.executor(@Executor).post(resolved_future, @Args, @Task) do |future, args, task|
1762
+ evaluate_to(*future.result, *args, task)
1763
+ end
1764
+ else
1765
+ Concurrent.executor(@Executor).post(@Args, @Task) do |args, task|
1766
+ evaluate_to(*args, task)
1767
+ end
1768
+ end
1769
+ end
1770
+ end
1771
+
1772
+ # will be immediately resolved
1773
+ class ImmediateEventPromise < InnerPromise
1774
+ def initialize(default_executor)
1775
+ super Event.new(self, default_executor).resolve_with(RESOLVED)
1776
+ end
1777
+ end
1778
+
1779
+ class ImmediateFuturePromise < InnerPromise
1780
+ def initialize(default_executor, fulfilled, value, reason)
1781
+ super Future.new(self, default_executor).
1782
+ resolve_with(fulfilled ? Fulfilled.new(value) : Rejected.new(reason))
1783
+ end
1784
+ end
1785
+
1786
+ class AbstractFlatPromise < BlockedPromise
1787
+
1788
+ def initialize(delayed_because, blockers_count, event_or_future)
1789
+ delayed = LockFreeStack.of1(self)
1790
+ super(delayed, blockers_count, event_or_future)
1791
+ # noinspection RubyArgCount
1792
+ @Touched = AtomicBoolean.new false
1793
+ @DelayedBecause = delayed_because || LockFreeStack.new
1794
+
1795
+ event_or_future.add_callback_clear_delayed_node delayed.peek
1796
+ end
1797
+
1798
+ def touch
1799
+ if @Touched.make_true
1800
+ clear_and_propagate_touch @DelayedBecause
1801
+ end
1802
+ end
1803
+
1804
+ private
1805
+
1806
+ def touched?
1807
+ @Touched.value
1808
+ end
1809
+
1810
+ def on_resolvable(resolved_future, index)
1811
+ resolve_with resolved_future.internal_state
1812
+ end
1813
+
1814
+ def resolvable?(countdown, future, index)
1815
+ !@Future.internal_state.resolved? && super(countdown, future, index)
1816
+ end
1817
+
1818
+ def add_delayed_of(future)
1819
+ delayed = future.promise.delayed_because
1820
+ if touched?
1821
+ clear_and_propagate_touch delayed
1822
+ else
1823
+ BlockedPromise.add_delayed @DelayedBecause, delayed
1824
+ clear_and_propagate_touch @DelayedBecause if touched?
1825
+ end
1826
+ end
1827
+
1828
+ end
1829
+
1830
+ class FlatEventPromise < AbstractFlatPromise
1831
+
1832
+ private
1833
+
1834
+ def initialize(delayed, blockers_count, default_executor)
1835
+ super delayed, 2, Event.new(self, default_executor)
1836
+ end
1837
+
1838
+ def process_on_blocker_resolution(future, index)
1839
+ countdown = super(future, index)
1840
+ if countdown.nonzero?
1841
+ internal_state = future.internal_state
1842
+
1843
+ unless internal_state.fulfilled?
1844
+ resolve_with RESOLVED
1845
+ return countdown
1846
+ end
1847
+
1848
+ value = internal_state.value
1849
+ case value
1850
+ when AbstractEventFuture
1851
+ add_delayed_of value
1852
+ value.add_callback_notify_blocked self, nil
1853
+ countdown
1854
+ else
1855
+ resolve_with RESOLVED
1856
+ end
1857
+ end
1858
+ countdown
1859
+ end
1860
+
1861
+ end
1862
+
1863
+ class FlatFuturePromise < AbstractFlatPromise
1864
+
1865
+ private
1866
+
1867
+ def initialize(delayed, blockers_count, levels, default_executor)
1868
+ raise ArgumentError, 'levels has to be higher than 0' if levels < 1
1869
+ # flat promise may result to a future having delayed futures, therefore we have to have empty stack
1870
+ # to be able to add new delayed futures
1871
+ super delayed || LockFreeStack.new, 1 + levels, Future.new(self, default_executor)
1872
+ end
1873
+
1874
+ def process_on_blocker_resolution(future, index)
1875
+ countdown = super(future, index)
1876
+ if countdown.nonzero?
1877
+ internal_state = future.internal_state
1878
+
1879
+ unless internal_state.fulfilled?
1880
+ resolve_with internal_state
1881
+ return countdown
1882
+ end
1883
+
1884
+ value = internal_state.value
1885
+ case value
1886
+ when AbstractEventFuture
1887
+ add_delayed_of value
1888
+ value.add_callback_notify_blocked self, nil
1889
+ countdown
1890
+ else
1891
+ evaluate_to(lambda { raise TypeError, "returned value #{value.inspect} is not a Future" })
1892
+ end
1893
+ end
1894
+ countdown
1895
+ end
1896
+
1897
+ end
1898
+
1899
+ class RunFuturePromise < AbstractFlatPromise
1900
+
1901
+ private
1902
+
1903
+ def initialize(delayed, blockers_count, default_executor, run_test)
1904
+ super delayed, 1, Future.new(self, default_executor)
1905
+ @RunTest = run_test
1906
+ end
1907
+
1908
+ def process_on_blocker_resolution(future, index)
1909
+ internal_state = future.internal_state
1910
+
1911
+ unless internal_state.fulfilled?
1912
+ resolve_with internal_state
1913
+ return 0
1914
+ end
1915
+
1916
+ value = internal_state.value
1917
+ continuation_future = @RunTest.call value
1918
+
1919
+ if continuation_future
1920
+ add_delayed_of continuation_future
1921
+ continuation_future.add_callback_notify_blocked self, nil
1922
+ else
1923
+ resolve_with internal_state
1924
+ end
1925
+
1926
+ 1
1927
+ end
1928
+ end
1929
+
1930
+ class ZipEventEventPromise < BlockedPromise
1931
+ def initialize(delayed, blockers_count, default_executor)
1932
+ super delayed, 2, Event.new(self, default_executor)
1933
+ end
1934
+
1935
+ private
1936
+
1937
+ def on_resolvable(resolved_future, index)
1938
+ resolve_with RESOLVED
1939
+ end
1940
+ end
1941
+
1942
+ class ZipFutureEventPromise < BlockedPromise
1943
+ def initialize(delayed, blockers_count, default_executor)
1944
+ super delayed, 2, Future.new(self, default_executor)
1945
+ @result = nil
1946
+ end
1947
+
1948
+ private
1949
+
1950
+ def process_on_blocker_resolution(future, index)
1951
+ # first blocking is future, take its result
1952
+ @result = future.internal_state if index == 0
1953
+ # super has to be called after above to piggyback on volatile @Countdown
1954
+ super future, index
1955
+ end
1956
+
1957
+ def on_resolvable(resolved_future, index)
1958
+ resolve_with @result
1959
+ end
1960
+ end
1961
+
1962
+ class EventWrapperPromise < BlockedPromise
1963
+ def initialize(delayed, blockers_count, default_executor)
1964
+ super delayed, 1, Event.new(self, default_executor)
1965
+ end
1966
+
1967
+ private
1968
+
1969
+ def on_resolvable(resolved_future, index)
1970
+ resolve_with RESOLVED
1971
+ end
1972
+ end
1973
+
1974
+ class FutureWrapperPromise < BlockedPromise
1975
+ def initialize(delayed, blockers_count, default_executor)
1976
+ super delayed, 1, Future.new(self, default_executor)
1977
+ end
1978
+
1979
+ private
1980
+
1981
+ def on_resolvable(resolved_future, index)
1982
+ resolve_with resolved_future.internal_state
1983
+ end
1984
+ end
1985
+
1986
+ class ZipFuturesPromise < BlockedPromise
1987
+
1988
+ private
1989
+
1990
+ def initialize(delayed, blockers_count, default_executor)
1991
+ super(delayed, blockers_count, Future.new(self, default_executor))
1992
+ @Resolutions = ::Array.new(blockers_count, nil)
1993
+
1994
+ on_resolvable nil, nil if blockers_count == 0
1995
+ end
1996
+
1997
+ def process_on_blocker_resolution(future, index)
1998
+ # TODO (pitr-ch 18-Dec-2016): Can we assume that array will never break under parallel access when never re-sized?
1999
+ @Resolutions[index] = future.internal_state # has to be set before countdown in super
2000
+ super future, index
2001
+ end
2002
+
2003
+ def on_resolvable(resolved_future, index)
2004
+ all_fulfilled = true
2005
+ values = ::Array.new(@Resolutions.size)
2006
+ reasons = ::Array.new(@Resolutions.size)
2007
+
2008
+ @Resolutions.each_with_index do |internal_state, i|
2009
+ fulfilled, values[i], reasons[i] = internal_state.result
2010
+ all_fulfilled &&= fulfilled
2011
+ end
2012
+
2013
+ if all_fulfilled
2014
+ resolve_with FulfilledArray.new(values)
2015
+ else
2016
+ resolve_with PartiallyRejected.new(values, reasons)
2017
+ end
2018
+ end
2019
+ end
2020
+
2021
+ class ZipEventsPromise < BlockedPromise
2022
+
2023
+ private
2024
+
2025
+ def initialize(delayed, blockers_count, default_executor)
2026
+ super delayed, blockers_count, Event.new(self, default_executor)
2027
+
2028
+ on_resolvable nil, nil if blockers_count == 0
2029
+ end
2030
+
2031
+ def on_resolvable(resolved_future, index)
2032
+ resolve_with RESOLVED
2033
+ end
2034
+ end
2035
+
2036
+ # @abstract
2037
+ class AbstractAnyPromise < BlockedPromise
2038
+ end
2039
+
2040
+ class AnyResolvedEventPromise < AbstractAnyPromise
2041
+
2042
+ private
2043
+
2044
+ def initialize(delayed, blockers_count, default_executor)
2045
+ super delayed, blockers_count, Event.new(self, default_executor)
2046
+ end
2047
+
2048
+ def resolvable?(countdown, future, index)
2049
+ true
2050
+ end
2051
+
2052
+ def on_resolvable(resolved_future, index)
2053
+ resolve_with RESOLVED, false
2054
+ end
2055
+ end
2056
+
2057
+ class AnyResolvedFuturePromise < AbstractAnyPromise
2058
+
2059
+ private
2060
+
2061
+ def initialize(delayed, blockers_count, default_executor)
2062
+ super delayed, blockers_count, Future.new(self, default_executor)
2063
+ end
2064
+
2065
+ def resolvable?(countdown, future, index)
2066
+ true
2067
+ end
2068
+
2069
+ def on_resolvable(resolved_future, index)
2070
+ resolve_with resolved_future.internal_state, false
2071
+ end
2072
+ end
2073
+
2074
+ class AnyFulfilledFuturePromise < AnyResolvedFuturePromise
2075
+
2076
+ private
2077
+
2078
+ def resolvable?(countdown, event_or_future, index)
2079
+ (event_or_future.is_a?(Event) ? event_or_future.resolved? : event_or_future.fulfilled?) ||
2080
+ # inlined super from BlockedPromise
2081
+ countdown.zero?
2082
+ end
2083
+ end
2084
+
2085
+ class DelayPromise < InnerPromise
2086
+
2087
+ def initialize(default_executor)
2088
+ event = Event.new(self, default_executor)
2089
+ @Delayed = LockFreeStack.of1(self)
2090
+ super event
2091
+ event.add_callback_clear_delayed_node @Delayed.peek
2092
+ end
2093
+
2094
+ def touch
2095
+ @Future.resolve_with RESOLVED
2096
+ end
2097
+
2098
+ def delayed_because
2099
+ @Delayed
2100
+ end
2101
+
2102
+ end
2103
+
2104
+ class ScheduledPromise < InnerPromise
2105
+ def intended_time
2106
+ @IntendedTime
2107
+ end
2108
+
2109
+ def inspect
2110
+ "#{to_s[0..-2]} intended_time: #{@IntendedTime}>"
2111
+ end
2112
+
2113
+ private
2114
+
2115
+ def initialize(default_executor, intended_time)
2116
+ super Event.new(self, default_executor)
2117
+
2118
+ @IntendedTime = intended_time
2119
+
2120
+ in_seconds = begin
2121
+ now = Time.now
2122
+ schedule_time = if @IntendedTime.is_a? Time
2123
+ @IntendedTime
2124
+ else
2125
+ now + @IntendedTime
2126
+ end
2127
+ [0, schedule_time.to_f - now.to_f].max
2128
+ end
2129
+
2130
+ Concurrent.global_timer_set.post(in_seconds) do
2131
+ @Future.resolve_with RESOLVED
2132
+ end
2133
+ end
2134
+ end
2135
+
2136
+ extend FactoryMethods
2137
+
2138
+ private_constant :AbstractPromise,
2139
+ :ResolvableEventPromise,
2140
+ :ResolvableFuturePromise,
2141
+ :InnerPromise,
2142
+ :BlockedPromise,
2143
+ :BlockedTaskPromise,
2144
+ :ThenPromise,
2145
+ :RescuePromise,
2146
+ :ChainPromise,
2147
+ :ImmediateEventPromise,
2148
+ :ImmediateFuturePromise,
2149
+ :AbstractFlatPromise,
2150
+ :FlatFuturePromise,
2151
+ :FlatEventPromise,
2152
+ :RunFuturePromise,
2153
+ :ZipEventEventPromise,
2154
+ :ZipFutureEventPromise,
2155
+ :EventWrapperPromise,
2156
+ :FutureWrapperPromise,
2157
+ :ZipFuturesPromise,
2158
+ :ZipEventsPromise,
2159
+ :AbstractAnyPromise,
2160
+ :AnyResolvedFuturePromise,
2161
+ :AnyFulfilledFuturePromise,
2162
+ :AnyResolvedEventPromise,
2163
+ :DelayPromise,
2164
+ :ScheduledPromise
2165
+
2166
+
2167
+ end
2168
+ end