honeybadger 5.3.0 → 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 (513) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/lib/honeybadger/plugins/active_job.rb +28 -0
  4. data/lib/honeybadger/version.rb +1 -1
  5. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/deprecate.rb +14 -0
  6. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ast_lookup.rb +14 -6
  7. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console.rb +7 -2
  8. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/json.rb +1 -1
  9. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/message_builder.rb +14 -5
  10. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/pretty.rb +6 -2
  11. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/proto_world.rb +17 -22
  12. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/registry_and_more.rb +7 -4
  13. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rake/task.rb +1 -5
  14. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/for_programming_languages.rb +1 -2
  15. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/meta_message_builder.rb +2 -2
  16. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/user_interface.rb +2 -2
  17. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/event.rb +1 -1
  18. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/argument.rb +7 -3
  19. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/ast.rb +24 -59
  20. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/combinatorial_generated_expression_factory.rb +6 -13
  21. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression.rb +9 -11
  22. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression_generator.rb +11 -15
  23. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression_parser.rb +37 -53
  24. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression_tokenizer.rb +13 -18
  25. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/errors.rb +232 -0
  26. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/expression_factory.rb +2 -0
  27. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/generated_expression.rb +2 -0
  28. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/group.rb +2 -0
  29. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/group_builder.rb +3 -1
  30. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/parameter_type.rb +13 -23
  31. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/parameter_type_matcher.rb +8 -6
  32. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/parameter_type_registry.rb +27 -22
  33. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/regular_expression.rb +3 -2
  34. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/tree_regexp.rb +8 -7
  35. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/argument_spec.rb +4 -2
  36. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/combinatorial_generated_expression_factory_test.rb +8 -7
  37. 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
  38. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/cucumber_expression_parser_spec.rb +2 -0
  39. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +178 -0
  40. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/cucumber_expression_tokenizer_spec.rb +3 -1
  41. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/cucumber_expression_transformation_spec.rb +2 -0
  42. 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
  43. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/expression_factory_spec.rb +2 -0
  44. 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
  45. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/parameter_type_spec.rb +5 -2
  46. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +93 -0
  47. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/tree_regexp_spec.rb +23 -22
  48. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages.deserializers.rb +1 -0
  49. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages.dtos.rb +5 -1
  50. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-tag-expressions-4.1.0 → cucumber-tag-expressions-5.0.6}/lib/cucumber/tag_expressions/expressions.rb +21 -2
  51. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-tag-expressions-4.1.0 → cucumber-tag-expressions-5.0.6}/lib/cucumber/tag_expressions/parser.rb +48 -48
  52. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/errors_spec.rb +13 -0
  53. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/evaluations_spec.rb +17 -0
  54. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/parsing_spec.rb +14 -0
  55. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/date_rolling_log_file.rb +1 -1
  56. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/log_file.rb +1 -1
  57. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/multi.rb +1 -1
  58. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/null.rb +1 -1
  59. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/rolling_log_file.rb +1 -1
  60. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/size_rolling_log_file.rb +1 -1
  61. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/writer.rb +1 -1
  62. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device.rb +1 -1
  63. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/date_time_formatter.rb +1 -1
  64. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/exception_formatter.rb +2 -2
  65. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/id_formatter.rb +1 -1
  66. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/inspect_formatter.rb +1 -1
  67. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/object_formatter.rb +1 -1
  68. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/pretty_print_formatter.rb +1 -1
  69. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/string_formatter.rb +1 -1
  70. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/strip_formatter.rb +1 -1
  71. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/structured_formatter.rb +1 -1
  72. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/truncate_formatter.rb +1 -1
  73. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter.rb +1 -1
  74. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/log_entry.rb +2 -2
  75. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/logger.rb +10 -6
  76. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/context.rb +1 -1
  77. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/request_id.rb +1 -1
  78. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/unit_of_work.rb +1 -1
  79. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack.rb +1 -1
  80. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/severity.rb +13 -1
  81. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/template.rb +2 -2
  82. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack.rb +2 -1
  83. data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/version.rb +1 -1
  84. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/application.rb +26 -2
  85. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/dsl_definition.rb +1 -1
  86. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_task.rb +8 -4
  87. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_utils.rb +0 -2
  88. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/packagetask.rb +1 -1
  89. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task.rb +2 -2
  90. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/thread_pool.rb +1 -1
  91. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/version.rb +1 -1
  92. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/alias.rb +111 -0
  93. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/anon_class.rb +10 -0
  94. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/any_method.rb +379 -0
  95. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/attr.rb +175 -0
  96. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/class_module.rb +801 -0
  97. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_object.rb +421 -0
  98. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_objects.rb +5 -0
  99. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/comment.rb +229 -0
  100. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/constant.rb +186 -0
  101. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context/section.rb +233 -0
  102. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context.rb +1264 -0
  103. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/cross_reference.rb +225 -0
  104. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/encoding.rb +131 -0
  105. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erb_partial.rb +18 -0
  106. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erbio.rb +37 -0
  107. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/extend.rb +9 -0
  108. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/darkfish.rb +786 -0
  109. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/json_index.rb +300 -0
  110. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/markup.rb +159 -0
  111. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/message_extractor.rb +68 -0
  112. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po.rb +84 -0
  113. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po_entry.rb +141 -0
  114. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot.rb +98 -0
  115. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/ri.rb +30 -0
  116. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator.rb +51 -0
  117. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ghost_method.rb +6 -0
  118. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/locale.rb +102 -0
  119. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/text.rb +126 -0
  120. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n.rb +10 -0
  121. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/include.rb +9 -0
  122. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/known_classes.rb +74 -0
  123. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/entities.rb +2131 -0
  124. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/literals.rb +474 -0
  125. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown.rb +16783 -0
  126. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_changer.rb +22 -0
  127. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_span.rb +35 -0
  128. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attribute_manager.rb +402 -0
  129. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attributes.rb +70 -0
  130. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/blank_line.rb +27 -0
  131. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/block_quote.rb +14 -0
  132. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/document.rb +164 -0
  133. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/formatter.rb +265 -0
  134. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/hard_break.rb +31 -0
  135. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/heading.rb +78 -0
  136. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/include.rb +42 -0
  137. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/indented_paragraph.rb +47 -0
  138. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list.rb +101 -0
  139. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list_item.rb +99 -0
  140. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/paragraph.rb +28 -0
  141. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/parser.rb +581 -0
  142. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/pre_process.rb +298 -0
  143. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/raw.rb +69 -0
  144. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/regexp_handling.rb +40 -0
  145. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/rule.rb +20 -0
  146. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/table.rb +47 -0
  147. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_ansi.rb +93 -0
  148. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_bs.rb +77 -0
  149. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html.rb +449 -0
  150. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_crossref.rb +175 -0
  151. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_snippet.rb +284 -0
  152. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_joined_paragraph.rb +46 -0
  153. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_label.rb +74 -0
  154. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_markdown.rb +191 -0
  155. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_rdoc.rb +344 -0
  156. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_table_of_contents.rb +88 -0
  157. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_test.rb +69 -0
  158. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_tt_only.rb +120 -0
  159. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/verbatim.rb +83 -0
  160. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup.rb +235 -0
  161. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/meta_method.rb +6 -0
  162. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/method_attr.rb +418 -0
  163. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/mixin.rb +120 -0
  164. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_class.rb +92 -0
  165. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_module.rb +73 -0
  166. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/options.rb +1330 -0
  167. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/c.rb +1225 -0
  168. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/changelog.rb +334 -0
  169. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/markdown.rb +22 -0
  170. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/rd.rb +22 -0
  171. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ripper_state_lex.rb +590 -0
  172. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby.rb +2360 -0
  173. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby_tools.rb +165 -0
  174. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/simple.rb +61 -0
  175. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/text.rb +11 -0
  176. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser.rb +294 -0
  177. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/block_parser.rb +1710 -0
  178. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline.rb +71 -0
  179. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline_parser.rb +1210 -0
  180. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd.rb +99 -0
  181. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rdoc.rb +563 -0
  182. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/require.rb +51 -0
  183. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/driver.rb +1513 -0
  184. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/formatter.rb +6 -0
  185. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/paths.rb +171 -0
  186. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/store.rb +6 -0
  187. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/task.rb +71 -0
  188. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri.rb +20 -0
  189. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rubygems_hook.rb +248 -0
  190. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/servlet.rb +451 -0
  191. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/single_class.rb +30 -0
  192. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/normal.rb +58 -0
  193. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/quiet.rb +59 -0
  194. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/verbose.rb +44 -0
  195. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats.rb +461 -0
  196. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/store.rb +979 -0
  197. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/task.rb +355 -0
  198. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/text.rb +312 -0
  199. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/token_stream.rb +118 -0
  200. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/tom_doc.rb +263 -0
  201. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/top_level.rb +288 -0
  202. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/version.rb +10 -0
  203. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc.rb +201 -0
  204. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/version.rb +3 -0
  205. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.1.0/ext/stringio/extconf.rb +7 -0
  206. metadata +478 -386
  207. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.0.2/lib/cucumber/deprecate.rb +0 -55
  208. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/lib/cucumber/cucumber_expressions/errors.rb +0 -214
  209. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/cucumber_expression_generator_spec.rb +0 -231
  210. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +0 -181
  211. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/custom_parameter_type_spec.rb +0 -197
  212. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/parameter_type_registry_spec.rb +0 -86
  213. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +0 -84
  214. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-21.0.1/spec/capture_warnings.rb +0 -74
  215. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/capture_warnings.rb +0 -74
  216. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/expressions_spec.rb +0 -84
  217. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/parser_spec.rb +0 -50
  218. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/acceptance_test.rb +0 -131
  219. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_find.rb +0 -66
  220. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_find_all.rb +0 -102
  221. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_names.rb +0 -91
  222. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_select.rb +0 -26
  223. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_select_incremental.rb +0 -25
  224. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_valid.rb +0 -101
  225. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/domain_profiler.rb +0 -12
  226. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/find_profiler.rb +0 -12
  227. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/find_profiler_jp.rb +0 -12
  228. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/initialization_profiler.rb +0 -11
  229. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/list_profsize.rb +0 -11
  230. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/object_binsize.rb +0 -57
  231. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/psl_test.rb +0 -52
  232. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/test_helper.rb +0 -10
  233. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/domain_test.rb +0 -106
  234. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/errors_test.rb +0 -25
  235. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/list_test.rb +0 -241
  236. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/public_suffix_test.rb +0 -188
  237. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/rule_test.rb +0 -222
  238. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.5/lib/sshkit/version.rb +0 -3
  239. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.0.8/ext/stringio/extconf.rb +0 -3
  240. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber.rb +0 -0
  241. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_mixin.rb +0 -0
  242. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails.rb +0 -0
  243. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails_rspec.rb +0 -0
  244. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails_rspec2.rb +0 -0
  245. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rspec.rb +0 -0
  246. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rspec2.rb +0 -0
  247. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/discover.rb +0 -0
  248. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/configuration.rb +0 -0
  249. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/main.rb +0 -0
  250. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/options.rb +0 -0
  251. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/profile_loader.rb +0 -0
  252. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/rerun_file.rb +0 -0
  253. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/configuration.rb +0 -0
  254. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/constantize.rb +0 -0
  255. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/encoding.rb +0 -0
  256. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/errors.rb +0 -0
  257. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/envelope.rb +0 -0
  258. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/gherkin_source_parsed.rb +0 -0
  259. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/gherkin_source_read.rb +0 -0
  260. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/hook_test_step_created.rb +0 -0
  261. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/step_activated.rb +0 -0
  262. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/step_definition_registered.rb +0 -0
  263. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_created.rb +0 -0
  264. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_finished.rb +0 -0
  265. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_ready.rb +0 -0
  266. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_started.rb +0 -0
  267. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_run_finished.rb +0 -0
  268. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_run_started.rb +0 -0
  269. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_step_created.rb +0 -0
  270. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_step_finished.rb +0 -0
  271. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_step_started.rb +0 -0
  272. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/undefined_parameter_type.rb +0 -0
  273. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events.rb +0 -0
  274. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/file_specs.rb +0 -0
  275. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/activate_steps.rb +0 -0
  276. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_after_hooks.rb +0 -0
  277. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_after_step_hooks.rb +0 -0
  278. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_around_hooks.rb +0 -0
  279. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_before_hooks.rb +0 -0
  280. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/broadcast_test_case_ready_event.rb +0 -0
  281. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/broadcast_test_run_started_event.rb +0 -0
  282. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/gated_receiver.rb +0 -0
  283. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/prepare_world.rb +0 -0
  284. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/quit.rb +0 -0
  285. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/randomizer.rb +0 -0
  286. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/retry.rb +0 -0
  287. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/tag_limits/test_case_index.rb +0 -0
  288. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/tag_limits/verifier.rb +0 -0
  289. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/tag_limits.rb +0 -0
  290. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters.rb +0 -0
  291. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ansicolor.rb +0 -0
  292. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/backtrace_filter.rb +0 -0
  293. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console_counts.rb +0 -0
  294. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console_issues.rb +0 -0
  295. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/duration.rb +0 -0
  296. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/duration_extractor.rb +0 -0
  297. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/errors.rb +0 -0
  298. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/fail_fast.rb +0 -0
  299. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/fanout.rb +0 -0
  300. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/html.rb +0 -0
  301. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/http_io.rb +0 -0
  302. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ignore_missing_messages.rb +0 -0
  303. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/interceptor.rb +0 -0
  304. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/io.rb +0 -0
  305. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/junit.rb +0 -0
  306. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/message.rb +0 -0
  307. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/progress.rb +0 -0
  308. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/publish_banner_printer.rb +0 -0
  309. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/hook_by_test_step.rb +0 -0
  310. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/pickle_by_test.rb +0 -0
  311. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/pickle_step_by_test_step.rb +0 -0
  312. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/step_definitions_by_test_step.rb +0 -0
  313. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/test_case_started_by_test_case.rb +0 -0
  314. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/rerun.rb +0 -0
  315. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/stepdefs.rb +0 -0
  316. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/steps.rb +0 -0
  317. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/summary.rb +0 -0
  318. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/unicode.rb +0 -0
  319. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/url_reporter.rb +0 -0
  320. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/usage.rb +0 -0
  321. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/data_table_parser.rb +0 -0
  322. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/formatter/ansi_escapes.rb +0 -0
  323. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/formatter/escaping.rb +0 -0
  324. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/i18n.rb +0 -0
  325. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/steps_parser.rb +0 -0
  326. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/dsl.rb +0 -0
  327. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/hook.rb +0 -0
  328. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/invoke_in_world.rb +0 -0
  329. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/registry_wrapper.rb +0 -0
  330. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/snippet.rb +0 -0
  331. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/step_definition.rb +0 -0
  332. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/world_factory.rb +0 -0
  333. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/hooks.rb +0 -0
  334. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/load_path.rb +0 -0
  335. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +0 -0
  336. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument/data_table.rb +0 -0
  337. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument/doc_string.rb +0 -0
  338. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument.rb +0 -0
  339. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/platform.rb +0 -0
  340. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/project_initializer.rb +0 -0
  341. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rspec/disable_option_parser.rb +0 -0
  342. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rspec/doubles.rb +0 -0
  343. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/running_test_case.rb +0 -0
  344. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/after_hooks.rb +0 -0
  345. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/before_hooks.rb +0 -0
  346. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/step_hooks.rb +0 -0
  347. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/support_code.rb +0 -0
  348. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime.rb +0 -0
  349. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_definition_light.rb +0 -0
  350. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_definitions.rb +0 -0
  351. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_match.rb +0 -0
  352. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_match_search.rb +0 -0
  353. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/term/ansicolor.rb +0 -0
  354. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/term/banner.rb +0 -0
  355. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/unit.rb +0 -0
  356. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber.rb +0 -0
  357. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/simplecov_setup.rb +0 -0
  358. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/compiler.rb +0 -0
  359. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/event_bus.rb +0 -0
  360. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/events.rb +0 -0
  361. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/filter.rb +0 -0
  362. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/document.rb +0 -0
  363. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/parser.rb +0 -0
  364. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/writer/helpers.rb +0 -0
  365. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/writer.rb +0 -0
  366. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/platform.rb +0 -0
  367. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/report/summary.rb +0 -0
  368. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/action.rb +0 -0
  369. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/around_hook.rb +0 -0
  370. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/case.rb +0 -0
  371. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/data_table.rb +0 -0
  372. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/doc_string.rb +0 -0
  373. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/empty_multiline_argument.rb +0 -0
  374. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/activate_steps_for_self_test.rb +0 -0
  375. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/locations_filter.rb +0 -0
  376. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/name_filter.rb +0 -0
  377. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/tag_filter.rb +0 -0
  378. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters.rb +0 -0
  379. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/location.rb +0 -0
  380. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/result.rb +0 -0
  381. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/runner.rb +0 -0
  382. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/step.rb +0 -0
  383. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/tag.rb +0 -0
  384. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/timer.rb +0 -0
  385. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core.rb +0 -0
  386. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/id_generator.rb +0 -0
  387. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message/deserialization.rb +0 -0
  388. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message/serialization.rb +0 -0
  389. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message/utils.rb +0 -0
  390. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message.rb +0 -0
  391. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/ndjson_to_message_enumerator.rb +0 -0
  392. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/time_conversion.rb +0 -0
  393. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages.rb +0 -0
  394. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-messages-22.0.0}/spec/capture_warnings.rb +0 -0
  395. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/acceptance_spec.rb +0 -0
  396. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/id_generator_spec.rb +0 -0
  397. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/deserialization_spec.rb +0 -0
  398. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/dummy_messages.rb +0 -0
  399. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/serialization_spec.rb +0 -0
  400. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/utils_spec.rb +0 -0
  401. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/ndjson_serialization_spec.rb +0 -0
  402. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/time_conversion_spec.rb +0 -0
  403. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/version_spec.rb +0 -0
  404. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-tag-expressions-4.1.0 → cucumber-tag-expressions-5.0.6}/lib/cucumber/tag_expressions.rb +0 -0
  405. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/context.rb +0 -0
  406. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tag_formatter.rb +0 -0
  407. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tagged_logger_support.rb +0 -0
  408. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tagged_logging.rb +0 -0
  409. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tags.rb +0 -0
  410. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/domain.rb +0 -0
  411. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/errors.rb +0 -0
  412. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/list.rb +0 -0
  413. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/rule.rb +0 -0
  414. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix.rb +0 -0
  415. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/doc/jamis.rb +0 -0
  416. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/backtrace.rb +0 -0
  417. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/clean.rb +0 -0
  418. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/cloneable.rb +0 -0
  419. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/cpu_counter.rb +0 -0
  420. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/default_loader.rb +0 -0
  421. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/early_time.rb +0 -0
  422. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/ext/core.rb +0 -0
  423. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/ext/string.rb +0 -0
  424. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_creation_task.rb +0 -0
  425. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_list.rb +0 -0
  426. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_utils_ext.rb +0 -0
  427. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/invocation_chain.rb +0 -0
  428. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/invocation_exception_mixin.rb +0 -0
  429. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/late_time.rb +0 -0
  430. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/linked_list.rb +0 -0
  431. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/loaders/makefile.rb +0 -0
  432. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/multi_task.rb +0 -0
  433. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/name_space.rb +0 -0
  434. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/phony.rb +0 -0
  435. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/private_reader.rb +0 -0
  436. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/promise.rb +0 -0
  437. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/pseudo_status.rb +0 -0
  438. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rake_module.rb +0 -0
  439. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rake_test_loader.rb +0 -0
  440. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rule_recursion_overflow_error.rb +0 -0
  441. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/scope.rb +0 -0
  442. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_argument_error.rb +0 -0
  443. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_arguments.rb +0 -0
  444. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_manager.rb +0 -0
  445. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/tasklib.rb +0 -0
  446. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/testtask.rb +0 -0
  447. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/thread_history_display.rb +0 -0
  448. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/trace_output.rb +0 -0
  449. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/win32.rb +0 -0
  450. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake.rb +0 -0
  451. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/examples/simple_connection.rb +0 -0
  452. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/core_ext/array.rb +0 -0
  453. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/core_ext/hash.rb +0 -0
  454. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/all.rb +0 -0
  455. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/abstract.rb +0 -0
  456. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/connection_pool/cache.rb +0 -0
  457. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/connection_pool/nil_cache.rb +0 -0
  458. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/connection_pool.rb +0 -0
  459. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/local.rb +0 -0
  460. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/netssh/known_hosts.rb +0 -0
  461. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/netssh.rb +0 -0
  462. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/printer.rb +0 -0
  463. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/skipper.rb +0 -0
  464. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/color.rb +0 -0
  465. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/command.rb +0 -0
  466. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/command_map.rb +0 -0
  467. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/configuration.rb +0 -0
  468. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/coordinator.rb +0 -0
  469. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/deprecation_logger.rb +0 -0
  470. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/dsl.rb +0 -0
  471. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/exception.rb +0 -0
  472. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/abstract.rb +0 -0
  473. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/black_hole.rb +0 -0
  474. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/dot.rb +0 -0
  475. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/pretty.rb +0 -0
  476. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/simple_text.rb +0 -0
  477. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/host.rb +0 -0
  478. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/log_message.rb +0 -0
  479. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/logger.rb +0 -0
  480. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/mapping_interaction_handler.rb +0 -0
  481. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/abstract.rb +0 -0
  482. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/group.rb +0 -0
  483. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/null.rb +0 -0
  484. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/parallel.rb +0 -0
  485. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/sequential.rb +0 -0
  486. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit.rb +0 -0
  487. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/backends/test_local.rb +0 -0
  488. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/backends/test_netssh.rb +0 -0
  489. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/test_ssh_server_comes_up_for_functional_tests.rb +0 -0
  490. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/helper.rb +0 -0
  491. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/support/vagrant_wrapper.rb +0 -0
  492. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_abstract.rb +0 -0
  493. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_connection_pool.rb +0 -0
  494. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_local.rb +0 -0
  495. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_netssh.rb +0 -0
  496. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_printer.rb +0 -0
  497. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_custom.rb +0 -0
  498. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_dot.rb +0 -0
  499. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_pretty.rb +0 -0
  500. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_simple_text.rb +0 -0
  501. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_group.rb +0 -0
  502. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_parallel.rb +0 -0
  503. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_sequential.rb +0 -0
  504. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_color.rb +0 -0
  505. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_command.rb +0 -0
  506. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_command_map.rb +0 -0
  507. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_configuration.rb +0 -0
  508. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_coordinator.rb +0 -0
  509. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_deprecation_logger.rb +0 -0
  510. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_dsl.rb +0 -0
  511. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_host.rb +0 -0
  512. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_logger.rb +0 -0
  513. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_mapping_interaction_handler.rb +0 -0
@@ -0,0 +1,1264 @@
1
+ # frozen_string_literal: true
2
+ ##
3
+ # A Context is something that can hold modules, classes, methods, attributes,
4
+ # aliases, requires, and includes. Classes, modules, and files are all
5
+ # Contexts.
6
+
7
+ class RDoc::Context < RDoc::CodeObject
8
+
9
+ include Comparable
10
+
11
+ ##
12
+ # Types of methods
13
+
14
+ TYPES = %w[class instance]
15
+
16
+ ##
17
+ # If a context has these titles it will be sorted in this order.
18
+
19
+ TOMDOC_TITLES = [nil, 'Public', 'Internal', 'Deprecated'] # :nodoc:
20
+ TOMDOC_TITLES_SORT = TOMDOC_TITLES.sort_by { |title| title.to_s } # :nodoc:
21
+
22
+ ##
23
+ # Class/module aliases
24
+
25
+ attr_reader :aliases
26
+
27
+ ##
28
+ # All attr* methods
29
+
30
+ attr_reader :attributes
31
+
32
+ ##
33
+ # Block params to be used in the next MethodAttr parsed under this context
34
+
35
+ attr_accessor :block_params
36
+
37
+ ##
38
+ # Constants defined
39
+
40
+ attr_reader :constants
41
+
42
+ ##
43
+ # Sets the current documentation section of documentation
44
+
45
+ attr_writer :current_section
46
+
47
+ ##
48
+ # Files this context is found in
49
+
50
+ attr_reader :in_files
51
+
52
+ ##
53
+ # Modules this context includes
54
+
55
+ attr_reader :includes
56
+
57
+ ##
58
+ # Modules this context is extended with
59
+
60
+ attr_reader :extends
61
+
62
+ ##
63
+ # Methods defined in this context
64
+
65
+ attr_reader :method_list
66
+
67
+ ##
68
+ # Name of this class excluding namespace. See also full_name
69
+
70
+ attr_reader :name
71
+
72
+ ##
73
+ # Files this context requires
74
+
75
+ attr_reader :requires
76
+
77
+ ##
78
+ # Use this section for the next method, attribute or constant added.
79
+
80
+ attr_accessor :temporary_section
81
+
82
+ ##
83
+ # Hash <tt>old_name => [aliases]</tt>, for aliases
84
+ # that haven't (yet) been resolved to a method/attribute.
85
+ # (Not to be confused with the aliases of the context.)
86
+
87
+ attr_accessor :unmatched_alias_lists
88
+
89
+ ##
90
+ # Aliases that could not be resolved.
91
+
92
+ attr_reader :external_aliases
93
+
94
+ ##
95
+ # Current visibility of this context
96
+
97
+ attr_accessor :visibility
98
+
99
+ ##
100
+ # Current visibility of this line
101
+
102
+ attr_writer :current_line_visibility
103
+
104
+ ##
105
+ # Hash of registered methods. Attributes are also registered here,
106
+ # twice if they are RW.
107
+
108
+ attr_reader :methods_hash
109
+
110
+ ##
111
+ # Params to be used in the next MethodAttr parsed under this context
112
+
113
+ attr_accessor :params
114
+
115
+ ##
116
+ # Hash of registered constants.
117
+
118
+ attr_reader :constants_hash
119
+
120
+ ##
121
+ # Creates an unnamed empty context with public current visibility
122
+
123
+ def initialize
124
+ super
125
+
126
+ @in_files = []
127
+
128
+ @name ||= "unknown"
129
+ @parent = nil
130
+ @visibility = :public
131
+
132
+ @current_section = Section.new self, nil, nil
133
+ @sections = { nil => @current_section }
134
+ @temporary_section = nil
135
+
136
+ @classes = {}
137
+ @modules = {}
138
+
139
+ initialize_methods_etc
140
+ end
141
+
142
+ ##
143
+ # Sets the defaults for methods and so-forth
144
+
145
+ def initialize_methods_etc
146
+ @method_list = []
147
+ @attributes = []
148
+ @aliases = []
149
+ @requires = []
150
+ @includes = []
151
+ @extends = []
152
+ @constants = []
153
+ @external_aliases = []
154
+ @current_line_visibility = nil
155
+
156
+ # This Hash maps a method name to a list of unmatched aliases (aliases of
157
+ # a method not yet encountered).
158
+ @unmatched_alias_lists = {}
159
+
160
+ @methods_hash = {}
161
+ @constants_hash = {}
162
+
163
+ @params = nil
164
+
165
+ @store ||= nil
166
+ end
167
+
168
+ ##
169
+ # Contexts are sorted by full_name
170
+
171
+ def <=>(other)
172
+ return nil unless RDoc::CodeObject === other
173
+
174
+ full_name <=> other.full_name
175
+ end
176
+
177
+ ##
178
+ # Adds an item of type +klass+ with the given +name+ and +comment+ to the
179
+ # context.
180
+ #
181
+ # Currently only RDoc::Extend and RDoc::Include are supported.
182
+
183
+ def add klass, name, comment
184
+ if RDoc::Extend == klass then
185
+ ext = RDoc::Extend.new name, comment
186
+ add_extend ext
187
+ elsif RDoc::Include == klass then
188
+ incl = RDoc::Include.new name, comment
189
+ add_include incl
190
+ else
191
+ raise NotImplementedError, "adding a #{klass} is not implemented"
192
+ end
193
+ end
194
+
195
+ ##
196
+ # Adds +an_alias+ that is automatically resolved
197
+
198
+ def add_alias an_alias
199
+ return an_alias unless @document_self
200
+
201
+ method_attr = find_method(an_alias.old_name, an_alias.singleton) ||
202
+ find_attribute(an_alias.old_name, an_alias.singleton)
203
+
204
+ if method_attr then
205
+ method_attr.add_alias an_alias, self
206
+ else
207
+ add_to @external_aliases, an_alias
208
+ unmatched_alias_list =
209
+ @unmatched_alias_lists[an_alias.pretty_old_name] ||= []
210
+ unmatched_alias_list.push an_alias
211
+ end
212
+
213
+ an_alias
214
+ end
215
+
216
+ ##
217
+ # Adds +attribute+ if not already there. If it is (as method(s) or attribute),
218
+ # updates the comment if it was empty.
219
+ #
220
+ # The attribute is registered only if it defines a new method.
221
+ # For instance, <tt>attr_reader :foo</tt> will not be registered
222
+ # if method +foo+ exists, but <tt>attr_accessor :foo</tt> will be registered
223
+ # if method +foo+ exists, but <tt>foo=</tt> does not.
224
+
225
+ def add_attribute attribute
226
+ return attribute unless @document_self
227
+
228
+ # mainly to check for redefinition of an attribute as a method
229
+ # TODO find a policy for 'attr_reader :foo' + 'def foo=()'
230
+ register = false
231
+
232
+ key = nil
233
+
234
+ if attribute.rw.index 'R' then
235
+ key = attribute.pretty_name
236
+ known = @methods_hash[key]
237
+
238
+ if known then
239
+ known.comment = attribute.comment if known.comment.empty?
240
+ elsif registered = @methods_hash[attribute.pretty_name + '='] and
241
+ RDoc::Attr === registered then
242
+ registered.rw = 'RW'
243
+ else
244
+ @methods_hash[key] = attribute
245
+ register = true
246
+ end
247
+ end
248
+
249
+ if attribute.rw.index 'W' then
250
+ key = attribute.pretty_name + '='
251
+ known = @methods_hash[key]
252
+
253
+ if known then
254
+ known.comment = attribute.comment if known.comment.empty?
255
+ elsif registered = @methods_hash[attribute.pretty_name] and
256
+ RDoc::Attr === registered then
257
+ registered.rw = 'RW'
258
+ else
259
+ @methods_hash[key] = attribute
260
+ register = true
261
+ end
262
+ end
263
+
264
+ if register then
265
+ attribute.visibility = @visibility
266
+ add_to @attributes, attribute
267
+ resolve_aliases attribute
268
+ end
269
+
270
+ attribute
271
+ end
272
+
273
+ ##
274
+ # Adds a class named +given_name+ with +superclass+.
275
+ #
276
+ # Both +given_name+ and +superclass+ may contain '::', and are
277
+ # interpreted relative to the +self+ context. This allows handling correctly
278
+ # examples like these:
279
+ # class RDoc::Gauntlet < Gauntlet
280
+ # module Mod
281
+ # class Object # implies < ::Object
282
+ # class SubObject < Object # this is _not_ ::Object
283
+ #
284
+ # Given <tt>class Container::Item</tt> RDoc assumes +Container+ is a module
285
+ # unless it later sees <tt>class Container</tt>. +add_class+ automatically
286
+ # upgrades +given_name+ to a class in this case.
287
+
288
+ def add_class class_type, given_name, superclass = '::Object'
289
+ # superclass +nil+ is passed by the C parser in the following cases:
290
+ # - registering Object in 1.8 (correct)
291
+ # - registering BasicObject in 1.9 (correct)
292
+ # - registering RubyVM in 1.9 in iseq.c (incorrect: < Object in vm.c)
293
+ #
294
+ # If we later find a superclass for a registered class with a nil
295
+ # superclass, we must honor it.
296
+
297
+ # find the name & enclosing context
298
+ if given_name =~ /^:+(\w+)$/ then
299
+ full_name = $1
300
+ enclosing = top_level
301
+ name = full_name.split(/:+/).last
302
+ else
303
+ full_name = child_name given_name
304
+
305
+ if full_name =~ /^(.+)::(\w+)$/ then
306
+ name = $2
307
+ ename = $1
308
+ enclosing = @store.classes_hash[ename] || @store.modules_hash[ename]
309
+ # HACK: crashes in actionpack/lib/action_view/helpers/form_helper.rb (metaprogramming)
310
+ unless enclosing then
311
+ # try the given name at top level (will work for the above example)
312
+ enclosing = @store.classes_hash[given_name] ||
313
+ @store.modules_hash[given_name]
314
+ return enclosing if enclosing
315
+ # not found: create the parent(s)
316
+ names = ename.split('::')
317
+ enclosing = self
318
+ names.each do |n|
319
+ enclosing = enclosing.classes_hash[n] ||
320
+ enclosing.modules_hash[n] ||
321
+ enclosing.add_module(RDoc::NormalModule, n)
322
+ end
323
+ end
324
+ else
325
+ name = full_name
326
+ enclosing = self
327
+ end
328
+ end
329
+
330
+ # fix up superclass
331
+ if full_name == 'BasicObject' then
332
+ superclass = nil
333
+ elsif full_name == 'Object' then
334
+ superclass = '::BasicObject'
335
+ end
336
+
337
+ # find the superclass full name
338
+ if superclass then
339
+ if superclass =~ /^:+/ then
340
+ superclass = $' #'
341
+ else
342
+ if superclass =~ /^(\w+):+(.+)$/ then
343
+ suffix = $2
344
+ mod = find_module_named($1)
345
+ superclass = mod.full_name + '::' + suffix if mod
346
+ else
347
+ mod = find_module_named(superclass)
348
+ superclass = mod.full_name if mod
349
+ end
350
+ end
351
+
352
+ # did we believe it was a module?
353
+ mod = @store.modules_hash.delete superclass
354
+
355
+ upgrade_to_class mod, RDoc::NormalClass, mod.parent if mod
356
+
357
+ # e.g., Object < Object
358
+ superclass = nil if superclass == full_name
359
+ end
360
+
361
+ klass = @store.classes_hash[full_name]
362
+
363
+ if klass then
364
+ # if TopLevel, it may not be registered in the classes:
365
+ enclosing.classes_hash[name] = klass
366
+
367
+ # update the superclass if needed
368
+ if superclass then
369
+ existing = klass.superclass
370
+ existing = existing.full_name unless existing.is_a?(String) if existing
371
+ if existing.nil? ||
372
+ (existing == 'Object' && superclass != 'Object') then
373
+ klass.superclass = superclass
374
+ end
375
+ end
376
+ else
377
+ # this is a new class
378
+ mod = @store.modules_hash.delete full_name
379
+
380
+ if mod then
381
+ klass = upgrade_to_class mod, RDoc::NormalClass, enclosing
382
+
383
+ klass.superclass = superclass unless superclass.nil?
384
+ else
385
+ klass = class_type.new name, superclass
386
+
387
+ enclosing.add_class_or_module(klass, enclosing.classes_hash,
388
+ @store.classes_hash)
389
+ end
390
+ end
391
+
392
+ klass.parent = self
393
+
394
+ klass
395
+ end
396
+
397
+ ##
398
+ # Adds the class or module +mod+ to the modules or
399
+ # classes Hash +self_hash+, and to +all_hash+ (either
400
+ # <tt>TopLevel::modules_hash</tt> or <tt>TopLevel::classes_hash</tt>),
401
+ # unless #done_documenting is +true+. Sets the #parent of +mod+
402
+ # to +self+, and its #section to #current_section. Returns +mod+.
403
+
404
+ def add_class_or_module mod, self_hash, all_hash
405
+ mod.section = current_section # TODO declaring context? something is
406
+ # wrong here...
407
+ mod.parent = self
408
+ mod.full_name = nil
409
+ mod.store = @store
410
+
411
+ unless @done_documenting then
412
+ self_hash[mod.name] = mod
413
+ # this must be done AFTER adding mod to its parent, so that the full
414
+ # name is correct:
415
+ all_hash[mod.full_name] = mod
416
+ if @store.unmatched_constant_alias[mod.full_name] then
417
+ to, file = @store.unmatched_constant_alias[mod.full_name]
418
+ add_module_alias mod, mod.name, to, file
419
+ end
420
+ end
421
+
422
+ mod
423
+ end
424
+
425
+ ##
426
+ # Adds +constant+ if not already there. If it is, updates the comment,
427
+ # value and/or is_alias_for of the known constant if they were empty/nil.
428
+
429
+ def add_constant constant
430
+ return constant unless @document_self
431
+
432
+ # HACK: avoid duplicate 'PI' & 'E' in math.c (1.8.7 source code)
433
+ # (this is a #ifdef: should be handled by the C parser)
434
+ known = @constants_hash[constant.name]
435
+
436
+ if known then
437
+ known.comment = constant.comment if known.comment.empty?
438
+
439
+ known.value = constant.value if
440
+ known.value.nil? or known.value.strip.empty?
441
+
442
+ known.is_alias_for ||= constant.is_alias_for
443
+ else
444
+ @constants_hash[constant.name] = constant
445
+ add_to @constants, constant
446
+ end
447
+
448
+ constant
449
+ end
450
+
451
+ ##
452
+ # Adds included module +include+ which should be an RDoc::Include
453
+
454
+ def add_include include
455
+ add_to @includes, include
456
+
457
+ include
458
+ end
459
+
460
+ ##
461
+ # Adds extension module +ext+ which should be an RDoc::Extend
462
+
463
+ def add_extend ext
464
+ add_to @extends, ext
465
+
466
+ ext
467
+ end
468
+
469
+ ##
470
+ # Adds +method+ if not already there. If it is (as method or attribute),
471
+ # updates the comment if it was empty.
472
+
473
+ def add_method method
474
+ return method unless @document_self
475
+
476
+ # HACK: avoid duplicate 'new' in io.c & struct.c (1.8.7 source code)
477
+ key = method.pretty_name
478
+ known = @methods_hash[key]
479
+
480
+ if known then
481
+ if @store then # otherwise we are loading
482
+ known.comment = method.comment if known.comment.empty?
483
+ previously = ", previously in #{known.file}" unless
484
+ method.file == known.file
485
+ @store.rdoc.options.warn \
486
+ "Duplicate method #{known.full_name} in #{method.file}#{previously}"
487
+ end
488
+ else
489
+ @methods_hash[key] = method
490
+ if @current_line_visibility
491
+ method.visibility, @current_line_visibility = @current_line_visibility, nil
492
+ else
493
+ method.visibility = @visibility
494
+ end
495
+ add_to @method_list, method
496
+ resolve_aliases method
497
+ end
498
+
499
+ method
500
+ end
501
+
502
+ ##
503
+ # Adds a module named +name+. If RDoc already knows +name+ is a class then
504
+ # that class is returned instead. See also #add_class.
505
+
506
+ def add_module(class_type, name)
507
+ mod = @classes[name] || @modules[name]
508
+ return mod if mod
509
+
510
+ full_name = child_name name
511
+ mod = @store.modules_hash[full_name] || class_type.new(name)
512
+
513
+ add_class_or_module mod, @modules, @store.modules_hash
514
+ end
515
+
516
+ ##
517
+ # Adds a module by +RDoc::NormalModule+ instance. See also #add_module.
518
+
519
+ def add_module_by_normal_module(mod)
520
+ add_class_or_module mod, @modules, @store.modules_hash
521
+ end
522
+
523
+ ##
524
+ # Adds an alias from +from+ (a class or module) to +name+ which was defined
525
+ # in +file+.
526
+
527
+ def add_module_alias from, from_name, to, file
528
+ return from if @done_documenting
529
+
530
+ to_full_name = child_name to.name
531
+
532
+ # if we already know this name, don't register an alias:
533
+ # see the metaprogramming in lib/active_support/basic_object.rb,
534
+ # where we already know BasicObject is a class when we find
535
+ # BasicObject = BlankSlate
536
+ return from if @store.find_class_or_module to_full_name
537
+
538
+ unless from
539
+ @store.unmatched_constant_alias[child_name(from_name)] = [to, file]
540
+ return to
541
+ end
542
+
543
+ new_to = from.dup
544
+ new_to.name = to.name
545
+ new_to.full_name = nil
546
+
547
+ if new_to.module? then
548
+ @store.modules_hash[to_full_name] = new_to
549
+ @modules[to.name] = new_to
550
+ else
551
+ @store.classes_hash[to_full_name] = new_to
552
+ @classes[to.name] = new_to
553
+ end
554
+
555
+ # Registers a constant for this alias. The constant value and comment
556
+ # will be updated later, when the Ruby parser adds the constant
557
+ const = RDoc::Constant.new to.name, nil, new_to.comment
558
+ const.record_location file
559
+ const.is_alias_for = from
560
+ add_constant const
561
+
562
+ new_to
563
+ end
564
+
565
+ ##
566
+ # Adds +require+ to this context's top level
567
+
568
+ def add_require(require)
569
+ return require unless @document_self
570
+
571
+ if RDoc::TopLevel === self then
572
+ add_to @requires, require
573
+ else
574
+ parent.add_require require
575
+ end
576
+ end
577
+
578
+ ##
579
+ # Returns a section with +title+, creating it if it doesn't already exist.
580
+ # +comment+ will be appended to the section's comment.
581
+ #
582
+ # A section with a +title+ of +nil+ will return the default section.
583
+ #
584
+ # See also RDoc::Context::Section
585
+
586
+ def add_section title, comment = nil
587
+ if section = @sections[title] then
588
+ section.add_comment comment if comment
589
+ else
590
+ section = Section.new self, title, comment
591
+ @sections[title] = section
592
+ end
593
+
594
+ section
595
+ end
596
+
597
+ ##
598
+ # Adds +thing+ to the collection +array+
599
+
600
+ def add_to array, thing
601
+ array << thing if @document_self
602
+
603
+ thing.parent = self
604
+ thing.store = @store if @store
605
+ thing.section = current_section
606
+ end
607
+
608
+ ##
609
+ # Is there any content?
610
+ #
611
+ # This means any of: comment, aliases, methods, attributes, external
612
+ # aliases, require, constant.
613
+ #
614
+ # Includes and extends are also checked unless <tt>includes == false</tt>.
615
+
616
+ def any_content(includes = true)
617
+ @any_content ||= !(
618
+ @comment.empty? &&
619
+ @method_list.empty? &&
620
+ @attributes.empty? &&
621
+ @aliases.empty? &&
622
+ @external_aliases.empty? &&
623
+ @requires.empty? &&
624
+ @constants.empty?
625
+ )
626
+ @any_content || (includes && !(@includes + @extends).empty? )
627
+ end
628
+
629
+ ##
630
+ # Creates the full name for a child with +name+
631
+
632
+ def child_name name
633
+ if name =~ /^:+/
634
+ $' #'
635
+ elsif RDoc::TopLevel === self then
636
+ name
637
+ else
638
+ "#{self.full_name}::#{name}"
639
+ end
640
+ end
641
+
642
+ ##
643
+ # Class attributes
644
+
645
+ def class_attributes
646
+ @class_attributes ||= attributes.select { |a| a.singleton }
647
+ end
648
+
649
+ ##
650
+ # Class methods
651
+
652
+ def class_method_list
653
+ @class_method_list ||= method_list.select { |a| a.singleton }
654
+ end
655
+
656
+ ##
657
+ # Array of classes in this context
658
+
659
+ def classes
660
+ @classes.values
661
+ end
662
+
663
+ ##
664
+ # All classes and modules in this namespace
665
+
666
+ def classes_and_modules
667
+ classes + modules
668
+ end
669
+
670
+ ##
671
+ # Hash of classes keyed by class name
672
+
673
+ def classes_hash
674
+ @classes
675
+ end
676
+
677
+ ##
678
+ # The current documentation section that new items will be added to. If
679
+ # temporary_section is available it will be used.
680
+
681
+ def current_section
682
+ if section = @temporary_section then
683
+ @temporary_section = nil
684
+ else
685
+ section = @current_section
686
+ end
687
+
688
+ section
689
+ end
690
+
691
+ ##
692
+ # Is part of this thing was defined in +file+?
693
+
694
+ def defined_in?(file)
695
+ @in_files.include?(file)
696
+ end
697
+
698
+ def display(method_attr) # :nodoc:
699
+ if method_attr.is_a? RDoc::Attr
700
+ "#{method_attr.definition} #{method_attr.pretty_name}"
701
+ else
702
+ "method #{method_attr.pretty_name}"
703
+ end
704
+ end
705
+
706
+ ##
707
+ # Iterator for ancestors for duck-typing. Does nothing. See
708
+ # RDoc::ClassModule#each_ancestor.
709
+ #
710
+ # This method exists to make it easy to work with Context subclasses that
711
+ # aren't part of RDoc.
712
+
713
+ def each_ancestor # :nodoc:
714
+ end
715
+
716
+ ##
717
+ # Iterator for attributes
718
+
719
+ def each_attribute # :yields: attribute
720
+ @attributes.each { |a| yield a }
721
+ end
722
+
723
+ ##
724
+ # Iterator for classes and modules
725
+
726
+ def each_classmodule(&block) # :yields: module
727
+ classes_and_modules.sort.each(&block)
728
+ end
729
+
730
+ ##
731
+ # Iterator for constants
732
+
733
+ def each_constant # :yields: constant
734
+ @constants.each {|c| yield c}
735
+ end
736
+
737
+ ##
738
+ # Iterator for included modules
739
+
740
+ def each_include # :yields: include
741
+ @includes.each do |i| yield i end
742
+ end
743
+
744
+ ##
745
+ # Iterator for extension modules
746
+
747
+ def each_extend # :yields: extend
748
+ @extends.each do |e| yield e end
749
+ end
750
+
751
+ ##
752
+ # Iterator for methods
753
+
754
+ def each_method # :yields: method
755
+ return enum_for __method__ unless block_given?
756
+
757
+ @method_list.sort.each { |m| yield m }
758
+ end
759
+
760
+ ##
761
+ # Iterator for each section's contents sorted by title. The +section+, the
762
+ # section's +constants+ and the sections +attributes+ are yielded. The
763
+ # +constants+ and +attributes+ collections are sorted.
764
+ #
765
+ # To retrieve methods in a section use #methods_by_type with the optional
766
+ # +section+ parameter.
767
+ #
768
+ # NOTE: Do not edit collections yielded by this method
769
+
770
+ def each_section # :yields: section, constants, attributes
771
+ return enum_for __method__ unless block_given?
772
+
773
+ constants = @constants.group_by do |constant| constant.section end
774
+ attributes = @attributes.group_by do |attribute| attribute.section end
775
+
776
+ constants.default = []
777
+ attributes.default = []
778
+
779
+ sort_sections.each do |section|
780
+ yield section, constants[section].select(&:display?).sort, attributes[section].select(&:display?).sort
781
+ end
782
+ end
783
+
784
+ ##
785
+ # Finds an attribute +name+ with singleton value +singleton+.
786
+
787
+ def find_attribute(name, singleton)
788
+ name = $1 if name =~ /^(.*)=$/
789
+ @attributes.find { |a| a.name == name && a.singleton == singleton }
790
+ end
791
+
792
+ ##
793
+ # Finds an attribute with +name+ in this context
794
+
795
+ def find_attribute_named(name)
796
+ case name
797
+ when /\A#/ then
798
+ find_attribute name[1..-1], false
799
+ when /\A::/ then
800
+ find_attribute name[2..-1], true
801
+ else
802
+ @attributes.find { |a| a.name == name }
803
+ end
804
+ end
805
+
806
+ ##
807
+ # Finds a class method with +name+ in this context
808
+
809
+ def find_class_method_named(name)
810
+ @method_list.find { |meth| meth.singleton && meth.name == name }
811
+ end
812
+
813
+ ##
814
+ # Finds a constant with +name+ in this context
815
+
816
+ def find_constant_named(name)
817
+ @constants.find do |m|
818
+ m.name == name || m.full_name == name
819
+ end
820
+ end
821
+
822
+ ##
823
+ # Find a module at a higher scope
824
+
825
+ def find_enclosing_module_named(name)
826
+ parent && parent.find_module_named(name)
827
+ end
828
+
829
+ ##
830
+ # Finds an external alias +name+ with singleton value +singleton+.
831
+
832
+ def find_external_alias(name, singleton)
833
+ @external_aliases.find { |m| m.name == name && m.singleton == singleton }
834
+ end
835
+
836
+ ##
837
+ # Finds an external alias with +name+ in this context
838
+
839
+ def find_external_alias_named(name)
840
+ case name
841
+ when /\A#/ then
842
+ find_external_alias name[1..-1], false
843
+ when /\A::/ then
844
+ find_external_alias name[2..-1], true
845
+ else
846
+ @external_aliases.find { |a| a.name == name }
847
+ end
848
+ end
849
+
850
+ ##
851
+ # Finds a file with +name+ in this context
852
+
853
+ def find_file_named name
854
+ @store.find_file_named name
855
+ end
856
+
857
+ ##
858
+ # Finds an instance method with +name+ in this context
859
+
860
+ def find_instance_method_named(name)
861
+ @method_list.find { |meth| !meth.singleton && meth.name == name }
862
+ end
863
+
864
+ ##
865
+ # Finds a method, constant, attribute, external alias, module or file
866
+ # named +symbol+ in this context.
867
+
868
+ def find_local_symbol(symbol)
869
+ find_method_named(symbol) or
870
+ find_constant_named(symbol) or
871
+ find_attribute_named(symbol) or
872
+ find_external_alias_named(symbol) or
873
+ find_module_named(symbol) or
874
+ find_file_named(symbol)
875
+ end
876
+
877
+ ##
878
+ # Finds a method named +name+ with singleton value +singleton+.
879
+
880
+ def find_method(name, singleton)
881
+ @method_list.find { |m|
882
+ if m.singleton
883
+ m.name == name && m.singleton == singleton
884
+ else
885
+ m.name == name && !m.singleton && !singleton
886
+ end
887
+ }
888
+ end
889
+
890
+ ##
891
+ # Finds a instance or module method with +name+ in this context
892
+
893
+ def find_method_named(name)
894
+ case name
895
+ when /\A#/ then
896
+ find_method name[1..-1], false
897
+ when /\A::/ then
898
+ find_method name[2..-1], true
899
+ else
900
+ @method_list.find { |meth| meth.name == name }
901
+ end
902
+ end
903
+
904
+ ##
905
+ # Find a module with +name+ using ruby's scoping rules
906
+
907
+ def find_module_named(name)
908
+ res = @modules[name] || @classes[name]
909
+ return res if res
910
+ return self if self.name == name
911
+ find_enclosing_module_named name
912
+ end
913
+
914
+ ##
915
+ # Look up +symbol+, first as a module, then as a local symbol.
916
+
917
+ def find_symbol(symbol)
918
+ find_symbol_module(symbol) || find_local_symbol(symbol)
919
+ end
920
+
921
+ ##
922
+ # Look up a module named +symbol+.
923
+
924
+ def find_symbol_module(symbol)
925
+ result = nil
926
+
927
+ # look for a class or module 'symbol'
928
+ case symbol
929
+ when /^::/ then
930
+ result = @store.find_class_or_module symbol
931
+ when /^(\w+):+(.+)$/
932
+ suffix = $2
933
+ top = $1
934
+ searched = self
935
+ while searched do
936
+ mod = searched.find_module_named(top)
937
+ break unless mod
938
+ result = @store.find_class_or_module "#{mod.full_name}::#{suffix}"
939
+ break if result || searched.is_a?(RDoc::TopLevel)
940
+ searched = searched.parent
941
+ end
942
+ else
943
+ searched = self
944
+ while searched do
945
+ result = searched.find_module_named(symbol)
946
+ break if result || searched.is_a?(RDoc::TopLevel)
947
+ searched = searched.parent
948
+ end
949
+ end
950
+
951
+ result
952
+ end
953
+
954
+ ##
955
+ # The full name for this context. This method is overridden by subclasses.
956
+
957
+ def full_name
958
+ '(unknown)'
959
+ end
960
+
961
+ ##
962
+ # Does this context and its methods and constants all have documentation?
963
+ #
964
+ # (Yes, fully documented doesn't mean everything.)
965
+
966
+ def fully_documented?
967
+ documented? and
968
+ attributes.all? { |a| a.documented? } and
969
+ method_list.all? { |m| m.documented? } and
970
+ constants.all? { |c| c.documented? }
971
+ end
972
+
973
+ ##
974
+ # URL for this with a +prefix+
975
+
976
+ def http_url(prefix)
977
+ path = name_for_path
978
+ path = path.gsub(/<<\s*(\w*)/, 'from-\1') if path =~ /<</
979
+ path = [prefix] + path.split('::')
980
+
981
+ File.join(*path.compact) + '.html'
982
+ end
983
+
984
+ ##
985
+ # Instance attributes
986
+
987
+ def instance_attributes
988
+ @instance_attributes ||= attributes.reject { |a| a.singleton }
989
+ end
990
+
991
+ ##
992
+ # Instance methods
993
+
994
+ def instance_methods
995
+ @instance_methods ||= method_list.reject { |a| a.singleton }
996
+ end
997
+
998
+ ##
999
+ # Instance methods
1000
+ #--
1001
+ # TODO remove this later
1002
+
1003
+ def instance_method_list
1004
+ warn '#instance_method_list is obsoleted, please use #instance_methods'
1005
+ @instance_methods ||= method_list.reject { |a| a.singleton }
1006
+ end
1007
+
1008
+ ##
1009
+ # Breaks method_list into a nested hash by type (<tt>'class'</tt> or
1010
+ # <tt>'instance'</tt>) and visibility (+:public+, +:protected+, +:private+).
1011
+ #
1012
+ # If +section+ is provided only methods in that RDoc::Context::Section will
1013
+ # be returned.
1014
+
1015
+ def methods_by_type section = nil
1016
+ methods = {}
1017
+
1018
+ TYPES.each do |type|
1019
+ visibilities = {}
1020
+ RDoc::VISIBILITIES.each do |vis|
1021
+ visibilities[vis] = []
1022
+ end
1023
+
1024
+ methods[type] = visibilities
1025
+ end
1026
+
1027
+ each_method do |method|
1028
+ next if section and not method.section == section
1029
+ methods[method.type][method.visibility] << method
1030
+ end
1031
+
1032
+ methods
1033
+ end
1034
+
1035
+ ##
1036
+ # Yields AnyMethod and Attr entries matching the list of names in +methods+.
1037
+
1038
+ def methods_matching(methods, singleton = false, &block)
1039
+ (@method_list + @attributes).each do |m|
1040
+ yield m if methods.include?(m.name) and m.singleton == singleton
1041
+ end
1042
+
1043
+ each_ancestor do |parent|
1044
+ parent.methods_matching(methods, singleton, &block)
1045
+ end
1046
+ end
1047
+
1048
+ ##
1049
+ # Array of modules in this context
1050
+
1051
+ def modules
1052
+ @modules.values
1053
+ end
1054
+
1055
+ ##
1056
+ # Hash of modules keyed by module name
1057
+
1058
+ def modules_hash
1059
+ @modules
1060
+ end
1061
+
1062
+ ##
1063
+ # Name to use to generate the url.
1064
+ # <tt>#full_name</tt> by default.
1065
+
1066
+ def name_for_path
1067
+ full_name
1068
+ end
1069
+
1070
+ ##
1071
+ # Changes the visibility for new methods to +visibility+
1072
+
1073
+ def ongoing_visibility=(visibility)
1074
+ @visibility = visibility
1075
+ end
1076
+
1077
+ ##
1078
+ # Record +top_level+ as a file +self+ is in.
1079
+
1080
+ def record_location(top_level)
1081
+ @in_files << top_level unless @in_files.include?(top_level)
1082
+ end
1083
+
1084
+ ##
1085
+ # Should we remove this context from the documentation?
1086
+ #
1087
+ # The answer is yes if:
1088
+ # * #received_nodoc is +true+
1089
+ # * #any_content is +false+ (not counting includes)
1090
+ # * All #includes are modules (not a string), and their module has
1091
+ # <tt>#remove_from_documentation? == true</tt>
1092
+ # * All classes and modules have <tt>#remove_from_documentation? == true</tt>
1093
+
1094
+ def remove_from_documentation?
1095
+ @remove_from_documentation ||=
1096
+ @received_nodoc &&
1097
+ !any_content(false) &&
1098
+ @includes.all? { |i| !i.module.is_a?(String) && i.module.remove_from_documentation? } &&
1099
+ classes_and_modules.all? { |cm| cm.remove_from_documentation? }
1100
+ end
1101
+
1102
+ ##
1103
+ # Removes methods and attributes with a visibility less than +min_visibility+.
1104
+ #--
1105
+ # TODO mark the visibility of attributes in the template (if not public?)
1106
+
1107
+ def remove_invisible min_visibility
1108
+ return if [:private, :nodoc].include? min_visibility
1109
+ remove_invisible_in @method_list, min_visibility
1110
+ remove_invisible_in @attributes, min_visibility
1111
+ remove_invisible_in @constants, min_visibility
1112
+ end
1113
+
1114
+ ##
1115
+ # Only called when min_visibility == :public or :private
1116
+
1117
+ def remove_invisible_in array, min_visibility # :nodoc:
1118
+ if min_visibility == :public then
1119
+ array.reject! { |e|
1120
+ e.visibility != :public and not e.force_documentation
1121
+ }
1122
+ else
1123
+ array.reject! { |e|
1124
+ e.visibility == :private and not e.force_documentation
1125
+ }
1126
+ end
1127
+ end
1128
+
1129
+ ##
1130
+ # Tries to resolve unmatched aliases when a method or attribute has just
1131
+ # been added.
1132
+
1133
+ def resolve_aliases added
1134
+ # resolve any pending unmatched aliases
1135
+ key = added.pretty_name
1136
+ unmatched_alias_list = @unmatched_alias_lists[key]
1137
+ return unless unmatched_alias_list
1138
+ unmatched_alias_list.each do |unmatched_alias|
1139
+ added.add_alias unmatched_alias, self
1140
+ @external_aliases.delete unmatched_alias
1141
+ end
1142
+ @unmatched_alias_lists.delete key
1143
+ end
1144
+
1145
+ ##
1146
+ # Returns RDoc::Context::Section objects referenced in this context for use
1147
+ # in a table of contents.
1148
+
1149
+ def section_contents
1150
+ used_sections = {}
1151
+
1152
+ each_method do |method|
1153
+ next unless method.display?
1154
+
1155
+ used_sections[method.section] = true
1156
+ end
1157
+
1158
+ # order found sections
1159
+ sections = sort_sections.select do |section|
1160
+ used_sections[section]
1161
+ end
1162
+
1163
+ # only the default section is used
1164
+ return [] if
1165
+ sections.length == 1 and not sections.first.title
1166
+
1167
+ sections
1168
+ end
1169
+
1170
+ ##
1171
+ # Sections in this context
1172
+
1173
+ def sections
1174
+ @sections.values
1175
+ end
1176
+
1177
+ def sections_hash # :nodoc:
1178
+ @sections
1179
+ end
1180
+
1181
+ ##
1182
+ # Sets the current section to a section with +title+. See also #add_section
1183
+
1184
+ def set_current_section title, comment
1185
+ @current_section = add_section title, comment
1186
+ end
1187
+
1188
+ ##
1189
+ # Given an array +methods+ of method names, set the visibility of each to
1190
+ # +visibility+
1191
+
1192
+ def set_visibility_for(methods, visibility, singleton = false)
1193
+ methods_matching methods, singleton do |m|
1194
+ m.visibility = visibility
1195
+ end
1196
+ end
1197
+
1198
+ ##
1199
+ # Given an array +names+ of constants, set the visibility of each constant to
1200
+ # +visibility+
1201
+
1202
+ def set_constant_visibility_for(names, visibility)
1203
+ names.each do |name|
1204
+ constant = @constants_hash[name] or next
1205
+ constant.visibility = visibility
1206
+ end
1207
+ end
1208
+
1209
+ ##
1210
+ # Sorts sections alphabetically (default) or in TomDoc fashion (none,
1211
+ # Public, Internal, Deprecated)
1212
+
1213
+ def sort_sections
1214
+ titles = @sections.map { |title, _| title }
1215
+
1216
+ if titles.length > 1 and
1217
+ TOMDOC_TITLES_SORT ==
1218
+ (titles | TOMDOC_TITLES).sort_by { |title| title.to_s } then
1219
+ @sections.values_at(*TOMDOC_TITLES).compact
1220
+ else
1221
+ @sections.sort_by { |title, _|
1222
+ title.to_s
1223
+ }.map { |_, section|
1224
+ section
1225
+ }
1226
+ end
1227
+ end
1228
+
1229
+ def to_s # :nodoc:
1230
+ "#{self.class.name} #{self.full_name}"
1231
+ end
1232
+
1233
+ ##
1234
+ # Return the TopLevel that owns us
1235
+ #--
1236
+ # FIXME we can be 'owned' by several TopLevel (see #record_location &
1237
+ # #in_files)
1238
+
1239
+ def top_level
1240
+ return @top_level if defined? @top_level
1241
+ @top_level = self
1242
+ @top_level = @top_level.parent until RDoc::TopLevel === @top_level
1243
+ @top_level
1244
+ end
1245
+
1246
+ ##
1247
+ # Upgrades NormalModule +mod+ in +enclosing+ to a +class_type+
1248
+
1249
+ def upgrade_to_class mod, class_type, enclosing
1250
+ enclosing.modules_hash.delete mod.name
1251
+
1252
+ klass = RDoc::ClassModule.from_module class_type, mod
1253
+ klass.store = @store
1254
+
1255
+ # if it was there, then we keep it even if done_documenting
1256
+ @store.classes_hash[mod.full_name] = klass
1257
+ enclosing.classes_hash[mod.name] = klass
1258
+
1259
+ klass
1260
+ end
1261
+
1262
+ autoload :Section, "#{__dir__}/context/section"
1263
+
1264
+ end