kinetic_sdk 5.0.18 → 5.0.20
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -1
- data/README.md +1 -1
- data/gems/{mime-types-3.1/Code-of-Conduct.rdoc → mime-types-3.4.1/Code-of-Conduct.md} +29 -30
- data/gems/mime-types-3.4.1/Contributing.md +132 -0
- data/gems/mime-types-3.4.1/History.md +269 -0
- data/gems/{mime-types-3.1/Licence.rdoc → mime-types-3.4.1/Licence.md} +3 -3
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/Manifest.txt +4 -4
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/README.rdoc +6 -14
- data/gems/mime-types-3.4.1/Rakefile +270 -0
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/type/columnar.rb +6 -4
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/type.rb +162 -101
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types/_columnar.rb +22 -20
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types/cache.rb +13 -11
- data/gems/mime-types-3.4.1/lib/mime/types/columnar.rb +3 -0
- data/gems/mime-types-3.4.1/lib/mime/types/container.rb +96 -0
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types/deprecations.rb +17 -13
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types/full.rb +4 -2
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types/loader.rb +29 -18
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types/logger.rb +5 -5
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types/registry.rb +14 -5
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/lib/mime/types.rb +26 -21
- data/gems/mime-types-3.4.1/lib/mime-types.rb +3 -0
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/test/bad-fixtures/malformed +0 -0
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/test/fixture/json.json +0 -0
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/test/fixture/old-data +0 -0
- data/gems/{mime-types-3.1 → mime-types-3.4.1}/test/fixture/yaml.yaml +0 -0
- data/gems/mime-types-3.4.1/test/minitest_helper.rb +11 -0
- data/gems/mime-types-3.4.1/test/test_mime_type.rb +621 -0
- data/gems/mime-types-3.4.1/test/test_mime_types.rb +169 -0
- data/gems/mime-types-3.4.1/test/test_mime_types_cache.rb +118 -0
- data/gems/mime-types-3.4.1/test/test_mime_types_class.rb +159 -0
- data/gems/mime-types-3.4.1/test/test_mime_types_lazy.rb +49 -0
- data/gems/mime-types-3.4.1/test/test_mime_types_loader.rb +32 -0
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/Code-of-Conduct.md +22 -22
- data/gems/mime-types-data-3.2022.0105/Contributing.md +241 -0
- data/gems/mime-types-data-3.2022.0105/History.md +502 -0
- data/gems/{websocket-driver-0.6.5-java/LICENSE.md → mime-types-data-3.2022.0105/Licence.md} +7 -5
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/Manifest.txt +16 -0
- data/gems/mime-types-data-3.2022.0105/README.md +73 -0
- data/gems/mime-types-data-3.2022.0105/Rakefile +155 -0
- data/gems/mime-types-data-3.2022.0105/data/content_type_mime.db +878 -0
- data/gems/mime-types-data-3.2022.0105/data/ext_mime.db +1198 -0
- data/gems/mime-types-data-3.2022.0105/data/mime-types.json +1 -0
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/data/mime.content_type.column +432 -13
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/data/mime.docs.column +419 -0
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/data/mime.encoding.column +419 -0
- data/gems/mime-types-data-3.2022.0105/data/mime.flags.column +2383 -0
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/data/mime.friendly.column +419 -0
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/data/mime.pext.column +419 -0
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/data/mime.use_instead.column +420 -1
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/data/mime.xrefs.column +567 -148
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/lib/mime/types/data.rb +2 -2
- data/gems/{mime-types-data-3.2016.0521 → mime-types-data-3.2022.0105}/lib/mime-types-data.rb +1 -1
- data/gems/mime-types-data-3.2022.0105/types/application.yaml +17299 -0
- data/gems/mime-types-data-3.2022.0105/types/audio.yaml +1716 -0
- data/gems/mime-types-data-3.2022.0105/types/chemical.yaml +71 -0
- data/gems/mime-types-data-3.2022.0105/types/conference.yaml +9 -0
- data/gems/mime-types-data-3.2022.0105/types/drawing.yaml +15 -0
- data/gems/mime-types-data-3.2022.0105/types/font.yaml +65 -0
- data/gems/mime-types-data-3.2022.0105/types/image.yaml +1252 -0
- data/gems/mime-types-data-3.2022.0105/types/message.yaml +205 -0
- data/gems/mime-types-data-3.2022.0105/types/model.yaml +390 -0
- data/gems/mime-types-data-3.2022.0105/types/multipart.yaml +179 -0
- data/gems/mime-types-data-3.2022.0105/types/provisional-standard-types.yaml +145 -0
- data/gems/mime-types-data-3.2022.0105/types/text.yaml +1166 -0
- data/gems/mime-types-data-3.2022.0105/types/video.yaml +1121 -0
- data/gems/mime-types-data-3.2022.0105/types/world.yaml +8 -0
- data/gems/rake-13.0.1/CONTRIBUTING.rdoc +43 -0
- data/gems/rake-13.0.1/Gemfile +10 -0
- data/gems/rake-13.0.1/History.rdoc +2368 -0
- data/gems/{parallel-1.12.1/MIT-LICENSE.txt → rake-13.0.1/MIT-LICENSE} +2 -1
- data/gems/rake-13.0.1/README.rdoc +155 -0
- data/gems/rake-13.0.1/Rakefile +41 -0
- data/gems/rake-13.0.1/bin/bundle +105 -0
- data/gems/rake-13.0.1/bin/console +7 -0
- data/gems/rake-13.0.1/bin/rake +29 -0
- data/gems/rake-13.0.1/bin/rdoc +29 -0
- data/gems/rake-13.0.1/bin/rubocop +29 -0
- data/gems/rake-13.0.1/bin/setup +6 -0
- data/gems/rake-13.0.1/doc/command_line_usage.rdoc +158 -0
- data/gems/rake-13.0.1/doc/example/Rakefile1 +38 -0
- data/gems/rake-13.0.1/doc/example/Rakefile2 +35 -0
- data/gems/rake-13.0.1/doc/example/a.c +6 -0
- data/gems/rake-13.0.1/doc/example/b.c +6 -0
- data/gems/rake-13.0.1/doc/example/main.c +11 -0
- data/gems/rake-13.0.1/doc/glossary.rdoc +42 -0
- data/gems/rake-13.0.1/doc/jamis.rb +592 -0
- data/gems/rake-13.0.1/doc/proto_rake.rdoc +127 -0
- data/gems/rake-13.0.1/doc/rake.1 +156 -0
- data/gems/rake-13.0.1/doc/rakefile.rdoc +622 -0
- data/gems/rake-13.0.1/doc/rational.rdoc +151 -0
- data/gems/rake-13.0.1/exe/rake +27 -0
- data/gems/rake-13.0.1/lib/rake/application.rb +824 -0
- data/gems/rake-13.0.1/lib/rake/backtrace.rb +24 -0
- data/gems/rake-13.0.1/lib/rake/clean.rb +78 -0
- data/gems/rake-13.0.1/lib/rake/cloneable.rb +17 -0
- data/gems/rake-13.0.1/lib/rake/cpu_counter.rb +107 -0
- data/gems/rake-13.0.1/lib/rake/default_loader.rb +15 -0
- data/gems/rake-13.0.1/lib/rake/dsl_definition.rb +195 -0
- data/gems/rake-13.0.1/lib/rake/early_time.rb +22 -0
- data/gems/rake-13.0.1/lib/rake/ext/core.rb +26 -0
- data/gems/rake-13.0.1/lib/rake/ext/string.rb +176 -0
- data/gems/rake-13.0.1/lib/rake/file_creation_task.rb +25 -0
- data/gems/rake-13.0.1/lib/rake/file_list.rb +435 -0
- data/gems/rake-13.0.1/lib/rake/file_task.rb +54 -0
- data/gems/rake-13.0.1/lib/rake/file_utils.rb +134 -0
- data/gems/rake-13.0.1/lib/rake/file_utils_ext.rb +134 -0
- data/gems/rake-13.0.1/lib/rake/invocation_chain.rb +57 -0
- data/gems/rake-13.0.1/lib/rake/invocation_exception_mixin.rb +17 -0
- data/gems/rake-13.0.1/lib/rake/late_time.rb +18 -0
- data/gems/rake-13.0.1/lib/rake/linked_list.rb +112 -0
- data/gems/rake-13.0.1/lib/rake/loaders/makefile.rb +54 -0
- data/gems/rake-13.0.1/lib/rake/multi_task.rb +14 -0
- data/gems/rake-13.0.1/lib/rake/name_space.rb +38 -0
- data/gems/rake-13.0.1/lib/rake/packagetask.rb +222 -0
- data/gems/rake-13.0.1/lib/rake/phony.rb +16 -0
- data/gems/rake-13.0.1/lib/rake/private_reader.rb +21 -0
- data/gems/rake-13.0.1/lib/rake/promise.rb +100 -0
- data/gems/rake-13.0.1/lib/rake/pseudo_status.rb +30 -0
- data/gems/rake-13.0.1/lib/rake/rake_module.rb +67 -0
- data/gems/rake-13.0.1/lib/rake/rake_test_loader.rb +27 -0
- data/gems/rake-13.0.1/lib/rake/rule_recursion_overflow_error.rb +20 -0
- data/gems/rake-13.0.1/lib/rake/scope.rb +43 -0
- data/gems/rake-13.0.1/lib/rake/task.rb +434 -0
- data/gems/rake-13.0.1/lib/rake/task_argument_error.rb +8 -0
- data/gems/rake-13.0.1/lib/rake/task_arguments.rb +109 -0
- data/gems/rake-13.0.1/lib/rake/task_manager.rb +331 -0
- data/gems/rake-13.0.1/lib/rake/tasklib.rb +12 -0
- data/gems/rake-13.0.1/lib/rake/testtask.rb +224 -0
- data/gems/rake-13.0.1/lib/rake/thread_history_display.rb +49 -0
- data/gems/rake-13.0.1/lib/rake/thread_pool.rb +163 -0
- data/gems/rake-13.0.1/lib/rake/trace_output.rb +23 -0
- data/gems/rake-13.0.1/lib/rake/version.rb +10 -0
- data/gems/rake-13.0.1/lib/rake/win32.rb +51 -0
- data/gems/rake-13.0.1/lib/rake.rb +71 -0
- data/gems/rake-13.0.1/rake.gemspec +43 -0
- data/gems/yard-0.9.25/CHANGELOG.md +804 -0
- data/gems/yard-0.9.25/CODE_OF_CONDUCT.md +15 -0
- data/gems/yard-0.9.25/CONTRIBUTING.md +140 -0
- data/gems/yard-0.9.25/Dockerfile.samus +28 -0
- data/gems/yard-0.9.25/Gemfile +32 -0
- data/gems/yard-0.9.25/LEGAL +66 -0
- data/gems/yard-0.9.25/LICENSE +22 -0
- data/gems/yard-0.9.25/README.md +325 -0
- data/gems/yard-0.9.25/Rakefile +39 -0
- data/gems/yard-0.9.25/SECURITY.md +26 -0
- data/gems/yard-0.9.25/benchmarks/builtins_vs_eval.rb +24 -0
- data/gems/yard-0.9.25/benchmarks/concat_vs_join.rb +13 -0
- data/gems/yard-0.9.25/benchmarks/erb_vs_erubis.rb +54 -0
- data/gems/yard-0.9.25/benchmarks/format_args.rb +47 -0
- data/gems/yard-0.9.25/benchmarks/generation.rb +38 -0
- data/gems/yard-0.9.25/benchmarks/marshal_vs_dbm.rb +64 -0
- data/gems/yard-0.9.25/benchmarks/parsing.rb +46 -0
- data/gems/yard-0.9.25/benchmarks/pathname_vs_string.rb +51 -0
- data/gems/yard-0.9.25/benchmarks/rdoc_vs_yardoc.rb +11 -0
- data/gems/yard-0.9.25/benchmarks/registry_store_types.rb +49 -0
- data/gems/yard-0.9.25/benchmarks/ri_vs_yri.rb +19 -0
- data/gems/yard-0.9.25/benchmarks/ripper_parser.rb +13 -0
- data/gems/yard-0.9.25/benchmarks/splat_vs_flatten.rb +13 -0
- data/gems/yard-0.9.25/benchmarks/template_erb.rb +23 -0
- data/gems/yard-0.9.25/benchmarks/template_format.rb +7 -0
- data/gems/yard-0.9.25/benchmarks/template_profile.rb +18 -0
- data/gems/yard-0.9.25/benchmarks/yri_cache.rb +20 -0
- data/gems/yard-0.9.25/bin/yard +13 -0
- data/gems/yard-0.9.25/bin/yardoc +13 -0
- data/gems/yard-0.9.25/bin/yri +13 -0
- data/gems/yard-0.9.25/docs/CodeObjects.md +115 -0
- data/gems/yard-0.9.25/docs/GettingStarted.md +679 -0
- data/gems/yard-0.9.25/docs/Handlers.md +152 -0
- data/gems/yard-0.9.25/docs/Overview.md +61 -0
- data/gems/yard-0.9.25/docs/Parser.md +191 -0
- data/gems/yard-0.9.25/docs/Tags.md +283 -0
- data/gems/yard-0.9.25/docs/TagsArch.md +123 -0
- data/gems/yard-0.9.25/docs/Templates.md +496 -0
- data/gems/yard-0.9.25/docs/WhatsNew.md +1245 -0
- data/gems/yard-0.9.25/docs/images/code-objects-class-diagram.png +0 -0
- data/gems/yard-0.9.25/docs/images/handlers-class-diagram.png +0 -0
- data/gems/yard-0.9.25/docs/images/overview-class-diagram.png +0 -0
- data/gems/yard-0.9.25/docs/images/parser-class-diagram.png +0 -0
- data/gems/yard-0.9.25/docs/images/tags-class-diagram.png +0 -0
- data/gems/yard-0.9.25/docs/templates/default/fulldoc/html/full_list_tag.erb +9 -0
- data/gems/yard-0.9.25/docs/templates/default/fulldoc/html/setup.rb +6 -0
- data/gems/yard-0.9.25/docs/templates/default/layout/html/setup.rb +9 -0
- data/gems/yard-0.9.25/docs/templates/default/layout/html/tag_list.erb +11 -0
- data/gems/yard-0.9.25/docs/templates/default/yard_tags/html/list.erb +18 -0
- data/gems/yard-0.9.25/docs/templates/default/yard_tags/html/setup.rb +26 -0
- data/gems/yard-0.9.25/docs/templates/plugin.rb +70 -0
- data/gems/yard-0.9.25/lib/rubygems_plugin.rb +9 -0
- data/gems/yard-0.9.25/lib/yard/autoload.rb +308 -0
- data/gems/yard-0.9.25/lib/yard/cli/command.rb +85 -0
- data/gems/yard-0.9.25/lib/yard/cli/command_parser.rb +93 -0
- data/gems/yard-0.9.25/lib/yard/cli/config.rb +198 -0
- data/gems/yard-0.9.25/lib/yard/cli/diff.rb +273 -0
- data/gems/yard-0.9.25/lib/yard/cli/display.rb +69 -0
- data/gems/yard-0.9.25/lib/yard/cli/gems.rb +84 -0
- data/gems/yard-0.9.25/lib/yard/cli/graph.rb +125 -0
- data/gems/yard-0.9.25/lib/yard/cli/help.rb +20 -0
- data/gems/yard-0.9.25/lib/yard/cli/i18n.rb +70 -0
- data/gems/yard-0.9.25/lib/yard/cli/list.rb +23 -0
- data/gems/yard-0.9.25/lib/yard/cli/markup_types.rb +32 -0
- data/gems/yard-0.9.25/lib/yard/cli/server.rb +266 -0
- data/gems/yard-0.9.25/lib/yard/cli/stats.rb +231 -0
- data/gems/yard-0.9.25/lib/yard/cli/yardoc.rb +789 -0
- data/gems/yard-0.9.25/lib/yard/cli/yardopts_command.rb +110 -0
- data/gems/yard-0.9.25/lib/yard/cli/yri.rb +215 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/base.rb +622 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/class_object.rb +146 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/class_variable_object.rb +11 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/constant_object.rb +16 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/extended_method_object.rb +24 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/extra_file_object.rb +134 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/macro_object.rb +172 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/method_object.rb +196 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/module_object.rb +21 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/namespace_mapper.rb +141 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/namespace_object.rb +200 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/proxy.rb +245 -0
- data/gems/yard-0.9.25/lib/yard/code_objects/root_object.rb +19 -0
- data/gems/yard-0.9.25/lib/yard/config.rb +270 -0
- data/gems/yard-0.9.25/lib/yard/core_ext/array.rb +16 -0
- data/gems/yard-0.9.25/lib/yard/core_ext/file.rb +69 -0
- data/gems/yard-0.9.25/lib/yard/core_ext/hash.rb +16 -0
- data/gems/yard-0.9.25/lib/yard/core_ext/insertion.rb +63 -0
- data/gems/yard-0.9.25/lib/yard/core_ext/module.rb +11 -0
- data/gems/yard-0.9.25/lib/yard/core_ext/string.rb +68 -0
- data/gems/yard-0.9.25/lib/yard/core_ext/symbol_hash.rb +75 -0
- data/gems/yard-0.9.25/lib/yard/docstring.rb +386 -0
- data/gems/yard-0.9.25/lib/yard/docstring_parser.rb +345 -0
- data/gems/yard-0.9.25/lib/yard/gem_index.rb +29 -0
- data/gems/yard-0.9.25/lib/yard/globals.rb +22 -0
- data/gems/yard-0.9.25/lib/yard/handlers/base.rb +595 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/alias_handler.rb +16 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/attribute_handler.rb +13 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/base.rb +164 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/class_handler.rb +27 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/constant_handler.rb +13 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/handler_methods.rb +212 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/init_handler.rb +20 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/method_handler.rb +45 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/mixin_handler.rb +21 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/module_handler.rb +17 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/override_comment_handler.rb +31 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/path_handler.rb +11 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/struct_handler.rb +13 -0
- data/gems/yard-0.9.25/lib/yard/handlers/c/symbol_handler.rb +8 -0
- data/gems/yard-0.9.25/lib/yard/handlers/common/method_handler.rb +19 -0
- data/gems/yard-0.9.25/lib/yard/handlers/processor.rb +200 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/alias_handler.rb +45 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/attribute_handler.rb +87 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/base.rb +165 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/class_condition_handler.rb +92 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/class_handler.rb +119 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/class_variable_handler.rb +17 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/comment_handler.rb +10 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/constant_handler.rb +55 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/decorator_handler_methods.rb +123 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/dsl_handler.rb +15 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/dsl_handler_methods.rb +96 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/exception_handler.rb +27 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/extend_handler.rb +22 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/alias_handler.rb +37 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/attribute_handler.rb +65 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/base.rb +245 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/class_condition_handler.rb +83 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/class_handler.rb +113 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/class_variable_handler.rb +15 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/comment_handler.rb +10 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/constant_handler.rb +29 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/dsl_handler.rb +17 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/exception_handler.rb +13 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/extend_handler.rb +21 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/method_handler.rb +90 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/mixin_handler.rb +39 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/module_function_handler.rb +19 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/module_handler.rb +12 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/private_class_method_handler.rb +22 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/private_constant_handler.rb +22 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/visibility_handler.rb +17 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/legacy/yield_handler.rb +29 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/method_condition_handler.rb +9 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/method_handler.rb +104 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/mixin_handler.rb +49 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/module_function_handler.rb +27 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/module_handler.rb +12 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/private_class_method_handler.rb +14 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/private_constant_handler.rb +43 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/public_class_method_handler.rb +14 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/struct_handler_methods.rb +143 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/visibility_handler.rb +22 -0
- data/gems/yard-0.9.25/lib/yard/handlers/ruby/yield_handler.rb +31 -0
- data/gems/yard-0.9.25/lib/yard/i18n/locale.rb +67 -0
- data/gems/yard-0.9.25/lib/yard/i18n/message.rb +57 -0
- data/gems/yard-0.9.25/lib/yard/i18n/messages.rb +56 -0
- data/gems/yard-0.9.25/lib/yard/i18n/po_parser.rb +61 -0
- data/gems/yard-0.9.25/lib/yard/i18n/pot_generator.rb +290 -0
- data/gems/yard-0.9.25/lib/yard/i18n/text.rb +173 -0
- data/gems/yard-0.9.25/lib/yard/logging.rb +205 -0
- data/gems/yard-0.9.25/lib/yard/options.rb +217 -0
- data/gems/yard-0.9.25/lib/yard/parser/base.rb +57 -0
- data/gems/yard-0.9.25/lib/yard/parser/c/c_parser.rb +235 -0
- data/gems/yard-0.9.25/lib/yard/parser/c/comment_parser.rb +134 -0
- data/gems/yard-0.9.25/lib/yard/parser/c/statement.rb +66 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/ast_node.rb +551 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/legacy/irb/slex.rb +276 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/legacy/ruby_lex.rb +1345 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/legacy/ruby_parser.rb +32 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/legacy/statement.rb +68 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/legacy/statement_list.rb +394 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/legacy/token_list.rb +74 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/ruby_parser.rb +701 -0
- data/gems/yard-0.9.25/lib/yard/parser/ruby/token_resolver.rb +158 -0
- data/gems/yard-0.9.25/lib/yard/parser/source_parser.rb +526 -0
- data/gems/yard-0.9.25/lib/yard/rake/yardoc_task.rb +81 -0
- data/gems/yard-0.9.25/lib/yard/registry.rb +439 -0
- data/gems/yard-0.9.25/lib/yard/registry_resolver.rb +217 -0
- data/gems/yard-0.9.25/lib/yard/registry_store.rb +342 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/backports/LICENSE.txt +57 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/backports/MIT.txt +20 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/backports/gem.rb +10 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/backports/source_index.rb +365 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/backports.rb +10 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/doc_manager.rb +90 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/hook.rb +197 -0
- data/gems/yard-0.9.25/lib/yard/rubygems/specification.rb +50 -0
- data/gems/yard-0.9.25/lib/yard/serializers/base.rb +83 -0
- data/gems/yard-0.9.25/lib/yard/serializers/file_system_serializer.rb +123 -0
- data/gems/yard-0.9.25/lib/yard/serializers/process_serializer.rb +24 -0
- data/gems/yard-0.9.25/lib/yard/serializers/stdout_serializer.rb +34 -0
- data/gems/yard-0.9.25/lib/yard/serializers/yardoc_serializer.rb +152 -0
- data/gems/yard-0.9.25/lib/yard/server/adapter.rb +100 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/base.rb +209 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/display_file_command.rb +29 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/display_object_command.rb +65 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/frames_command.rb +16 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/library_command.rb +187 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/library_index_command.rb +28 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/list_command.rb +25 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/root_request_command.rb +15 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/search_command.rb +79 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/static_file_command.rb +23 -0
- data/gems/yard-0.9.25/lib/yard/server/commands/static_file_helpers.rb +61 -0
- data/gems/yard-0.9.25/lib/yard/server/doc_server_helper.rb +91 -0
- data/gems/yard-0.9.25/lib/yard/server/doc_server_serializer.rb +39 -0
- data/gems/yard-0.9.25/lib/yard/server/library_version.rb +277 -0
- data/gems/yard-0.9.25/lib/yard/server/rack_adapter.rb +89 -0
- data/gems/yard-0.9.25/lib/yard/server/router.rb +187 -0
- data/gems/yard-0.9.25/lib/yard/server/static_caching.rb +46 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/fulldoc/html/css/custom.css +127 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/fulldoc/html/images/processing.gif +0 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/fulldoc/html/js/autocomplete.js +12 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/layout/html/breadcrumb.erb +37 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/layout/html/script_setup.erb +7 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/layout/html/setup.rb +8 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/method_details/html/permalink.erb +4 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/default/method_details/html/setup.rb +5 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/library_list/html/headers.erb +8 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/library_list/html/library_list.erb +14 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/library_list/html/listing.erb +13 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/library_list/html/setup.rb +6 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/library_list/html/title.erb +2 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/processing/html/processing.erb +52 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/processing/html/setup.rb +4 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/search/html/search.erb +18 -0
- data/gems/yard-0.9.25/lib/yard/server/templates/doc_server/search/html/setup.rb +9 -0
- data/gems/yard-0.9.25/lib/yard/server/webrick_adapter.rb +45 -0
- data/gems/yard-0.9.25/lib/yard/server.rb +13 -0
- data/gems/yard-0.9.25/lib/yard/tags/default_factory.rb +191 -0
- data/gems/yard-0.9.25/lib/yard/tags/default_tag.rb +13 -0
- data/gems/yard-0.9.25/lib/yard/tags/directives.rb +616 -0
- data/gems/yard-0.9.25/lib/yard/tags/library.rb +633 -0
- data/gems/yard-0.9.25/lib/yard/tags/option_tag.rb +13 -0
- data/gems/yard-0.9.25/lib/yard/tags/overload_tag.rb +71 -0
- data/gems/yard-0.9.25/lib/yard/tags/ref_tag.rb +8 -0
- data/gems/yard-0.9.25/lib/yard/tags/ref_tag_list.rb +28 -0
- data/gems/yard-0.9.25/lib/yard/tags/tag.rb +71 -0
- data/gems/yard-0.9.25/lib/yard/tags/tag_format_error.rb +7 -0
- data/gems/yard-0.9.25/lib/yard/tags/types_explainer.rb +162 -0
- data/gems/yard-0.9.25/lib/yard/templates/engine.rb +186 -0
- data/gems/yard-0.9.25/lib/yard/templates/erb_cache.rb +23 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/base_helper.rb +215 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/filter_helper.rb +27 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/html_helper.rb +670 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/html_syntax_highlight_helper.rb +78 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/markup/rdoc_markdown.rb +23 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/markup/rdoc_markup.rb +110 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/markup_helper.rb +172 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/method_helper.rb +75 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/module_helper.rb +21 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/text_helper.rb +112 -0
- data/gems/yard-0.9.25/lib/yard/templates/helpers/uml_helper.rb +47 -0
- data/gems/yard-0.9.25/lib/yard/templates/section.rb +105 -0
- data/gems/yard-0.9.25/lib/yard/templates/template.rb +418 -0
- data/gems/yard-0.9.25/lib/yard/templates/template_options.rb +92 -0
- data/gems/yard-0.9.25/lib/yard/verifier.rb +151 -0
- data/gems/yard-0.9.25/lib/yard/version.rb +6 -0
- data/gems/yard-0.9.25/lib/yard.rb +69 -0
- data/gems/yard-0.9.25/po/ja.po +31108 -0
- data/gems/yard-0.9.25/samus.json +80 -0
- data/gems/yard-0.9.25/tasks/update_error_map.rake +53 -0
- data/gems/yard-0.9.25/templates/default/class/dot/setup.rb +7 -0
- data/gems/yard-0.9.25/templates/default/class/dot/superklass.erb +3 -0
- data/gems/yard-0.9.25/templates/default/class/html/constructor_details.erb +8 -0
- data/gems/yard-0.9.25/templates/default/class/html/setup.rb +2 -0
- data/gems/yard-0.9.25/templates/default/class/html/subclasses.erb +4 -0
- data/gems/yard-0.9.25/templates/default/class/setup.rb +36 -0
- data/gems/yard-0.9.25/templates/default/class/text/setup.rb +12 -0
- data/gems/yard-0.9.25/templates/default/class/text/subclasses.erb +5 -0
- data/gems/yard-0.9.25/templates/default/constant/text/header.erb +11 -0
- data/gems/yard-0.9.25/templates/default/constant/text/setup.rb +4 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/abstract.erb +4 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/deprecated.erb +1 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/index.erb +5 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/note.erb +6 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/private.erb +4 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/returns_void.erb +1 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/text.erb +1 -0
- data/gems/yard-0.9.25/templates/default/docstring/html/todo.erb +6 -0
- data/gems/yard-0.9.25/templates/default/docstring/setup.rb +52 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/abstract.erb +2 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/deprecated.erb +2 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/index.erb +2 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/note.erb +4 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/private.erb +2 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/returns_void.erb +1 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/text.erb +1 -0
- data/gems/yard-0.9.25/templates/default/docstring/text/todo.erb +4 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/css/common.css +1 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/css/full_list.css +58 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/css/style.css +496 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/frames.erb +17 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/full_list.erb +37 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/full_list_class.erb +2 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/full_list_file.erb +7 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/full_list_method.erb +10 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/js/app.js +314 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/js/full_list.js +216 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/js/jquery.js +4 -0
- data/gems/yard-0.9.25/templates/default/fulldoc/html/setup.rb +241 -0
- data/gems/yard-0.9.25/templates/default/layout/dot/header.erb +6 -0
- data/gems/yard-0.9.25/templates/default/layout/dot/setup.rb +15 -0
- data/gems/yard-0.9.25/templates/default/layout/html/breadcrumb.erb +11 -0
- data/gems/yard-0.9.25/templates/default/layout/html/files.erb +11 -0
- data/gems/yard-0.9.25/templates/default/layout/html/footer.erb +5 -0
- data/gems/yard-0.9.25/templates/default/layout/html/headers.erb +15 -0
- data/gems/yard-0.9.25/templates/default/layout/html/index.erb +2 -0
- data/gems/yard-0.9.25/templates/default/layout/html/layout.erb +24 -0
- data/gems/yard-0.9.25/templates/default/layout/html/listing.erb +4 -0
- data/gems/yard-0.9.25/templates/default/layout/html/objects.erb +32 -0
- data/gems/yard-0.9.25/templates/default/layout/html/script_setup.erb +4 -0
- data/gems/yard-0.9.25/templates/default/layout/html/search.erb +13 -0
- data/gems/yard-0.9.25/templates/default/layout/html/setup.rb +89 -0
- data/gems/yard-0.9.25/templates/default/method/html/header.erb +17 -0
- data/gems/yard-0.9.25/templates/default/method/setup.rb +4 -0
- data/gems/yard-0.9.25/templates/default/method/text/header.erb +1 -0
- data/gems/yard-0.9.25/templates/default/method_details/html/header.erb +3 -0
- data/gems/yard-0.9.25/templates/default/method_details/html/method_signature.erb +25 -0
- data/gems/yard-0.9.25/templates/default/method_details/html/source.erb +10 -0
- data/gems/yard-0.9.25/templates/default/method_details/setup.rb +11 -0
- data/gems/yard-0.9.25/templates/default/method_details/text/header.erb +10 -0
- data/gems/yard-0.9.25/templates/default/method_details/text/method_signature.erb +12 -0
- data/gems/yard-0.9.25/templates/default/method_details/text/setup.rb +11 -0
- data/gems/yard-0.9.25/templates/default/module/dot/child.erb +1 -0
- data/gems/yard-0.9.25/templates/default/module/dot/dependencies.erb +3 -0
- data/gems/yard-0.9.25/templates/default/module/dot/header.erb +6 -0
- data/gems/yard-0.9.25/templates/default/module/dot/info.erb +14 -0
- data/gems/yard-0.9.25/templates/default/module/dot/setup.rb +15 -0
- data/gems/yard-0.9.25/templates/default/module/html/attribute_details.erb +10 -0
- data/gems/yard-0.9.25/templates/default/module/html/attribute_summary.erb +8 -0
- data/gems/yard-0.9.25/templates/default/module/html/box_info.erb +43 -0
- data/gems/yard-0.9.25/templates/default/module/html/children.erb +8 -0
- data/gems/yard-0.9.25/templates/default/module/html/constant_summary.erb +17 -0
- data/gems/yard-0.9.25/templates/default/module/html/defines.erb +3 -0
- data/gems/yard-0.9.25/templates/default/module/html/header.erb +5 -0
- data/gems/yard-0.9.25/templates/default/module/html/inherited_attributes.erb +14 -0
- data/gems/yard-0.9.25/templates/default/module/html/inherited_constants.erb +8 -0
- data/gems/yard-0.9.25/templates/default/module/html/inherited_methods.erb +19 -0
- data/gems/yard-0.9.25/templates/default/module/html/item_summary.erb +40 -0
- data/gems/yard-0.9.25/templates/default/module/html/method_details_list.erb +9 -0
- data/gems/yard-0.9.25/templates/default/module/html/method_summary.erb +14 -0
- data/gems/yard-0.9.25/templates/default/module/html/methodmissing.erb +12 -0
- data/gems/yard-0.9.25/templates/default/module/html/pre_docstring.erb +1 -0
- data/gems/yard-0.9.25/templates/default/module/setup.rb +167 -0
- data/gems/yard-0.9.25/templates/default/module/text/children.erb +10 -0
- data/gems/yard-0.9.25/templates/default/module/text/class_meths_list.erb +8 -0
- data/gems/yard-0.9.25/templates/default/module/text/extends.erb +8 -0
- data/gems/yard-0.9.25/templates/default/module/text/header.erb +7 -0
- data/gems/yard-0.9.25/templates/default/module/text/includes.erb +8 -0
- data/gems/yard-0.9.25/templates/default/module/text/instance_meths_list.erb +8 -0
- data/gems/yard-0.9.25/templates/default/module/text/setup.rb +13 -0
- data/gems/yard-0.9.25/templates/default/onefile/html/files.erb +5 -0
- data/gems/yard-0.9.25/templates/default/onefile/html/headers.erb +6 -0
- data/gems/yard-0.9.25/templates/default/onefile/html/layout.erb +17 -0
- data/gems/yard-0.9.25/templates/default/onefile/html/readme.erb +3 -0
- data/gems/yard-0.9.25/templates/default/onefile/html/setup.rb +62 -0
- data/gems/yard-0.9.25/templates/default/root/dot/child.erb +3 -0
- data/gems/yard-0.9.25/templates/default/root/dot/setup.rb +6 -0
- data/gems/yard-0.9.25/templates/default/root/html/setup.rb +2 -0
- data/gems/yard-0.9.25/templates/default/tags/html/example.erb +11 -0
- data/gems/yard-0.9.25/templates/default/tags/html/index.erb +3 -0
- data/gems/yard-0.9.25/templates/default/tags/html/option.erb +24 -0
- data/gems/yard-0.9.25/templates/default/tags/html/overload.erb +14 -0
- data/gems/yard-0.9.25/templates/default/tags/html/see.erb +8 -0
- data/gems/yard-0.9.25/templates/default/tags/html/tag.erb +20 -0
- data/gems/yard-0.9.25/templates/default/tags/setup.rb +57 -0
- data/gems/yard-0.9.25/templates/default/tags/text/example.erb +12 -0
- data/gems/yard-0.9.25/templates/default/tags/text/index.erb +1 -0
- data/gems/yard-0.9.25/templates/default/tags/text/option.erb +20 -0
- data/gems/yard-0.9.25/templates/default/tags/text/overload.erb +19 -0
- data/gems/yard-0.9.25/templates/default/tags/text/see.erb +11 -0
- data/gems/yard-0.9.25/templates/default/tags/text/tag.erb +13 -0
- data/gems/yard-0.9.25/templates/guide/class/html/setup.rb +2 -0
- data/gems/yard-0.9.25/templates/guide/docstring/html/setup.rb +2 -0
- data/gems/yard-0.9.25/templates/guide/fulldoc/html/css/style.css +108 -0
- data/gems/yard-0.9.25/templates/guide/fulldoc/html/js/app.js +33 -0
- data/gems/yard-0.9.25/templates/guide/fulldoc/html/setup.rb +74 -0
- data/gems/yard-0.9.25/templates/guide/layout/html/layout.erb +81 -0
- data/gems/yard-0.9.25/templates/guide/layout/html/setup.rb +25 -0
- data/gems/yard-0.9.25/templates/guide/method/html/header.erb +18 -0
- data/gems/yard-0.9.25/templates/guide/method/html/setup.rb +22 -0
- data/gems/yard-0.9.25/templates/guide/module/html/header.erb +7 -0
- data/gems/yard-0.9.25/templates/guide/module/html/method_list.erb +5 -0
- data/gems/yard-0.9.25/templates/guide/module/html/setup.rb +27 -0
- data/gems/yard-0.9.25/templates/guide/onefile/html/files.erb +4 -0
- data/gems/yard-0.9.25/templates/guide/onefile/html/setup.rb +6 -0
- data/gems/yard-0.9.25/templates/guide/onefile/html/toc.erb +3 -0
- data/gems/yard-0.9.25/templates/guide/tags/html/setup.rb +9 -0
- data/gems/yard-0.9.25/yard.gemspec +24 -0
- data/kinetic_sdk.gemspec +3 -7
- data/lib/kinetic_sdk/core/lib/form.rb +55 -0
- data/lib/kinetic_sdk/core/lib/kapp.rb +52 -0
- data/lib/kinetic_sdk/core/lib/space.rb +51 -0
- data/lib/kinetic_sdk/task/lib/export.rb +22 -2
- data/lib/kinetic_sdk/task/lib/trees.rb +11 -0
- data/lib/kinetic_sdk/version.rb +1 -1
- data/lib/kinetic_sdk.rb +2 -22
- metadata +551 -229
- data/gems/kontena-websocket-client-0.1.1/Gemfile +0 -4
- data/gems/kontena-websocket-client-0.1.1/LICENSE +0 -190
- data/gems/kontena-websocket-client-0.1.1/README.md +0 -138
- data/gems/kontena-websocket-client-0.1.1/Rakefile +0 -6
- data/gems/kontena-websocket-client-0.1.1/benchmark/benchmark-client.rb +0 -45
- data/gems/kontena-websocket-client-0.1.1/benchmark/benchmark-em.rb +0 -66
- data/gems/kontena-websocket-client-0.1.1/benchmark/benchmark.rb +0 -161
- data/gems/kontena-websocket-client-0.1.1/benchmark/benchmark.sh +0 -17
- data/gems/kontena-websocket-client-0.1.1/benchmark/websocket-echo-server.go +0 -207
- data/gems/kontena-websocket-client-0.1.1/examples/websocket-echo-client.rb +0 -80
- data/gems/kontena-websocket-client-0.1.1/kontena-websocket-client.gemspec +0 -24
- data/gems/kontena-websocket-client-0.1.1/lib/kontena/websocket/client/connection.rb +0 -119
- data/gems/kontena-websocket-client-0.1.1/lib/kontena/websocket/client/version.rb +0 -13
- data/gems/kontena-websocket-client-0.1.1/lib/kontena/websocket/client.rb +0 -848
- data/gems/kontena-websocket-client-0.1.1/lib/kontena/websocket/error.rb +0 -81
- data/gems/kontena-websocket-client-0.1.1/lib/kontena/websocket/logging.rb +0 -55
- data/gems/kontena-websocket-client-0.1.1/lib/kontena/websocket/openssl_patch.rb +0 -10
- data/gems/kontena-websocket-client-0.1.1/lib/kontena-websocket-client.rb +0 -15
- data/gems/mime-types-3.1/Contributing.rdoc +0 -130
- data/gems/mime-types-3.1/History.rdoc +0 -658
- data/gems/mime-types-3.1/Rakefile +0 -254
- data/gems/mime-types-3.1/lib/mime/types/columnar.rb +0 -1
- data/gems/mime-types-3.1/lib/mime/types/container.rb +0 -30
- data/gems/mime-types-3.1/lib/mime-types.rb +0 -1
- data/gems/mime-types-3.1/test/minitest_helper.rb +0 -13
- data/gems/mime-types-3.1/test/test_mime_type.rb +0 -603
- data/gems/mime-types-3.1/test/test_mime_types.rb +0 -161
- data/gems/mime-types-3.1/test/test_mime_types_cache.rb +0 -109
- data/gems/mime-types-3.1/test/test_mime_types_class.rb +0 -155
- data/gems/mime-types-3.1/test/test_mime_types_lazy.rb +0 -43
- data/gems/mime-types-3.1/test/test_mime_types_loader.rb +0 -32
- data/gems/mime-types-data-3.2016.0521/Contributing.md +0 -157
- data/gems/mime-types-data-3.2016.0521/History.md +0 -351
- data/gems/mime-types-data-3.2016.0521/Licence.md +0 -25
- data/gems/mime-types-data-3.2016.0521/README.md +0 -61
- data/gems/mime-types-data-3.2016.0521/Rakefile +0 -80
- data/gems/mime-types-data-3.2016.0521/data/mime-types.json +0 -1
- data/gems/mime-types-data-3.2016.0521/data/mime.flags.column +0 -1964
- data/gems/parallel-1.12.1/lib/parallel/processor_count.rb +0 -93
- data/gems/parallel-1.12.1/lib/parallel/version.rb +0 -3
- data/gems/parallel-1.12.1/lib/parallel.rb +0 -500
- data/gems/ruby-progressbar-1.9.0/LICENSE.txt +0 -19
- data/gems/ruby-progressbar-1.9.0/README.md +0 -38
- data/gems/ruby-progressbar-1.9.0/Rakefile +0 -2
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/base.rb +0 -183
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/calculators/length.rb +0 -99
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/calculators/running_average.rb +0 -9
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/components/bar.rb +0 -96
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/components/percentage.rb +0 -29
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/components/rate.rb +0 -43
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/components/time.rb +0 -107
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/components/title.rb +0 -13
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/components.rb +0 -5
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/errors/invalid_progress_error.rb +0 -4
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/format/formatter.rb +0 -27
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/format/molecule.rb +0 -59
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/format/string.rb +0 -36
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/format.rb +0 -3
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/output.rb +0 -68
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/outputs/non_tty.rb +0 -47
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/outputs/null.rb +0 -33
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/outputs/tty.rb +0 -32
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/progress.rb +0 -118
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/refinements/enumerator.rb +0 -25
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/refinements.rb +0 -1
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/throttle.rb +0 -25
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/time.rb +0 -30
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/timer.rb +0 -72
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar/version.rb +0 -3
- data/gems/ruby-progressbar-1.9.0/lib/ruby-progressbar.rb +0 -18
- data/gems/websocket-driver-0.6.5/CHANGELOG.md +0 -123
- data/gems/websocket-driver-0.6.5/LICENSE.md +0 -22
- data/gems/websocket-driver-0.6.5/README.md +0 -369
- data/gems/websocket-driver-0.6.5/examples/tcp_server.rb +0 -28
- data/gems/websocket-driver-0.6.5/ext/websocket-driver/Makefile +0 -264
- data/gems/websocket-driver-0.6.5/ext/websocket-driver/WebsocketMaskService.java +0 -55
- data/gems/websocket-driver-0.6.5/ext/websocket-driver/extconf.rb +0 -4
- data/gems/websocket-driver-0.6.5/ext/websocket-driver/websocket_mask.bundle +0 -0
- data/gems/websocket-driver-0.6.5/ext/websocket-driver/websocket_mask.c +0 -41
- data/gems/websocket-driver-0.6.5/ext/websocket-driver/websocket_mask.o +0 -0
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/client.rb +0 -140
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/draft75.rb +0 -102
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/draft76.rb +0 -96
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/event_emitter.rb +0 -54
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/headers.rb +0 -45
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/hybi/frame.rb +0 -20
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/hybi/message.rb +0 -31
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/hybi.rb +0 -406
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/proxy.rb +0 -68
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/server.rb +0 -80
- data/gems/websocket-driver-0.6.5/lib/websocket/driver/stream_reader.rb +0 -55
- data/gems/websocket-driver-0.6.5/lib/websocket/driver.rb +0 -199
- data/gems/websocket-driver-0.6.5/lib/websocket/http/headers.rb +0 -112
- data/gems/websocket-driver-0.6.5/lib/websocket/http/request.rb +0 -45
- data/gems/websocket-driver-0.6.5/lib/websocket/http/response.rb +0 -29
- data/gems/websocket-driver-0.6.5/lib/websocket/http.rb +0 -15
- data/gems/websocket-driver-0.6.5/lib/websocket/mask.rb +0 -14
- data/gems/websocket-driver-0.6.5/lib/websocket/websocket_mask.rb +0 -2
- data/gems/websocket-driver-0.6.5/lib/websocket_mask.bundle +0 -0
- data/gems/websocket-driver-0.6.5-java/CHANGELOG.md +0 -123
- data/gems/websocket-driver-0.6.5-java/README.md +0 -369
- data/gems/websocket-driver-0.6.5-java/examples/tcp_server.rb +0 -28
- data/gems/websocket-driver-0.6.5-java/ext/websocket-driver/WebsocketMaskService.java +0 -55
- data/gems/websocket-driver-0.6.5-java/ext/websocket-driver/extconf.rb +0 -4
- data/gems/websocket-driver-0.6.5-java/ext/websocket-driver/websocket_mask.c +0 -41
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/client.rb +0 -140
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/draft75.rb +0 -102
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/draft76.rb +0 -96
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/event_emitter.rb +0 -54
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/headers.rb +0 -45
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/hybi/frame.rb +0 -20
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/hybi/message.rb +0 -31
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/hybi.rb +0 -406
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/proxy.rb +0 -68
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/server.rb +0 -80
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver/stream_reader.rb +0 -55
- data/gems/websocket-driver-0.6.5-java/lib/websocket/driver.rb +0 -199
- data/gems/websocket-driver-0.6.5-java/lib/websocket/http/headers.rb +0 -112
- data/gems/websocket-driver-0.6.5-java/lib/websocket/http/request.rb +0 -45
- data/gems/websocket-driver-0.6.5-java/lib/websocket/http/response.rb +0 -29
- data/gems/websocket-driver-0.6.5-java/lib/websocket/http.rb +0 -15
- data/gems/websocket-driver-0.6.5-java/lib/websocket/mask.rb +0 -14
- data/gems/websocket-driver-0.6.5-java/lib/websocket/websocket_mask.rb +0 -2
- data/gems/websocket-driver-0.6.5-java/lib/websocket_mask.jar +0 -0
- data/gems/websocket-extensions-0.1.3/CHANGELOG.md +0 -15
- data/gems/websocket-extensions-0.1.3/LICENSE.md +0 -20
- data/gems/websocket-extensions-0.1.3/README.md +0 -313
- data/gems/websocket-extensions-0.1.3/lib/websocket/extensions/parser.rb +0 -111
- data/gems/websocket-extensions-0.1.3/lib/websocket/extensions.rb +0 -181
- data/lib/kinetic_sdk/discussions/lib/websockets.rb +0 -96
@@ -0,0 +1,152 @@
|
|
1
|
+
# @title Handlers Architecture
|
2
|
+
|
3
|
+
# Handlers Architecture
|
4
|
+
|
5
|
+
Handlers allow the processing of parsed source code. Handling is done after
|
6
|
+
parsing to abstract away the implementation details of lexical and semantic
|
7
|
+
analysis on source and to only deal with the logic regarding recognizing
|
8
|
+
source statements as {file:docs/CodeObjects.md code objects}.
|
9
|
+
|
10
|
+
![Handlers Architecture Class Diagram](images/handlers-class-diagram.png)
|
11
|
+
|
12
|
+
## The Pipeline
|
13
|
+
|
14
|
+
After the {file:docs/Parser.md parser component} finishes analyzing the
|
15
|
+
source, it is handed off for post-processing to the {YARD::Handlers::Processor}
|
16
|
+
class, which is responsible for traversing the set of statements given by
|
17
|
+
the parser and delegating them to matching handlers. Handlers match when the
|
18
|
+
{YARD::Handlers::Base.handles?} method returns true for a given statement.
|
19
|
+
The handler can then perform any action after being invoked by the `process`
|
20
|
+
method.
|
21
|
+
|
22
|
+
## The Processor Class
|
23
|
+
|
24
|
+
The main purpose of the processor, as mentioned above, is to traverse through
|
25
|
+
the list of statements given to it by the parser. The processor also keeps
|
26
|
+
state about what is being processed. For instance, the processor is what keeps
|
27
|
+
track of the current namespace (the module or class an object is being defined
|
28
|
+
in), scope (class or instance), file and owner. The owner refers to the object
|
29
|
+
that is most directly responsible for the source statement being processed. This
|
30
|
+
is most often the same as the namespace, except when parsing the body of a method,
|
31
|
+
where the namespace would be the class/module the method is defined in and the
|
32
|
+
owner would be the method object itself.
|
33
|
+
|
34
|
+
## Implementing a Handler
|
35
|
+
|
36
|
+
This section covers the basics of implementing a *new-style* Ruby handler. For
|
37
|
+
details on implementing a legacy handler, see the "API Differences" section below.
|
38
|
+
|
39
|
+
a Ruby handler can be implemented simply by subclassing the {YARD::Handlers::Ruby::Base}
|
40
|
+
class and declaring what node types or source to process with the {YARD::Handlers::Base.handles handles}
|
41
|
+
class method. A very simple handler that handles a module definition would be:
|
42
|
+
|
43
|
+
class MyModuleHandler < YARD::Handlers::Ruby::Base
|
44
|
+
handles :module
|
45
|
+
|
46
|
+
def process
|
47
|
+
puts "Handling a module named #{statement[0].source}"
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
For details on what nodes are, and what node types are, see the
|
52
|
+
{file:docs/Parser.md parser architecture document}.
|
53
|
+
|
54
|
+
In this case the node type being handled is the `:module` type. More than one
|
55
|
+
node type or `handles` declarations may describe a single handler, for instance,
|
56
|
+
a handler that handles class definitions should handle the `:class` and `:sclass`
|
57
|
+
node types respectively (the latter refers to classes defined as `class << Something`).
|
58
|
+
The {YARD::Handlers::Base#statement statement} attribute refers to the current
|
59
|
+
node (or statement) that is being handled by the handler.
|
60
|
+
|
61
|
+
### Handling a Method Call
|
62
|
+
|
63
|
+
In some cases, a developer might need to handle a method call. The parser can
|
64
|
+
express a method call in many AST forms, so to simplify this process, a method
|
65
|
+
call can be handled by declaring the following in a `handles` statement:
|
66
|
+
|
67
|
+
class MyHandler < YARD::Handlers::Ruby::Base
|
68
|
+
handles method_call(:describe)
|
69
|
+
|
70
|
+
def process
|
71
|
+
# Process the method call
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
In this case we handle any of the method calls to method name `describe` with
|
76
|
+
the following syntaxes:
|
77
|
+
|
78
|
+
describe(something)
|
79
|
+
describe arg1, arg2, arg3
|
80
|
+
describe(something) { perform_a_block }
|
81
|
+
describe "Something" do
|
82
|
+
a_block
|
83
|
+
end
|
84
|
+
|
85
|
+
### Creating a new Code Object
|
86
|
+
|
87
|
+
Usually (but not always) handling is performed to create new code objects to add
|
88
|
+
to the registry (for information about code objects, see {file:docs/CodeObjects.md this document}).
|
89
|
+
Code objects should simply be created and added to the existing `namespace`. This
|
90
|
+
will be enough to add them to the registry. There is also a convenience
|
91
|
+
{YARD::Handlers::Base#register register} method which quickly sets standard attributed
|
92
|
+
on the newly created object, such as the file, line, source and docstring of the
|
93
|
+
object. This method will be seen in the next example.
|
94
|
+
|
95
|
+
### Handling an Inner Block
|
96
|
+
|
97
|
+
By default, the parser gives the processor class a list of all the top level
|
98
|
+
statements and the processor parses only those top level statements. If an inner
|
99
|
+
block of a module, class, method declaration or even a block passed to a method call
|
100
|
+
needs to be handled, the {YARD::Handlers::Base#parse_block parse_block} method must be called on the list of statements
|
101
|
+
to parse. This will send the list to the processor to continue processing on that
|
102
|
+
statement list. The source tree can be selectively parsed in this manner by parsing
|
103
|
+
only the inner blocks that are relevant to documentation.
|
104
|
+
|
105
|
+
For example, the module handler parses the inner body of a module by performing
|
106
|
+
the following commands:
|
107
|
+
|
108
|
+
class YARD::Handlers::Ruby::ModuleHandler < YARD::Handlers::Ruby::Base
|
109
|
+
handles :module
|
110
|
+
|
111
|
+
def process
|
112
|
+
modname = statement[0].source
|
113
|
+
mod = register ModuleObject.new(namespace, modname)
|
114
|
+
parse_block(statement[1], :namespace => mod)
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
In this case `statement[1]` refers to a list of extra statements, the block we
|
119
|
+
wish to parse. Note here that when parsing objects like modules and classes,
|
120
|
+
we set the namespace for the duration of the block parsing by setting options
|
121
|
+
on the `parse_block` method.
|
122
|
+
|
123
|
+
### API Differences for Legacy Handler
|
124
|
+
|
125
|
+
Because the legacy handler uses the legacy parser and therefore a different kind
|
126
|
+
of AST, there are subtle differences in the handler API. Most importantly, the
|
127
|
+
`handles` method usually deals with either lexical tokens or source code as a string
|
128
|
+
or RegExp object. The statement object, similarly, is made up of lexical tokens instead
|
129
|
+
of semantically parsed nodes (this is described in the {file:docs/Parser.md parser document}).
|
130
|
+
|
131
|
+
The module example above can be rewritten as a legacy handler as follows:
|
132
|
+
|
133
|
+
class YARD::Handlers::Ruby::Legacy::ModuleHandler < YARD::Handlers::Ruby::Legacy::Base
|
134
|
+
handles TkMODULE
|
135
|
+
|
136
|
+
def process
|
137
|
+
modname = statement.tokens.to_s[/^module\s+(#{NAMESPACEMATCH})/, 1]
|
138
|
+
mod = register ModuleObject.new(namespace, modname)
|
139
|
+
parse_block(:namespace => mod)
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
A few notes on the differences:
|
144
|
+
|
145
|
+
* We inherit from `Legacy::Base` instead of the standard Ruby Base handler class.
|
146
|
+
* We exchange node type `:module` for `TkMODULE`, which represents the
|
147
|
+
first token in the statement.
|
148
|
+
* We perform direct string manipulation to get the module name.
|
149
|
+
* `parse_block` does not take a list of statements. In the old parser API,
|
150
|
+
each statement has a `block` attribute which defines the list of
|
151
|
+
statements within that statement, if any. Therefore, `parse_block` will
|
152
|
+
always parse the `statement.block` if it exists.
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# @title Architecture Overview
|
2
|
+
|
3
|
+
# Architecture Overview
|
4
|
+
|
5
|
+
YARD is separated in three major components, each of which allows YARD to be
|
6
|
+
extended for a separate purpose. The split also emphasizes YARD's design choice
|
7
|
+
to explicitly separate data gathering from HTML document generation, something
|
8
|
+
that tools like RDoc do not do. These components are:
|
9
|
+
|
10
|
+
* [Code Parsing & Processing Component](#parsing)
|
11
|
+
* [Data Storage Component](#storage)
|
12
|
+
* [Post Processing & Templating System](#templates)
|
13
|
+
|
14
|
+
This separation is a major goal of the project, and means that YARD is not *just*
|
15
|
+
a tool to generate HTML output. The expectation is that any subset of YARD's
|
16
|
+
major components may be used, extended or modified independently. YARD may be
|
17
|
+
used just as a data gathering tool (to parse and audit code), just as a data
|
18
|
+
source (a webserver containing raw unformatted data about code), or just as a
|
19
|
+
conventional HTML documentation generation tool (like RDoc).
|
20
|
+
|
21
|
+
The important classes and dependencies of these components are shown in the
|
22
|
+
following class diagram:
|
23
|
+
|
24
|
+
![Overview Class Diagram](images/overview-class-diagram.png)
|
25
|
+
|
26
|
+
<a name="parsing"></a>
|
27
|
+
|
28
|
+
## Code Parsing & Processing Component
|
29
|
+
|
30
|
+
This component is made up of four sub-components, each of which have separate
|
31
|
+
tasks during the data gathering process (*note: the tag architecture is not*
|
32
|
+
*shown in the class diagram*). These sub-components are:
|
33
|
+
|
34
|
+
* {file:docs/Parser.md}
|
35
|
+
* {file:docs/Handlers.md}
|
36
|
+
* {file:docs/CodeObjects.md}
|
37
|
+
* {file:docs/Tags.md}
|
38
|
+
|
39
|
+
The parser component reads source files and converts it into a set of statements
|
40
|
+
which the handlers then process, creating code objects which in turn create tags
|
41
|
+
(meta-data) attached to the objects. These objects are all added to the {YARD::Registry},
|
42
|
+
the data store component.
|
43
|
+
|
44
|
+
<a name="storage"></a>
|
45
|
+
|
46
|
+
## Data Storage Component
|
47
|
+
|
48
|
+
This component is currently implemented as a simple Ruby marshalled flat namespace
|
49
|
+
of object. The implementation is found in the single class {YARD::Registry}, which
|
50
|
+
is the centralized repository for all data being parsed, stored and accessed. There
|
51
|
+
are future plans to improve this storage mechanism to be backend agnostic and allow
|
52
|
+
for more robust storage.
|
53
|
+
|
54
|
+
<a name="templates"></a>
|
55
|
+
|
56
|
+
## Post Processing & Templating System
|
57
|
+
|
58
|
+
This component handles processing of objects from the registry through a templating
|
59
|
+
engine that allows output to a variety of formats. Practically speaking, this is
|
60
|
+
where templates can be implemented to change the design, output or structure of
|
61
|
+
the data. See {file:docs/Templates.md Templates Architecture} for a complete overview.
|
@@ -0,0 +1,191 @@
|
|
1
|
+
# @title Parser Architecture
|
2
|
+
|
3
|
+
# Parser Architecture
|
4
|
+
|
5
|
+
The parser component of YARD is the first component in the data processing pipeline
|
6
|
+
that runs before any handling is done on the source. The parser is meant to translate
|
7
|
+
the source into a set of statements that can be understood by the {file:docs/Handlers.md Handlers}
|
8
|
+
that run immediately afterwards.
|
9
|
+
|
10
|
+
The important classes are described in the class diagram of the entire parser
|
11
|
+
system below:
|
12
|
+
|
13
|
+
![Parser Class Diagram](images/parser-class-diagram.png)
|
14
|
+
|
15
|
+
(Note: the RubyToken classes are omitted from the diagram)
|
16
|
+
|
17
|
+
## SourceParser
|
18
|
+
|
19
|
+
The main class {YARD::Parser::SourceParser} acts as a factory class, instantiating
|
20
|
+
the correct parser class, an implementation of {YARD::Parser::Base}. The selected parser
|
21
|
+
is chosen based on either the file extension or by selecting it explicitly (as an argument
|
22
|
+
to parsing methods). YARD supports Ruby and C source files, but custom parsers can
|
23
|
+
be implemented and registered for various other languages by subclassing `Parser::Base`
|
24
|
+
and registering the parser with {YARD::Parser::SourceParser.register_parser_type}.
|
25
|
+
|
26
|
+
This factory class should always be used when parsing source files rather than
|
27
|
+
the individual parser classes since it initiates the pipeline that runs the
|
28
|
+
handlers on the parsed source. The parser used must also match the handlers,
|
29
|
+
and this is coordinated by the `SourceParser` class as well.
|
30
|
+
|
31
|
+
## Using the SourceParser Class
|
32
|
+
|
33
|
+
The `SourceParser` class API is optimized for parsing globs of files. As such,
|
34
|
+
the main method to use the class is the `parse` class method, which takes an
|
35
|
+
array of file globs or a single file glob.
|
36
|
+
|
37
|
+
YARD::Parser::SourceParser.parse('spec_*.rb')
|
38
|
+
YARD::Parser::SourceParser.parse(['spec_*.rb', '*_helper.rb'])
|
39
|
+
|
40
|
+
This is equivalent to the convenience method {YARD.parse}:
|
41
|
+
|
42
|
+
YARD.parse('lib/**/*.rb')
|
43
|
+
|
44
|
+
In some cases (ie. for testing), it may be more helpful to parse a string of input
|
45
|
+
directly. In such a case, the method {YARD::Parser::SourceParser.parse_string} should be
|
46
|
+
used:
|
47
|
+
|
48
|
+
YARD::Parser::SourceParser.parse_string("def method(a, b) end")
|
49
|
+
|
50
|
+
You can also provide the parser type explicitly as the second argument:
|
51
|
+
|
52
|
+
# Parses a string of C
|
53
|
+
YARD::Parser::SourceParser.parse_string("int main() { }", :c)
|
54
|
+
|
55
|
+
Note that these two methods are aliased as {YARD.parse} and {YARD.parse_string} for
|
56
|
+
convenience.
|
57
|
+
|
58
|
+
## Implementing and Registering a Custom Parser
|
59
|
+
|
60
|
+
To implement a custom parser, subclass {YARD::Parser::Base}. Documentation on which
|
61
|
+
abstract methods should be implemented are documented in that class. After the class
|
62
|
+
is implemented, it is registered with the {YARD::Parser::SourceParser} factory class
|
63
|
+
to be called when a file of the right extension needs to be parsed, or when a user
|
64
|
+
selects that parser type explicitly. To register your new parser class, call the
|
65
|
+
method {YARD::Parser::SourceParser.register_parser_type}:
|
66
|
+
|
67
|
+
SourceParser.register_parser_type(:my_parser, MyParser, 'my_parser_ext')
|
68
|
+
|
69
|
+
The last argument can be a single extension, a list of extensions (Array), a single Regexp, or a
|
70
|
+
list of Regexps. Do not include the '.' in the extension.
|
71
|
+
|
72
|
+
|
73
|
+
## The Two Ruby Parser Types
|
74
|
+
|
75
|
+
When parsing Ruby, the SourceParser can either instantiate the new {YARD::Parser::Ruby::RubyParser}
|
76
|
+
class or the {YARD::Parser::Ruby::Legacy::StatementList} class. The first of the
|
77
|
+
two, although faster, more robust and more efficient, is only available for
|
78
|
+
Ruby 1.9. The legacy parser parser is available in both 1.8.x and 1.9, if
|
79
|
+
compatibility is required. The choice of parser will affect which handlers
|
80
|
+
ultimately get used, since new handlers can only use the new parser and the
|
81
|
+
same requirement applies to the legacy parser & handlers.
|
82
|
+
|
83
|
+
## Switching to Legacy Parser
|
84
|
+
|
85
|
+
By default, running YARD under Ruby 1.9 will automatically select the new parser
|
86
|
+
and new handlers by extension. Although YARD supports both handler styles, plugins
|
87
|
+
may choose to only implement one of the two (though this is not recommended). If
|
88
|
+
only the legacy handlers are implemented, the `SourceParser` class should force
|
89
|
+
the use of the legacy parser by setting the `parser_type` attribute as such:
|
90
|
+
|
91
|
+
YARD::Parser::SourceParser.parser_type = :ruby18
|
92
|
+
|
93
|
+
The default value is `:ruby`. Note that this cannot be forced the other way around,
|
94
|
+
a parser type of `:ruby` cannot be set under Ruby 1.8.x as the new parser is not
|
95
|
+
supported under 1.8.
|
96
|
+
|
97
|
+
## RubyParser (the New Parser)
|
98
|
+
|
99
|
+
The new Ruby parser uses the Ripper library that is packaged as part of stdlib
|
100
|
+
in Ruby 1.9. Because of this, it can generate an AST from a string of Ruby input
|
101
|
+
that is similar to the style of other sexp libraries (such as ParseTree). Each
|
102
|
+
node generated in the tree is of the base type {YARD::Parser::Ruby::AstNode},
|
103
|
+
which has some subclasses for common node types.
|
104
|
+
|
105
|
+
### AstNode Basics
|
106
|
+
|
107
|
+
The `AstNode` class behaves like a standard Array class in which all of its data
|
108
|
+
make up the list of elements in the array. Unlike other sexp style libraries, however,
|
109
|
+
the node type is not the first element of the list. Instead, the node type is defined
|
110
|
+
by the `#type` method. The following examples show some of the basic uses of `AstNode`:
|
111
|
+
|
112
|
+
# The sexp defines the statement `hello if 1`
|
113
|
+
node = s(:if_mod, s(:int, "1"), s(:var_ref, s(:ident, "hello")))
|
114
|
+
node.type #=> :if_mod
|
115
|
+
node[0] #=> s(:int, "1")
|
116
|
+
node[0][0] #=> "1"
|
117
|
+
|
118
|
+
(Note the `s()` syntax is shorthand for `AstNode.new(...)`. `s()` with no type
|
119
|
+
is shorthand for a node of type `:list`)
|
120
|
+
|
121
|
+
As shown, not all of the elements are AstNodes in themselves, some are String
|
122
|
+
objects containing values. A list of only the AstNodes within a node can be
|
123
|
+
accessed via the {YARD::Parser::Ruby::AstNode#children #children} method. Using
|
124
|
+
the sexp declared above, we can do:
|
125
|
+
|
126
|
+
node.children #=> [s(:int, "1"), s(:var_ref, s(:ident, "hello"))]
|
127
|
+
|
128
|
+
### AstNode#source and #line
|
129
|
+
|
130
|
+
Every node defines the `#source` method which returns the source code that the
|
131
|
+
node represents. One of the most common things to do with a node is to grab its
|
132
|
+
source. The following example shows how this can be done:
|
133
|
+
|
134
|
+
source = "if 1 == 1 then\n raise Exception\n end"
|
135
|
+
ast = YARD::Parser::Ruby::RubyParser.parse(source).root
|
136
|
+
ast[0].condition.source #=> "1 == 1"
|
137
|
+
ast[0].then_block.source #=> "raise Exception"
|
138
|
+
|
139
|
+
Note that this only works on source parsed from the RubyParser, not sexps
|
140
|
+
declared using the `s()` syntax. This is because no source code is generated
|
141
|
+
or stored by nodes. Instead, only the character ranges are stored, which are
|
142
|
+
then looked up in the original full source string object. For example:
|
143
|
+
|
144
|
+
# Following the code snippet above
|
145
|
+
ast[0].then_block.source_range #=> 17..31
|
146
|
+
|
147
|
+
We can also get the line and line ranges in a similar fashion:
|
148
|
+
|
149
|
+
ast[0].type #=> :if
|
150
|
+
ast[0].line #=> 1
|
151
|
+
ast[0].line_range #=> 1..3 (note the newlines in the source)
|
152
|
+
|
153
|
+
### AstNode#jump
|
154
|
+
|
155
|
+
Often the AST will be such that the node we care about might be buried arbitrarily
|
156
|
+
deep in a node's hierarchy. The {YARD::Parser::Ruby::AstNode#jump} method exists
|
157
|
+
to quickly get at a node of a specific type in such a situation:
|
158
|
+
|
159
|
+
# Get the first identifier in the statement
|
160
|
+
ast = s(s(:int, "1"), s(s(:var_ref, s(:ident, "hello"))))
|
161
|
+
ast.jump(:ident)[0] #=> "hello"
|
162
|
+
|
163
|
+
Multiple types can be searched for at once. If none are found, the original root
|
164
|
+
node is returned so that it may be chained.
|
165
|
+
|
166
|
+
## The Legacy Parser
|
167
|
+
|
168
|
+
The goal of the legacy parser is much the same as the new parser, but it is far
|
169
|
+
more simplistic. Instead of a full-blown AST, the legacy parser simply groups
|
170
|
+
together lists of "statements" called a {YARD::Parser::Ruby::Legacy::StatementList}.
|
171
|
+
These statement lists are made up of {YARD::Parser::Ruby::Legacy::Statement} objects.
|
172
|
+
A statement is any method call condition, loop, or declaration. Each statement
|
173
|
+
may or may not have a block. In the case of a condition or loop, the block is
|
174
|
+
the inner list of statements; in the case of a method call, the block is a do
|
175
|
+
block (if provided). The statements themselves are made up of tokens, so instead
|
176
|
+
of being semantic in nature like the new parser, statements are tied directly
|
177
|
+
to the lexical tokens that make them up. To convert a statement into source, you
|
178
|
+
simply join all the tokens together (this is done through the use of `#to_s`).
|
179
|
+
|
180
|
+
Note that because there is little semantic parsing, the legacy parser is less
|
181
|
+
able to deal with certain Ruby syntaxes. Specifically, the `:if_mod` syntax
|
182
|
+
seen above ("hello if 1") would be considered two statements with the new parser,
|
183
|
+
but using the legacy parser it is only one statement:
|
184
|
+
|
185
|
+
stmts = ARD::Parser::Ruby::Legacy::StatementList.new("hello if 1")
|
186
|
+
stmts[0].block #=> nil
|
187
|
+
stmts[0].tokens.to_s #=> "hello if 1"
|
188
|
+
|
189
|
+
In addition, this means that most handling still needs to be done via string
|
190
|
+
manipulation and regular expression matching, making it considerably more
|
191
|
+
difficult to use in edge case scenarios.
|