yard 0.7.5 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of yard might be problematic. Click here for more details.
- data/.yardopts +10 -2
- data/ChangeLog +1263 -38
- data/LEGAL +5 -5
- data/LICENSE +1 -1
- data/README.md +91 -82
- data/Rakefile +6 -6
- data/benchmarks/builtins_vs_eval.rb +1 -1
- data/benchmarks/erb_vs_erubis.rb +4 -4
- data/benchmarks/generation.rb +5 -5
- data/benchmarks/parsing.rb +2 -2
- data/benchmarks/registry_store_types.rb +48 -0
- data/bin/yard +9 -1
- data/bin/yardoc +9 -1
- data/bin/yri +10 -2
- data/docs/CodeObjects.md +10 -10
- data/docs/GettingStarted.md +85 -83
- data/docs/Handlers.md +21 -21
- data/docs/Overview.md +7 -7
- data/docs/Parser.md +30 -30
- data/docs/Tags.md +250 -554
- data/docs/TagsArch.md +123 -0
- data/docs/Templates.md +58 -80
- data/docs/WhatsNew.md +378 -133
- data/docs/templates/default/fulldoc/html/full_list_tag.erb +7 -0
- data/docs/templates/default/fulldoc/html/setup.rb +6 -0
- data/docs/templates/default/layout/html/setup.rb +8 -0
- data/docs/templates/default/layout/html/tag_list.erb +11 -0
- data/docs/templates/default/yard_tags/html/list.erb +18 -0
- data/docs/templates/default/yard_tags/html/setup.rb +27 -0
- data/docs/templates/plugin.rb +65 -0
- data/lib/yard.rb +1 -10
- data/lib/yard/autoload.rb +75 -27
- data/lib/yard/cli/command.rb +5 -2
- data/lib/yard/cli/command_parser.rb +3 -2
- data/lib/yard/cli/diff.rb +1 -1
- data/lib/yard/cli/i18n.rb +69 -0
- data/lib/yard/cli/list.rb +1 -1
- data/lib/yard/cli/server.rb +30 -7
- data/lib/yard/cli/stats.rb +5 -6
- data/lib/yard/cli/yardoc.rb +95 -45
- data/lib/yard/cli/yri.rb +24 -3
- data/lib/yard/code_objects/base.rb +35 -4
- data/lib/yard/code_objects/extra_file_object.rb +1 -1
- data/lib/yard/code_objects/macro_object.rb +56 -99
- data/lib/yard/code_objects/method_object.rb +44 -6
- data/lib/yard/config.rb +18 -8
- data/lib/yard/core_ext/symbol_hash.rb +1 -1
- data/lib/yard/docstring.rb +45 -85
- data/lib/yard/docstring_parser.rb +269 -0
- data/lib/yard/handlers/base.rb +129 -118
- data/lib/yard/handlers/c/alias_handler.rb +15 -0
- data/lib/yard/handlers/c/attribute_handler.rb +13 -0
- data/lib/yard/handlers/c/base.rb +110 -0
- data/lib/yard/handlers/c/class_handler.rb +26 -0
- data/lib/yard/handlers/c/constant_handler.rb +12 -0
- data/lib/yard/handlers/c/handler_methods.rb +165 -0
- data/lib/yard/handlers/c/init_handler.rb +16 -0
- data/lib/yard/handlers/c/method_handler.rb +35 -0
- data/lib/yard/handlers/c/mixin_handler.rb +13 -0
- data/lib/yard/handlers/c/module_handler.rb +16 -0
- data/lib/yard/handlers/c/override_comment_handler.rb +22 -0
- data/lib/yard/handlers/c/path_handler.rb +10 -0
- data/lib/yard/handlers/c/struct_handler.rb +12 -0
- data/lib/yard/handlers/c/symbol_handler.rb +7 -0
- data/lib/yard/handlers/processor.rb +41 -30
- data/lib/yard/handlers/ruby/alias_handler.rb +0 -2
- data/lib/yard/handlers/ruby/attribute_handler.rb +16 -17
- data/lib/yard/handlers/ruby/base.rb +10 -6
- data/lib/yard/handlers/ruby/comment_handler.rb +9 -0
- data/lib/yard/handlers/ruby/dsl_handler.rb +14 -0
- data/lib/yard/handlers/ruby/dsl_handler_methods.rb +71 -0
- data/lib/yard/handlers/ruby/legacy/alias_handler.rb +0 -3
- data/lib/yard/handlers/ruby/legacy/attribute_handler.rb +16 -17
- data/lib/yard/handlers/ruby/legacy/base.rb +28 -6
- data/lib/yard/handlers/ruby/legacy/comment_handler.rb +9 -0
- data/lib/yard/handlers/ruby/legacy/dsl_handler.rb +16 -0
- data/lib/yard/handlers/ruby/legacy/method_handler.rb +0 -2
- data/lib/yard/handlers/ruby/legacy/mixin_handler.rb +1 -1
- data/lib/yard/handlers/ruby/legacy/module_function_handler.rb +18 -0
- data/lib/yard/handlers/ruby/method_handler.rb +10 -15
- data/lib/yard/handlers/ruby/mixin_handler.rb +1 -1
- data/lib/yard/handlers/ruby/module_function_handler.rb +26 -0
- data/lib/yard/handlers/ruby/struct_handler_methods.rb +3 -2
- data/lib/yard/i18n/pot_generator.rb +281 -0
- data/lib/yard/i18n/text.rb +72 -0
- data/lib/yard/logging.rb +3 -7
- data/lib/yard/options.rb +216 -0
- data/lib/yard/parser/c/c_parser.rb +225 -0
- data/lib/yard/parser/c/comment_parser.rb +131 -0
- data/lib/yard/parser/c/statement.rb +63 -0
- data/lib/yard/parser/ruby/ast_node.rb +91 -1
- data/lib/yard/parser/ruby/legacy/ruby_parser.rb +1 -0
- data/lib/yard/parser/ruby/legacy/statement.rb +7 -2
- data/lib/yard/parser/ruby/legacy/statement_list.rb +13 -22
- data/lib/yard/parser/ruby/ruby_parser.rb +87 -26
- data/lib/yard/parser/source_parser.rb +89 -88
- data/lib/yard/rake/yardoc_task.rb +1 -1
- data/lib/yard/registry.rb +21 -10
- data/lib/yard/registry_store.rb +48 -0
- data/lib/yard/serializers/file_system_serializer.rb +18 -20
- data/lib/yard/serializers/yardoc_serializer.rb +1 -0
- data/lib/yard/server/adapter.rb +2 -2
- data/lib/yard/server/commands/base.rb +1 -1
- data/lib/yard/server/commands/display_object_command.rb +13 -6
- data/lib/yard/server/commands/frames_command.rb +4 -21
- data/lib/yard/server/commands/library_command.rb +57 -11
- data/lib/yard/server/commands/list_command.rb +10 -34
- data/lib/yard/server/commands/search_command.rb +8 -2
- data/lib/yard/server/doc_server_helper.rb +34 -0
- data/lib/yard/server/rack_adapter.rb +5 -1
- data/lib/yard/server/router.rb +4 -10
- data/lib/yard/server/static_caching.rb +2 -2
- data/lib/yard/server/templates/default/fulldoc/html/css/custom.css +2 -2
- data/lib/yard/server/templates/default/fulldoc/html/js/live.js +0 -15
- data/lib/yard/server/templates/default/layout/html/breadcrumb.erb +3 -3
- data/lib/yard/server/templates/default/layout/html/script_setup.erb +8 -0
- data/lib/yard/server/templates/doc_server/processing/html/processing.erb +1 -1
- data/lib/yard/server/templates/doc_server/search/html/setup.rb +1 -1
- data/lib/yard/tags/default_factory.rb +31 -4
- data/lib/yard/tags/directives.rb +593 -0
- data/lib/yard/tags/library.rb +437 -35
- data/lib/yard/templates/engine.rb +17 -12
- data/lib/yard/templates/helpers/base_helper.rb +8 -2
- data/lib/yard/templates/helpers/html_helper.rb +57 -14
- data/lib/yard/templates/helpers/markup/rdoc_markup.rb +1 -1
- data/lib/yard/templates/helpers/markup_helper.rb +9 -9
- data/lib/yard/templates/helpers/text_helper.rb +2 -2
- data/lib/yard/templates/template.rb +42 -13
- data/lib/yard/templates/template_options.rb +81 -0
- data/spec/cli/command_parser_spec.rb +4 -4
- data/spec/cli/command_spec.rb +3 -3
- data/spec/cli/config_spec.rb +13 -13
- data/spec/cli/diff_spec.rb +13 -10
- data/spec/cli/gems_spec.rb +12 -12
- data/spec/cli/help_spec.rb +2 -2
- data/spec/cli/i18n_spec.rb +111 -0
- data/spec/cli/server_spec.rb +66 -18
- data/spec/cli/stats_spec.rb +15 -15
- data/spec/cli/yardoc_spec.rb +124 -97
- data/spec/cli/yri_spec.rb +14 -12
- data/spec/code_objects/base_spec.rb +104 -46
- data/spec/code_objects/class_object_spec.rb +33 -33
- data/spec/code_objects/code_object_list_spec.rb +5 -5
- data/spec/code_objects/constants_spec.rb +4 -3
- data/spec/code_objects/extra_file_object_spec.rb +19 -19
- data/spec/code_objects/macro_object_spec.rb +31 -37
- data/spec/code_objects/method_object_spec.rb +46 -23
- data/spec/code_objects/module_object_spec.rb +16 -16
- data/spec/code_objects/namespace_object_spec.rb +6 -6
- data/spec/code_objects/proxy_spec.rb +19 -19
- data/spec/config_spec.rb +33 -24
- data/spec/core_ext/array_spec.rb +1 -1
- data/spec/core_ext/file_spec.rb +8 -8
- data/spec/core_ext/hash_spec.rb +1 -1
- data/spec/core_ext/insertion_spec.rb +3 -3
- data/spec/core_ext/module_spec.rb +1 -1
- data/spec/core_ext/string_spec.rb +6 -6
- data/spec/core_ext/symbol_hash_spec.rb +11 -11
- data/spec/docstring_parser_spec.rb +207 -0
- data/spec/docstring_spec.rb +33 -146
- data/spec/handlers/alias_handler_spec.rb +14 -14
- data/spec/handlers/attribute_handler_spec.rb +20 -20
- data/spec/handlers/base_spec.rb +16 -16
- data/spec/handlers/c/alias_handler_spec.rb +33 -0
- data/spec/handlers/c/attribute_handler_spec.rb +40 -0
- data/spec/handlers/c/class_handler_spec.rb +64 -0
- data/spec/handlers/c/constant_handler_spec.rb +68 -0
- data/spec/handlers/c/init_handler_spec.rb +36 -0
- data/spec/handlers/c/method_handler_spec.rb +228 -0
- data/spec/handlers/c/mixin_handler_spec.rb +27 -0
- data/spec/handlers/c/module_handler_spec.rb +38 -0
- data/spec/handlers/c/override_comment_handler_spec.rb +43 -0
- data/spec/handlers/c/path_handler_spec.rb +35 -0
- data/spec/handlers/c/spec_helper.rb +11 -0
- data/spec/handlers/c/struct_handler_spec.rb +15 -0
- data/spec/handlers/class_condition_handler_spec.rb +10 -10
- data/spec/handlers/class_handler_spec.rb +38 -38
- data/spec/handlers/class_variable_handler_spec.rb +1 -1
- data/spec/handlers/constant_handler_spec.rb +7 -7
- data/spec/handlers/{macro_handler_spec.rb → dsl_handler_spec.rb} +72 -53
- data/spec/handlers/examples/alias_handler_001.rb.txt +5 -5
- data/spec/handlers/examples/class_condition_handler_001.rb.txt +9 -9
- data/spec/handlers/examples/class_handler_001.rb.txt +1 -1
- data/spec/handlers/examples/dsl_handler_001.rb.txt +110 -0
- data/spec/handlers/examples/exception_handler_001.rb.txt +14 -14
- data/spec/handlers/examples/method_condition_handler_001.rb.txt +2 -2
- data/spec/handlers/examples/method_handler_001.rb.txt +16 -16
- data/spec/handlers/examples/mixin_handler_001.rb.txt +8 -4
- data/spec/handlers/examples/private_constant_handler_001.rb.txt +1 -1
- data/spec/handlers/examples/visibility_handler_001.rb.txt +3 -3
- data/spec/handlers/examples/yield_handler_001.rb.txt +13 -14
- data/spec/handlers/exception_handler_spec.rb +9 -9
- data/spec/handlers/extend_handler_spec.rb +2 -2
- data/spec/handlers/legacy_base_spec.rb +34 -34
- data/spec/handlers/method_condition_handler_spec.rb +2 -2
- data/spec/handlers/method_handler_spec.rb +33 -33
- data/spec/handlers/mixin_handler_spec.rb +13 -9
- data/spec/handlers/module_function_handler_spec.rb +82 -0
- data/spec/handlers/module_handler_spec.rb +6 -6
- data/spec/handlers/private_constant_handler_spec.rb +3 -3
- data/spec/handlers/processor_spec.rb +5 -5
- data/spec/handlers/ruby/base_spec.rb +10 -6
- data/spec/handlers/ruby/legacy/base_spec.rb +11 -7
- data/spec/handlers/spec_helper.rb +2 -3
- data/spec/handlers/visibility_handler_spec.rb +6 -6
- data/spec/handlers/yield_handler_spec.rb +8 -8
- data/spec/i18n/pot_generator_spec.rb +244 -0
- data/spec/i18n/text_spec.rb +69 -0
- data/spec/options_spec.rb +160 -0
- data/spec/parser/base_spec.rb +3 -3
- data/spec/parser/c_parser_spec.rb +31 -257
- data/spec/parser/examples/array.c.txt +187 -187
- data/spec/parser/examples/extrafile.c.txt +1 -1
- data/spec/parser/examples/override.c.txt +1 -1
- data/spec/parser/ruby/ast_node_spec.rb +1 -1
- data/spec/parser/ruby/legacy/statement_list_spec.rb +24 -24
- data/spec/parser/ruby/legacy/token_list_spec.rb +7 -7
- data/spec/parser/ruby/ruby_parser_spec.rb +56 -34
- data/spec/parser/source_parser_spec.rb +125 -65
- data/spec/parser/tag_parsing_spec.rb +4 -4
- data/spec/rake/yardoc_task_spec.rb +10 -8
- data/spec/registry_spec.rb +65 -36
- data/spec/registry_store_spec.rb +90 -40
- data/spec/serializers/file_system_serializer_spec.rb +12 -12
- data/spec/serializers/yardoc_serializer_spec.rb +2 -2
- data/spec/server/adapter_spec.rb +3 -3
- data/spec/server/commands/base_spec.rb +8 -8
- data/spec/server/commands/library_command_spec.rb +3 -3
- data/spec/server/commands/static_file_command_spec.rb +7 -7
- data/spec/server/doc_server_helper_spec.rb +1 -1
- data/spec/server/doc_server_serializer_spec.rb +6 -6
- data/spec/server/rack_adapter_spec.rb +3 -3
- data/spec/server/router_spec.rb +19 -19
- data/spec/server/static_caching_spec.rb +4 -4
- data/spec/spec_helper.rb +7 -7
- data/spec/tags/default_factory_spec.rb +24 -16
- data/spec/tags/directives_spec.rb +422 -0
- data/spec/tags/library_spec.rb +15 -4
- data/spec/tags/overload_tag_spec.rb +6 -6
- data/spec/tags/ref_tag_list_spec.rb +8 -8
- data/spec/templates/class_spec.rb +7 -7
- data/spec/templates/constant_spec.rb +7 -7
- data/spec/templates/engine_spec.rb +28 -36
- data/spec/templates/examples/class001.html +108 -108
- data/spec/templates/examples/class002.html +17 -17
- data/spec/templates/examples/constant001.txt +1 -1
- data/spec/templates/examples/method001.html +45 -45
- data/spec/templates/examples/method002.html +25 -25
- data/spec/templates/examples/method003.html +60 -60
- data/spec/templates/examples/method004.html +7 -7
- data/spec/templates/examples/method005.html +28 -28
- data/spec/templates/examples/module001.html +321 -321
- data/spec/templates/examples/module001.txt +1 -1
- data/spec/templates/examples/module002.html +130 -130
- data/spec/templates/examples/module003.html +74 -74
- data/spec/templates/examples/module004.html +388 -0
- data/spec/templates/helpers/base_helper_spec.rb +32 -32
- data/spec/templates/helpers/html_helper_spec.rb +87 -68
- data/spec/templates/helpers/html_syntax_highlight_helper_spec.rb +9 -9
- data/spec/templates/helpers/markup/rdoc_markup_spec.rb +16 -16
- data/spec/templates/helpers/markup_helper_spec.rb +31 -28
- data/spec/templates/helpers/method_helper_spec.rb +7 -7
- data/spec/templates/helpers/shared_signature_examples.rb +9 -7
- data/spec/templates/helpers/text_helper_spec.rb +3 -3
- data/spec/templates/method_spec.rb +13 -13
- data/spec/templates/module_spec.rb +70 -24
- data/spec/templates/onefile_spec.rb +32 -15
- data/spec/templates/section_spec.rb +23 -23
- data/spec/templates/spec_helper.rb +31 -1
- data/spec/templates/tag_spec.rb +5 -5
- data/spec/templates/template_spec.rb +54 -46
- data/spec/verifier_spec.rb +5 -5
- data/templates/default/class/setup.rb +2 -2
- data/templates/default/docstring/html/abstract.erb +1 -1
- data/templates/default/docstring/html/note.erb +1 -1
- data/templates/default/docstring/html/private.erb +1 -1
- data/templates/default/docstring/html/todo.erb +1 -1
- data/templates/default/docstring/setup.rb +2 -2
- data/templates/default/fulldoc/html/css/full_list.css +4 -2
- data/templates/default/fulldoc/html/css/style.css +50 -44
- data/templates/default/fulldoc/html/frames.erb +21 -6
- data/templates/default/fulldoc/html/full_list.erb +5 -3
- data/templates/default/fulldoc/html/{full_list_files.erb → full_list_file.erb} +0 -0
- data/templates/default/fulldoc/html/js/app.js +29 -26
- data/templates/default/fulldoc/html/js/full_list.js +9 -9
- data/templates/default/fulldoc/html/js/jquery.js +4 -16
- data/templates/default/fulldoc/html/setup.rb +42 -38
- data/templates/default/layout/dot/header.erb +1 -1
- data/templates/default/layout/html/breadcrumb.erb +6 -6
- data/templates/default/layout/html/files.erb +1 -1
- data/templates/default/layout/html/footer.erb +1 -1
- data/templates/default/layout/html/headers.erb +3 -6
- data/templates/default/layout/html/index.erb +1 -1
- data/templates/default/layout/html/layout.erb +3 -7
- data/templates/default/layout/html/objects.erb +1 -1
- data/templates/default/layout/html/script_setup.erb +5 -0
- data/templates/default/layout/html/search.erb +4 -1
- data/templates/default/layout/html/setup.rb +8 -8
- data/templates/default/method_details/html/method_signature.erb +10 -3
- data/templates/default/method_details/setup.rb +1 -0
- data/templates/default/module/dot/info.erb +1 -1
- data/templates/default/module/dot/setup.rb +2 -2
- data/templates/default/module/html/attribute_details.erb +1 -1
- data/templates/default/module/html/children.erb +1 -1
- data/templates/default/module/html/defines.erb +1 -1
- data/templates/default/module/html/inherited_methods.erb +5 -4
- data/templates/default/module/html/item_summary.erb +15 -5
- data/templates/default/module/html/method_details_list.erb +2 -2
- data/templates/default/module/setup.rb +25 -12
- data/templates/default/module/text/setup.rb +1 -1
- data/templates/default/onefile/html/layout.erb +1 -1
- data/templates/default/onefile/html/setup.rb +2 -2
- data/templates/default/tags/html/example.erb +4 -2
- data/templates/default/tags/html/option.erb +1 -1
- data/templates/default/tags/html/overload.erb +1 -1
- data/templates/default/tags/html/see.erb +1 -1
- data/templates/default/tags/html/tag.erb +1 -1
- data/templates/default/tags/setup.rb +4 -3
- data/templates/guide/fulldoc/html/css/style.css +8 -8
- data/templates/guide/fulldoc/html/js/app.js +6 -6
- data/templates/guide/fulldoc/html/setup.rb +12 -12
- data/templates/guide/layout/html/layout.erb +11 -11
- data/templates/guide/layout/html/setup.rb +9 -9
- data/templates/guide/method/html/header.erb +2 -2
- data/templates/guide/method/html/setup.rb +1 -1
- metadata +68 -18
- data/bin/yard-graph +0 -4
- data/bin/yard-server +0 -4
- data/docs/Glossary.md +0 -12
- data/lib/yard/handlers/ruby/legacy/macro_handler.rb +0 -39
- data/lib/yard/handlers/ruby/macro_handler.rb +0 -40
- data/lib/yard/handlers/ruby/macro_handler_methods.rb +0 -131
- data/lib/yard/parser/c_parser.rb +0 -497
- data/lib/yard/server/templates/default/layout/html/headers.erb +0 -16
- data/lib/yard/server/templates/doc_server/frames/html/frames.erb +0 -13
- data/lib/yard/server/templates/doc_server/frames/html/setup.rb +0 -3
- data/lib/yard/server/templates/doc_server/full_list/html/full_list.erb +0 -34
- data/lib/yard/server/templates/doc_server/full_list/html/setup.rb +0 -20
- data/spec/handlers/examples/macro_handler_001.rb.txt +0 -83
@@ -1,11 +1,11 @@
|
|
1
1
|
def init
|
2
2
|
@modules = object.children.select {|o| o.type == :module }
|
3
|
-
@classes = object.children.select {|o| o.type == :class }
|
3
|
+
@classes = object.children.select {|o| o.type == :class }
|
4
4
|
sections :child, [:info], :classes, [T('class')], :header, [T('module')], :dependencies
|
5
5
|
end
|
6
6
|
|
7
7
|
def dependencies
|
8
|
-
return unless options
|
8
|
+
return unless options.dependencies
|
9
9
|
erb(:dependencies)
|
10
10
|
end
|
11
11
|
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<% rw = meth.attr_info %>
|
6
6
|
<span id="<%= anchor_for(rw[:write]) %>"></span>
|
7
7
|
<span id="<%= anchor_for(rw[:read]) %>"></span>
|
8
|
-
<%= yieldall :object => meth, :index => i %>
|
8
|
+
<%= yieldall :object => meth, :owner => object, :index => i %>
|
9
9
|
<% end %>
|
10
10
|
</div>
|
11
11
|
<% end %>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<h2>Defined Under Namespace</h2>
|
2
2
|
<p class="children">
|
3
|
-
<% @inner.each do |name, list| %>
|
3
|
+
<% @inner.each do |name, list| %>
|
4
4
|
<% if list.size > 0 %>
|
5
5
|
<strong class="<%= name %>"><%= name.to_s.capitalize %>:</strong> <%= list.map {|child| linkify(child, child.name) }.join(", ") %>
|
6
6
|
<% end %>
|
@@ -1,6 +1,7 @@
|
|
1
1
|
<% found_method = false %>
|
2
2
|
<% object.inheritance_tree(true)[1..-1].each do |superclass| %>
|
3
3
|
<% next if superclass.is_a?(YARD::CodeObjects::Proxy) %>
|
4
|
+
<% next if options.embed_mixins.size > 0 && options.embed_mixins_match?(superclass) != false %>
|
4
5
|
<% meths = prune_method_listing(superclass.meths(:included => false, :inherited => false)) %>
|
5
6
|
<% meths.reject! {|m| object.child(:scope => m.scope, :name => m.name) != nil } %>
|
6
7
|
<% meths.reject! {|m| m.is_alias? || m.is_attribute? } %>
|
@@ -8,11 +9,11 @@
|
|
8
9
|
<% if method_listing.size == 0 && !found_method %><h2>Method Summary</h2><% end %>
|
9
10
|
<% found_method = true %>
|
10
11
|
<h3 class="inherited">Methods <%= superclass.type == :class ? 'inherited' : 'included' %> from <%= linkify superclass %></h3>
|
11
|
-
<p class="inherited"><%=
|
12
|
-
meths.sort_by {|o| o.name.to_s }.map do |m|
|
12
|
+
<p class="inherited"><%=
|
13
|
+
meths.sort_by {|o| o.name.to_s }.map do |m|
|
13
14
|
name = m.name(true)
|
14
15
|
name = name.gsub(/^#/,'') if superclass.type == :module && object.class_mixins.include?(superclass)
|
15
|
-
linkify(m, name)
|
16
|
-
end.join(", ")
|
16
|
+
linkify(m, name)
|
17
|
+
end.join(", ")
|
17
18
|
%></p>
|
18
19
|
<% end %>
|
@@ -10,17 +10,27 @@
|
|
10
10
|
(also: <%= @item.aliases.map {|o| h(o.name(true)) }.join(", ") %>)
|
11
11
|
<% end %>
|
12
12
|
</span>
|
13
|
+
<% if object != @item.namespace %>
|
14
|
+
<span class="note title not_defined_here">
|
15
|
+
<%= @item.namespace.type == :class ? 'inherited' : (@item.scope == :class ? 'extended' : 'included') %>
|
16
|
+
from <%= linkify @item, object.relative_path(@item.namespace) %>
|
17
|
+
</span>
|
18
|
+
<% end %>
|
13
19
|
<% if @item.constructor? %>
|
14
20
|
<span class="note title constructor">constructor</span>
|
15
21
|
<% end %>
|
16
22
|
<% if rw = @item.attr_info %>
|
17
|
-
<% if rw[:read] &&
|
18
|
-
|
23
|
+
<% if !run_verifier([rw[:read]].compact).empty? && run_verifier([rw[:write]].compact).empty? %>
|
24
|
+
<span class="note title readonly">readonly</span>
|
25
|
+
<% end %>
|
26
|
+
<% if !run_verifier([rw[:write]].compact).empty? && run_verifier([rw[:read]].compact).empty? %>
|
27
|
+
<span class="note title writeonly">writeonly</span>
|
28
|
+
<% end %>
|
19
29
|
<% end %>
|
20
30
|
<% if @item.visibility != :public %><span class="note title <%= @item.visibility %>"><%= @item.visibility %></span><% end %>
|
21
|
-
<% if @item.has_tag?(:abstract) %><span class="abstract note title">
|
22
|
-
<% if @item.has_tag?(:deprecated) %><span class="deprecated note title">
|
23
|
-
<% if @item.has_tag?(:api) && @item.tag(:api).text == 'private' %><span class="private note title">
|
31
|
+
<% if @item.has_tag?(:abstract) %><span class="abstract note title">abstract</span><% end %>
|
32
|
+
<% if @item.has_tag?(:deprecated) %><span class="deprecated note title">deprecated</span><% end %>
|
33
|
+
<% if @item.has_tag?(:api) && @item.tag(:api).text == 'private' %><span class="private note title">private</span><% end %>
|
24
34
|
|
25
35
|
<% if @item.has_tag?(:deprecated) %>
|
26
36
|
<span class="summary_desc"><strong>Deprecated.</strong> <%= htmlify_line @item.tag(:deprecated).text %></span>
|
@@ -1,9 +1,9 @@
|
|
1
1
|
<% scopes(method_listing(false)) do |list, scope| %>
|
2
2
|
<div id="<%= scope %>_method_details" class="method_details_list">
|
3
3
|
<h2><%= scope.to_s.capitalize %> Method Details</h2>
|
4
|
-
|
4
|
+
|
5
5
|
<% list.each_with_index do |meth, i| %>
|
6
|
-
<%= yieldall :object => meth, :index => i %>
|
6
|
+
<%= yieldall :object => meth, :owner => object, :index => i %>
|
7
7
|
<% end %>
|
8
8
|
</div>
|
9
9
|
<% end %>
|
@@ -1,12 +1,12 @@
|
|
1
1
|
include Helpers::ModuleHelper
|
2
2
|
|
3
3
|
def init
|
4
|
-
sections :header, :box_info, :pre_docstring, T('docstring'), :children,
|
5
|
-
:constant_summary, [T('docstring')], :inherited_constants,
|
4
|
+
sections :header, :box_info, :pre_docstring, T('docstring'), :children,
|
5
|
+
:constant_summary, [T('docstring')], :inherited_constants,
|
6
6
|
:attribute_summary, [:item_summary], :inherited_attributes,
|
7
7
|
:method_summary, [:item_summary], :inherited_methods,
|
8
8
|
:methodmissing, [T('method_details')],
|
9
|
-
:attribute_details, [T('method_details')],
|
9
|
+
:attribute_details, [T('method_details')],
|
10
10
|
:method_details_list, [T('method_details')]
|
11
11
|
end
|
12
12
|
|
@@ -35,7 +35,10 @@ end
|
|
35
35
|
def method_listing(include_specials = true)
|
36
36
|
return @smeths ||= method_listing.reject {|o| special_method?(o) } unless include_specials
|
37
37
|
return @meths if @meths
|
38
|
-
@meths = object.meths(:inherited => false, :included =>
|
38
|
+
@meths = object.meths(:inherited => false, :included => !options.embed_mixins.empty?)
|
39
|
+
if options.embed_mixins.size > 0
|
40
|
+
@meths = @meths.reject {|m| options.embed_mixins_match?(m.namespace) == false }
|
41
|
+
end
|
39
42
|
@meths = sort_listing(prune_method_listing(@meths))
|
40
43
|
@meths
|
41
44
|
end
|
@@ -49,12 +52,19 @@ end
|
|
49
52
|
def attr_listing
|
50
53
|
return @attrs if @attrs
|
51
54
|
@attrs = []
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
+
object.inheritance_tree(true).each do |superclass|
|
56
|
+
next if superclass.is_a?(CodeObjects::Proxy)
|
57
|
+
next if options.embed_mixins.size > 0 &&
|
58
|
+
options.embed_mixins_match?(superclass) == false
|
59
|
+
[:class, :instance].each do |scope|
|
60
|
+
superclass.attributes[scope].each do |name, rw|
|
61
|
+
attr = prune_method_listing([rw[:read], rw[:write]].compact, false).first
|
62
|
+
@attrs << attr if attr
|
63
|
+
end
|
55
64
|
end
|
65
|
+
break if options.embed_mixins.empty?
|
56
66
|
end
|
57
|
-
@attrs = sort_listing(
|
67
|
+
@attrs = sort_listing(@attrs)
|
58
68
|
end
|
59
69
|
|
60
70
|
def constant_listing
|
@@ -72,6 +82,7 @@ end
|
|
72
82
|
def inherited_attr_list(&block)
|
73
83
|
object.inheritance_tree(true)[1..-1].each do |superclass|
|
74
84
|
next if superclass.is_a?(YARD::CodeObjects::Proxy)
|
85
|
+
next if options.embed_mixins.size > 0 && options.embed_mixins_match?(superclass) != false
|
75
86
|
attribs = superclass.attributes[:instance]
|
76
87
|
attribs = attribs.reject {|name, rw| object.child(:scope => :instance, :name => name) != nil }
|
77
88
|
attribs = attribs.sort_by {|args| args.first.to_s }.map {|n, m| m[:read] || m[:write] }
|
@@ -83,6 +94,7 @@ end
|
|
83
94
|
def inherited_constant_list(&block)
|
84
95
|
object.inheritance_tree(true)[1..-1].each do |superclass|
|
85
96
|
next if superclass.is_a?(YARD::CodeObjects::Proxy)
|
97
|
+
next if options.embed_mixins.size > 0 && options.embed_mixins_match?(superclass) != false
|
86
98
|
consts = superclass.constants(:included => false, :inherited => false)
|
87
99
|
consts = consts.reject {|const| object.child(:type => :constant, :name => const.name) != nil }
|
88
100
|
consts = consts.sort_by {|const| const.name.to_s }
|
@@ -102,7 +114,7 @@ def docstring_full(obj)
|
|
102
114
|
if docstring.summary.empty? && obj.tags(:return).size == 1 && obj.tag(:return).text
|
103
115
|
docstring = Docstring.new(obj.tag(:return).text.gsub(/\A([a-z])/) {|x| x.upcase }.strip)
|
104
116
|
end
|
105
|
-
|
117
|
+
|
106
118
|
docstring
|
107
119
|
end
|
108
120
|
|
@@ -112,7 +124,8 @@ end
|
|
112
124
|
|
113
125
|
def groups(list, type = "Method")
|
114
126
|
if groups_data = object.groups
|
115
|
-
|
127
|
+
list.each {|m| groups_data |= [m.group] if m.group && owner != m.namespace }
|
128
|
+
others = list.select {|m| !m.group || !groups_data.include?(m.group) }
|
116
129
|
groups_data.each do |name|
|
117
130
|
items = list.select {|m| m.group == name }
|
118
131
|
yield(items, name) unless items.empty?
|
@@ -129,7 +142,7 @@ def groups(list, type = "Method")
|
|
129
142
|
end
|
130
143
|
group_data.each {|group, items| yield(items, group) unless items.empty? }
|
131
144
|
end
|
132
|
-
|
145
|
+
|
133
146
|
scopes(others) {|items, scope| yield(items, "#{scope.to_s.capitalize} #{type} Summary") }
|
134
147
|
end
|
135
148
|
|
@@ -146,6 +159,6 @@ def mixed_into(object)
|
|
146
159
|
list = run_verifier Registry.all(:class, :module)
|
147
160
|
list.each {|o| o.mixins.each {|m| (globals.mixed_into[m.path] ||= []) << o } }
|
148
161
|
end
|
149
|
-
|
162
|
+
|
150
163
|
globals.mixed_into[object.path] || []
|
151
164
|
end
|
@@ -2,7 +2,7 @@ include T('default/layout/html')
|
|
2
2
|
include YARD::Parser::Ruby::Legacy
|
3
3
|
|
4
4
|
def init
|
5
|
-
override_serializer
|
5
|
+
override_serializer
|
6
6
|
@object = YARD::Registry.root
|
7
7
|
@files.shift
|
8
8
|
@objects.delete(YARD::Registry.root)
|
@@ -34,7 +34,7 @@ def override_serializer
|
|
34
34
|
return unless object == 'index.html'
|
35
35
|
super
|
36
36
|
end
|
37
|
-
|
37
|
+
|
38
38
|
def serialized_path(object)
|
39
39
|
return object if object.is_a?(String)
|
40
40
|
return 'index.html'
|
@@ -1,8 +1,10 @@
|
|
1
1
|
<% if object.has_tag?(:example) %>
|
2
2
|
<div class="examples">
|
3
|
-
<
|
3
|
+
<p class="tag_title">Examples:</p>
|
4
4
|
<% object.tags(:example).each do |tag| %>
|
5
|
-
|
5
|
+
<% unless tag.name.empty? %>
|
6
|
+
<p class="example_title"><%= htmlify_line(tag.name) %></p>
|
7
|
+
<% end %>
|
6
8
|
<pre class="example code"><%= html_syntax_highlight(tag.text) %></pre>
|
7
9
|
<% end %>
|
8
10
|
</div>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<% object.parameters.each do |param, default| %>
|
3
3
|
<% tags = object.tags(:option).select {|x| x.name.to_s == param.to_s } %>
|
4
4
|
<% next if tags.empty? %>
|
5
|
-
<
|
5
|
+
<p class="tag_title">Options Hash (<tt><%= param %></tt>):</p>
|
6
6
|
<ul class="option">
|
7
7
|
<% for tag in tags %>
|
8
8
|
<li>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% if object.tags(:overload).size == 1 %>
|
2
2
|
<%= yieldall :object => object.tag(:overload) %>
|
3
3
|
<% elsif object.has_tag?(:overload) && object.tags(:overload).any? {|o| !o.docstring.blank? } %>
|
4
|
-
<
|
4
|
+
<p class="tag_title">Overloads:</p>
|
5
5
|
<ul class="overload">
|
6
6
|
<% object.tags(:overload).each do |overload| %>
|
7
7
|
<% next if overload.docstring.blank? %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
def init
|
2
2
|
tags = Tags::Library.visible_tags - [:abstract, :deprecated, :note, :todo]
|
3
3
|
create_tag_methods(tags - [:example, :option, :overload, :see])
|
4
|
-
sections :index, tags
|
4
|
+
sections :index, tags.map {|t| t.to_s.gsub('.', '_').to_sym }
|
5
5
|
sections.any(:overload).push(T('docstring'))
|
6
6
|
end
|
7
7
|
|
@@ -32,9 +32,10 @@ end
|
|
32
32
|
|
33
33
|
def create_tag_methods(tags)
|
34
34
|
tags.each do |tag|
|
35
|
-
|
35
|
+
tag_meth = tag.to_s.gsub('.', '_')
|
36
|
+
next if respond_to?(tag_meth)
|
36
37
|
instance_eval(<<-eof, __FILE__, __LINE__ + 1)
|
37
|
-
def #{
|
38
|
+
def #{tag_meth}; tag(#{tag.inspect}) end
|
38
39
|
eof
|
39
40
|
end
|
40
41
|
end
|
@@ -56,8 +56,8 @@ a:hover { color: #060; background: #8e0; }
|
|
56
56
|
#filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
|
57
57
|
#filecontents pre.code, .docstring pre.code { display: block; }
|
58
58
|
.source_code .lines { padding-right: 12px; color: #555; text-align: right; }
|
59
|
-
#filecontents pre.code, .docstring pre.code,
|
60
|
-
.tags pre.example {
|
59
|
+
#filecontents pre.code, .docstring pre.code,
|
60
|
+
.tags pre.example {
|
61
61
|
font-size: 0.9em;
|
62
62
|
padding: 7px 30px;
|
63
63
|
margin: 15px -30px;
|
@@ -73,21 +73,21 @@ pre.code .tstring_content,
|
|
73
73
|
pre.code .heredoc_beg, pre.code .heredoc_end,
|
74
74
|
pre.code .qwords_beg, pre.code .qwords_end,
|
75
75
|
pre.code .tstring, pre.code .dstring { color: #036A07; }
|
76
|
-
pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
|
77
|
-
pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
|
76
|
+
pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
|
77
|
+
pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
|
78
78
|
pre.code .dot + pre.code .id,
|
79
79
|
pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; }
|
80
80
|
pre.code .comment { color: #0066FF; }
|
81
81
|
pre.code .const, pre.code .constant { color: #585CF6; }
|
82
82
|
pre.code .symbol { color: #C5060B; }
|
83
|
-
pre.code .kw,
|
83
|
+
pre.code .kw,
|
84
84
|
pre.code .label,
|
85
|
-
pre.code .rubyid_require,
|
85
|
+
pre.code .rubyid_require,
|
86
86
|
pre.code .rubyid_extend,
|
87
87
|
pre.code .rubyid_include { color: #0000FF; }
|
88
88
|
pre.code .ivar { color: #318495; }
|
89
|
-
pre.code .gvar,
|
90
|
-
pre.code .rubyid_backref,
|
89
|
+
pre.code .gvar,
|
90
|
+
pre.code .rubyid_backref,
|
91
91
|
pre.code .rubyid_nth_ref { color: #6D79DE; }
|
92
92
|
pre.code .regexp, .dregexp { color: #036A07; }
|
93
93
|
pre.code a { border-bottom: 1px dotted #bbf; }
|
@@ -16,13 +16,13 @@ function generateTOC() {
|
|
16
16
|
if ($('#' + proposedId).length > 0) proposedId += counter++;
|
17
17
|
this.id = proposedId;
|
18
18
|
}
|
19
|
-
if (thisTag > lastTag) {
|
20
|
-
for (var i = 0; i < thisTag - lastTag; i++) {
|
21
|
-
var tmp = $('<ol/>'); toc.append(tmp); toc = tmp;
|
22
|
-
}
|
19
|
+
if (thisTag > lastTag) {
|
20
|
+
for (var i = 0; i < thisTag - lastTag; i++) {
|
21
|
+
var tmp = $('<ol/>'); toc.append(tmp); toc = tmp;
|
22
|
+
}
|
23
23
|
}
|
24
|
-
if (thisTag < lastTag) {
|
25
|
-
for (var i = 0; i < lastTag - thisTag; i++) toc = toc.parent();
|
24
|
+
if (thisTag < lastTag) {
|
25
|
+
for (var i = 0; i < lastTag - thisTag; i++) toc = toc.parent();
|
26
26
|
}
|
27
27
|
toc.append('<li><a href="#' + this.id + '">' + $(this).text() + '</a></li>');
|
28
28
|
lastTag = thisTag;
|
@@ -11,7 +11,7 @@ end
|
|
11
11
|
Template.extra_includes << OverrideFileLinks
|
12
12
|
|
13
13
|
def init
|
14
|
-
class << options
|
14
|
+
class << options.serializer
|
15
15
|
def serialized_path(object)
|
16
16
|
if CodeObjects::ExtraFileObject === object
|
17
17
|
super.sub(/^file\./, '')
|
@@ -19,12 +19,12 @@ def init
|
|
19
19
|
super
|
20
20
|
end
|
21
21
|
end
|
22
|
-
end if options
|
23
|
-
|
22
|
+
end if options.serializer
|
23
|
+
|
24
24
|
generate_assets
|
25
25
|
options.delete(:objects)
|
26
|
-
options
|
27
|
-
serialize_file(options
|
26
|
+
options.files.each {|file| serialize_file(file) }
|
27
|
+
serialize_file(options.readme)
|
28
28
|
end
|
29
29
|
|
30
30
|
def generate_assets
|
@@ -34,19 +34,19 @@ def generate_assets
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def serialize_file(file)
|
37
|
-
index = options
|
37
|
+
index = options.files.index(file)
|
38
38
|
outfile = file.name + '.html'
|
39
|
-
options
|
39
|
+
options.file = file
|
40
40
|
if file.attributes[:namespace]
|
41
|
-
options
|
41
|
+
options.object = Registry.at(file.attributes[:namespace])
|
42
42
|
end
|
43
|
-
options
|
43
|
+
options.object ||= Registry.root
|
44
44
|
|
45
|
-
if file == options
|
45
|
+
if file == options.readme
|
46
46
|
serialize_index(options)
|
47
47
|
else
|
48
|
-
serialize_index(options) if !options
|
49
|
-
Templates::Engine.with_serializer(outfile, options
|
48
|
+
serialize_index(options) if !options.readme && index == 0
|
49
|
+
Templates::Engine.with_serializer(outfile, options.serializer) do
|
50
50
|
T('layout').run(options)
|
51
51
|
end
|
52
52
|
end
|