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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/lib/honeybadger/plugins/active_job.rb +28 -0
- data/lib/honeybadger/version.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/deprecate.rb +14 -0
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ast_lookup.rb +14 -6
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console.rb +7 -2
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/json.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/message_builder.rb +14 -5
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/pretty.rb +6 -2
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/proto_world.rb +17 -22
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rake/task.rb +1 -5
- 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
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/user_interface.rb +2 -2
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/errors.rb +232 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +178 -0
- 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
- 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
- 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
- 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
- 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
- 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
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +93 -0
- 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
- 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
- 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
- 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
- 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
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/errors_spec.rb +13 -0
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/evaluations_spec.rb +17 -0
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/parsing_spec.rb +14 -0
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/log_file.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/multi.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/null.rb +1 -1
- 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
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/writer.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device.rb +1 -1
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/exception_formatter.rb +2 -2
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/id_formatter.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/inspect_formatter.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/object_formatter.rb +1 -1
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/string_formatter.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/strip_formatter.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/structured_formatter.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/truncate_formatter.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/log_entry.rb +2 -2
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/logger.rb +10 -6
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/context.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/request_id.rb +1 -1
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/severity.rb +13 -1
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/template.rb +2 -2
- data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack.rb +2 -1
- 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
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/application.rb +26 -2
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/dsl_definition.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_task.rb +8 -4
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_utils.rb +0 -2
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/packagetask.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task.rb +2 -2
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/thread_pool.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/version.rb +1 -1
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/alias.rb +111 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/anon_class.rb +10 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/any_method.rb +379 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/attr.rb +175 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/class_module.rb +801 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_object.rb +421 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_objects.rb +5 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/comment.rb +229 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/constant.rb +186 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context/section.rb +233 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context.rb +1264 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/cross_reference.rb +225 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/encoding.rb +131 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erb_partial.rb +18 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erbio.rb +37 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/extend.rb +9 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/darkfish.rb +786 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/json_index.rb +300 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/markup.rb +159 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/message_extractor.rb +68 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po.rb +84 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po_entry.rb +141 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot.rb +98 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/ri.rb +30 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator.rb +51 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ghost_method.rb +6 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/locale.rb +102 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/text.rb +126 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n.rb +10 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/include.rb +9 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/known_classes.rb +74 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/entities.rb +2131 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/literals.rb +474 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown.rb +16783 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_changer.rb +22 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_span.rb +35 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attribute_manager.rb +402 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attributes.rb +70 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/blank_line.rb +27 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/block_quote.rb +14 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/document.rb +164 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/formatter.rb +265 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/hard_break.rb +31 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/heading.rb +78 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/include.rb +42 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/indented_paragraph.rb +47 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list.rb +101 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list_item.rb +99 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/paragraph.rb +28 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/parser.rb +581 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/pre_process.rb +298 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/raw.rb +69 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/regexp_handling.rb +40 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/rule.rb +20 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/table.rb +47 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_ansi.rb +93 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_bs.rb +77 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html.rb +449 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_crossref.rb +175 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_snippet.rb +284 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_joined_paragraph.rb +46 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_label.rb +74 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_markdown.rb +191 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_rdoc.rb +344 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_table_of_contents.rb +88 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_test.rb +69 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_tt_only.rb +120 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/verbatim.rb +83 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup.rb +235 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/meta_method.rb +6 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/method_attr.rb +418 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/mixin.rb +120 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_class.rb +92 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_module.rb +73 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/options.rb +1330 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/c.rb +1225 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/changelog.rb +334 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/markdown.rb +22 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/rd.rb +22 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ripper_state_lex.rb +590 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby.rb +2360 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby_tools.rb +165 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/simple.rb +61 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/text.rb +11 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser.rb +294 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/block_parser.rb +1710 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline.rb +71 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline_parser.rb +1210 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd.rb +99 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rdoc.rb +563 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/require.rb +51 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/driver.rb +1513 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/formatter.rb +6 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/paths.rb +171 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/store.rb +6 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/task.rb +71 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri.rb +20 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rubygems_hook.rb +248 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/servlet.rb +451 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/single_class.rb +30 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/normal.rb +58 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/quiet.rb +59 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/verbose.rb +44 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats.rb +461 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/store.rb +979 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/task.rb +355 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/text.rb +312 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/token_stream.rb +118 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/tom_doc.rb +263 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/top_level.rb +288 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/version.rb +10 -0
- data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc.rb +201 -0
- data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/version.rb +3 -0
- data/vendor/bundle/ruby/3.2.0/gems/stringio-3.1.0/ext/stringio/extconf.rb +7 -0
- metadata +478 -386
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.0.2/lib/cucumber/deprecate.rb +0 -55
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/lib/cucumber/cucumber_expressions/errors.rb +0 -214
- 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
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +0 -181
- 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
- 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
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +0 -84
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-21.0.1/spec/capture_warnings.rb +0 -74
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/capture_warnings.rb +0 -74
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/expressions_spec.rb +0 -84
- data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/parser_spec.rb +0 -50
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/acceptance_test.rb +0 -131
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_find.rb +0 -66
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_find_all.rb +0 -102
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_names.rb +0 -91
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_select.rb +0 -26
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_select_incremental.rb +0 -25
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_valid.rb +0 -101
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/domain_profiler.rb +0 -12
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/find_profiler.rb +0 -12
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/find_profiler_jp.rb +0 -12
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/initialization_profiler.rb +0 -11
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/list_profsize.rb +0 -11
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/object_binsize.rb +0 -57
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/psl_test.rb +0 -52
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/test_helper.rb +0 -10
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/domain_test.rb +0 -106
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/errors_test.rb +0 -25
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/list_test.rb +0 -241
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/public_suffix_test.rb +0 -188
- data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/rule_test.rb +0 -222
- data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.5/lib/sshkit/version.rb +0 -3
- data/vendor/bundle/ruby/3.2.0/gems/stringio-3.0.8/ext/stringio/extconf.rb +0 -3
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_mixin.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails_rspec.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails_rspec2.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rspec.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rspec2.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/discover.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/configuration.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/main.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/options.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/profile_loader.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/rerun_file.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/configuration.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/constantize.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/encoding.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/errors.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/envelope.rb +0 -0
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/step_activated.rb +0 -0
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/file_specs.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/activate_steps.rb +0 -0
- /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
- /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
- /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
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/gated_receiver.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/prepare_world.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/quit.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/randomizer.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/retry.rb +0 -0
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/tag_limits.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ansicolor.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/backtrace_filter.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console_counts.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console_issues.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/duration.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/duration_extractor.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/errors.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/fail_fast.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/fanout.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/html.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/http_io.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/interceptor.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/io.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/junit.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/message.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/progress.rb +0 -0
- /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
- /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
- /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
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/rerun.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/stepdefs.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/steps.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/summary.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/unicode.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/url_reporter.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/usage.rb +0 -0
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/formatter/escaping.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/i18n.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/steps_parser.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/dsl.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/hook.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/registry_wrapper.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/snippet.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/step_definition.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/world_factory.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/hooks.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/load_path.rb +0 -0
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/platform.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/project_initializer.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rspec/doubles.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/running_test_case.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/after_hooks.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/before_hooks.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/step_hooks.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/support_code.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_definition_light.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_definitions.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_match.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_match_search.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/term/ansicolor.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/term/banner.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/unit.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/simplecov_setup.rb +0 -0
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core.rb +0 -0
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages.rb +0 -0
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/context.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tag_formatter.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tagged_logger_support.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tagged_logging.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tags.rb +0 -0
- /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
- /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
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/doc/jamis.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/backtrace.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/clean.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/cloneable.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/cpu_counter.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/default_loader.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/early_time.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/ext/core.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/ext/string.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_creation_task.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_list.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_utils_ext.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/invocation_chain.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/invocation_exception_mixin.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/late_time.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/linked_list.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/loaders/makefile.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/multi_task.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/name_space.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/phony.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/private_reader.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/promise.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/pseudo_status.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rake_module.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rake_test_loader.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/scope.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_argument_error.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_arguments.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_manager.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/tasklib.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/testtask.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/thread_history_display.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/trace_output.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/win32.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/examples/simple_connection.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/core_ext/array.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/core_ext/hash.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/all.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/abstract.rb +0 -0
- /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
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/connection_pool.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/local.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/netssh.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/printer.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/skipper.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/color.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/command.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/command_map.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/configuration.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/coordinator.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/deprecation_logger.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/dsl.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/exception.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/abstract.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/black_hole.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/dot.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/pretty.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/simple_text.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/host.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/log_message.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/logger.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/mapping_interaction_handler.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/abstract.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/group.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/null.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/parallel.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/sequential.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/backends/test_local.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/backends/test_netssh.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/helper.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/support/vagrant_wrapper.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_abstract.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_local.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_netssh.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_printer.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_custom.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_dot.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_pretty.rb +0 -0
- /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
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_group.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_parallel.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_sequential.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_color.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_command.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_command_map.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_configuration.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_coordinator.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_deprecation_logger.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_dsl.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_host.rb +0 -0
- /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_logger.rb +0 -0
- /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
|