yard 0.9.29 → 0.9.31

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.

Files changed (153) hide show
  1. checksums.yaml +4 -4
  2. data/docs/CodeObjects.md +115 -0
  3. data/docs/GettingStarted.md +679 -0
  4. data/docs/Handlers.md +152 -0
  5. data/docs/Overview.md +61 -0
  6. data/docs/Parser.md +191 -0
  7. data/docs/Tags.md +283 -0
  8. data/docs/TagsArch.md +123 -0
  9. data/docs/Templates.md +496 -0
  10. data/docs/WhatsNew.md +1245 -0
  11. data/docs/images/code-objects-class-diagram.png +0 -0
  12. data/docs/images/handlers-class-diagram.png +0 -0
  13. data/docs/images/overview-class-diagram.png +0 -0
  14. data/docs/images/parser-class-diagram.png +0 -0
  15. data/docs/images/tags-class-diagram.png +0 -0
  16. data/docs/templates/default/fulldoc/html/full_list_tag.erb +9 -0
  17. data/docs/templates/default/fulldoc/html/setup.rb +6 -0
  18. data/docs/templates/default/layout/html/setup.rb +9 -0
  19. data/docs/templates/default/layout/html/tag_list.erb +11 -0
  20. data/docs/templates/default/yard_tags/html/list.erb +18 -0
  21. data/docs/templates/default/yard_tags/html/setup.rb +26 -0
  22. data/docs/templates/plugin.rb +70 -0
  23. data/lib/yard/server/commands/static_file_helpers.rb +1 -2
  24. data/lib/yard/version.rb +1 -1
  25. data/po/ja.po +31108 -0
  26. data/templates/default/class/dot/setup.rb +7 -0
  27. data/templates/default/class/dot/superklass.erb +3 -0
  28. data/templates/default/class/html/constructor_details.erb +8 -0
  29. data/templates/default/class/html/setup.rb +2 -0
  30. data/templates/default/class/html/subclasses.erb +4 -0
  31. data/templates/default/class/setup.rb +36 -0
  32. data/templates/default/class/text/setup.rb +12 -0
  33. data/templates/default/class/text/subclasses.erb +5 -0
  34. data/templates/default/constant/text/header.erb +11 -0
  35. data/templates/default/constant/text/setup.rb +4 -0
  36. data/templates/default/docstring/html/abstract.erb +4 -0
  37. data/templates/default/docstring/html/deprecated.erb +1 -0
  38. data/templates/default/docstring/html/index.erb +5 -0
  39. data/templates/default/docstring/html/note.erb +6 -0
  40. data/templates/default/docstring/html/private.erb +4 -0
  41. data/templates/default/docstring/html/returns_void.erb +1 -0
  42. data/templates/default/docstring/html/text.erb +1 -0
  43. data/templates/default/docstring/html/todo.erb +6 -0
  44. data/templates/default/docstring/setup.rb +52 -0
  45. data/templates/default/docstring/text/abstract.erb +2 -0
  46. data/templates/default/docstring/text/deprecated.erb +2 -0
  47. data/templates/default/docstring/text/index.erb +2 -0
  48. data/templates/default/docstring/text/note.erb +4 -0
  49. data/templates/default/docstring/text/private.erb +2 -0
  50. data/templates/default/docstring/text/returns_void.erb +1 -0
  51. data/templates/default/docstring/text/text.erb +1 -0
  52. data/templates/default/docstring/text/todo.erb +4 -0
  53. data/templates/default/fulldoc/html/css/common.css +1 -0
  54. data/templates/default/fulldoc/html/css/full_list.css +58 -0
  55. data/templates/default/fulldoc/html/css/style.css +497 -0
  56. data/templates/default/fulldoc/html/frames.erb +17 -0
  57. data/templates/default/fulldoc/html/full_list.erb +37 -0
  58. data/templates/default/fulldoc/html/full_list_class.erb +2 -0
  59. data/templates/default/fulldoc/html/full_list_file.erb +7 -0
  60. data/templates/default/fulldoc/html/full_list_method.erb +10 -0
  61. data/templates/default/fulldoc/html/js/app.js +314 -0
  62. data/templates/default/fulldoc/html/js/full_list.js +216 -0
  63. data/templates/default/fulldoc/html/js/jquery.js +4 -0
  64. data/templates/default/fulldoc/html/setup.rb +241 -0
  65. data/templates/default/layout/dot/header.erb +6 -0
  66. data/templates/default/layout/dot/setup.rb +15 -0
  67. data/templates/default/layout/html/breadcrumb.erb +11 -0
  68. data/templates/default/layout/html/files.erb +11 -0
  69. data/templates/default/layout/html/footer.erb +5 -0
  70. data/templates/default/layout/html/headers.erb +15 -0
  71. data/templates/default/layout/html/index.erb +2 -0
  72. data/templates/default/layout/html/layout.erb +24 -0
  73. data/templates/default/layout/html/listing.erb +4 -0
  74. data/templates/default/layout/html/objects.erb +32 -0
  75. data/templates/default/layout/html/script_setup.erb +4 -0
  76. data/templates/default/layout/html/search.erb +13 -0
  77. data/templates/default/layout/html/setup.rb +89 -0
  78. data/templates/default/method/html/header.erb +17 -0
  79. data/templates/default/method/setup.rb +4 -0
  80. data/templates/default/method/text/header.erb +1 -0
  81. data/templates/default/method_details/html/header.erb +3 -0
  82. data/templates/default/method_details/html/method_signature.erb +25 -0
  83. data/templates/default/method_details/html/source.erb +10 -0
  84. data/templates/default/method_details/setup.rb +11 -0
  85. data/templates/default/method_details/text/header.erb +10 -0
  86. data/templates/default/method_details/text/method_signature.erb +12 -0
  87. data/templates/default/method_details/text/setup.rb +11 -0
  88. data/templates/default/module/dot/child.erb +1 -0
  89. data/templates/default/module/dot/dependencies.erb +3 -0
  90. data/templates/default/module/dot/header.erb +6 -0
  91. data/templates/default/module/dot/info.erb +14 -0
  92. data/templates/default/module/dot/setup.rb +15 -0
  93. data/templates/default/module/html/attribute_details.erb +10 -0
  94. data/templates/default/module/html/attribute_summary.erb +8 -0
  95. data/templates/default/module/html/box_info.erb +43 -0
  96. data/templates/default/module/html/children.erb +8 -0
  97. data/templates/default/module/html/constant_summary.erb +17 -0
  98. data/templates/default/module/html/defines.erb +3 -0
  99. data/templates/default/module/html/header.erb +5 -0
  100. data/templates/default/module/html/inherited_attributes.erb +14 -0
  101. data/templates/default/module/html/inherited_constants.erb +8 -0
  102. data/templates/default/module/html/inherited_methods.erb +19 -0
  103. data/templates/default/module/html/item_summary.erb +40 -0
  104. data/templates/default/module/html/method_details_list.erb +9 -0
  105. data/templates/default/module/html/method_summary.erb +14 -0
  106. data/templates/default/module/html/methodmissing.erb +12 -0
  107. data/templates/default/module/html/pre_docstring.erb +1 -0
  108. data/templates/default/module/setup.rb +167 -0
  109. data/templates/default/module/text/children.erb +10 -0
  110. data/templates/default/module/text/class_meths_list.erb +8 -0
  111. data/templates/default/module/text/extends.erb +8 -0
  112. data/templates/default/module/text/header.erb +7 -0
  113. data/templates/default/module/text/includes.erb +8 -0
  114. data/templates/default/module/text/instance_meths_list.erb +8 -0
  115. data/templates/default/module/text/setup.rb +13 -0
  116. data/templates/default/onefile/html/files.erb +5 -0
  117. data/templates/default/onefile/html/headers.erb +6 -0
  118. data/templates/default/onefile/html/layout.erb +17 -0
  119. data/templates/default/onefile/html/readme.erb +3 -0
  120. data/templates/default/onefile/html/setup.rb +62 -0
  121. data/templates/default/root/dot/child.erb +3 -0
  122. data/templates/default/root/dot/setup.rb +6 -0
  123. data/templates/default/root/html/setup.rb +2 -0
  124. data/templates/default/tags/html/example.erb +11 -0
  125. data/templates/default/tags/html/index.erb +3 -0
  126. data/templates/default/tags/html/option.erb +24 -0
  127. data/templates/default/tags/html/overload.erb +14 -0
  128. data/templates/default/tags/html/see.erb +8 -0
  129. data/templates/default/tags/html/tag.erb +20 -0
  130. data/templates/default/tags/setup.rb +57 -0
  131. data/templates/default/tags/text/example.erb +12 -0
  132. data/templates/default/tags/text/index.erb +1 -0
  133. data/templates/default/tags/text/option.erb +20 -0
  134. data/templates/default/tags/text/overload.erb +19 -0
  135. data/templates/default/tags/text/see.erb +11 -0
  136. data/templates/default/tags/text/tag.erb +13 -0
  137. data/templates/guide/class/html/setup.rb +2 -0
  138. data/templates/guide/docstring/html/setup.rb +2 -0
  139. data/templates/guide/fulldoc/html/css/style.css +108 -0
  140. data/templates/guide/fulldoc/html/js/app.js +33 -0
  141. data/templates/guide/fulldoc/html/setup.rb +74 -0
  142. data/templates/guide/layout/html/layout.erb +81 -0
  143. data/templates/guide/layout/html/setup.rb +25 -0
  144. data/templates/guide/method/html/header.erb +18 -0
  145. data/templates/guide/method/html/setup.rb +22 -0
  146. data/templates/guide/module/html/header.erb +7 -0
  147. data/templates/guide/module/html/method_list.erb +5 -0
  148. data/templates/guide/module/html/setup.rb +27 -0
  149. data/templates/guide/onefile/html/files.erb +4 -0
  150. data/templates/guide/onefile/html/setup.rb +6 -0
  151. data/templates/guide/onefile/html/toc.erb +3 -0
  152. data/templates/guide/tags/html/setup.rb +9 -0
  153. metadata +151 -2
@@ -0,0 +1,4 @@
1
+ <script type="text/javascript">
2
+ pathId = <%= @path ? @path.inspect : 'null' %>;
3
+ relpath = '<%= u = url_for(''); u + (u != '' ? '/' : '') %>';
4
+ </script>
@@ -0,0 +1,13 @@
1
+ <div id="search">
2
+ <% [menu_lists.first].each do |field| %>
3
+ <a class="full_list_link" id="<%= field[:type] %>_list_link"
4
+ href="<%= url_for_list(field[:type]) %>">
5
+
6
+ <svg width="24" height="24">
7
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
8
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
9
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
10
+ </svg>
11
+ </a>
12
+ <% end %>
13
+ </div>
@@ -0,0 +1,89 @@
1
+ # frozen_string_literal: true
2
+ def init
3
+ @breadcrumb = []
4
+ @page_title = ''
5
+ @breadcrumb_title = ''
6
+ if @onefile
7
+ sections :layout
8
+ elsif defined?(@file) && @file
9
+ if @file.attributes[:namespace]
10
+ @object = options.object = Registry.at(@file.attributes[:namespace]) || Registry.root
11
+ end
12
+ @breadcrumb_title = "File: " + @file.title
13
+ @page_title = @breadcrumb_title
14
+ sections :layout, [:diskfile]
15
+ elsif @contents
16
+ sections :layout, [:contents]
17
+ else
18
+ case object
19
+ when '_index.html'
20
+ @page_title = options.title
21
+ sections :layout, [:index, [:listing, [:files, :objects]]]
22
+ when CodeObjects::Base
23
+ unless object.root?
24
+ cur = object.namespace
25
+ until cur.root?
26
+ @breadcrumb.unshift(cur)
27
+ cur = cur.namespace
28
+ end
29
+ end
30
+
31
+ @page_title = format_object_title(object)
32
+ type = object.root? ? :module : object.type
33
+ sections :layout, [T(type)]
34
+ end
35
+ end
36
+ end
37
+
38
+ attr_reader :contents
39
+
40
+ def index
41
+ @objects_by_letter = {}
42
+ objects = Registry.all(:class, :module).sort_by {|o| o.name.to_s }
43
+ objects = run_verifier(objects)
44
+ objects.each {|o| (@objects_by_letter[o.name.to_s[0, 1].upcase] ||= []) << o }
45
+ erb(:index)
46
+ end
47
+
48
+ def layout
49
+ @nav_url = url_for_list(!(defined?(@file) && @file) || options.index ? 'class' : 'file')
50
+
51
+ @path =
52
+ if !object || object.is_a?(String)
53
+ nil
54
+ elsif defined?(@file) && @file
55
+ @file.path
56
+ elsif !object.is_a?(YARD::CodeObjects::NamespaceObject)
57
+ object.parent.path
58
+ else
59
+ object.path
60
+ end
61
+
62
+ erb(:layout)
63
+ end
64
+
65
+ def diskfile
66
+ @file.attributes[:markup] ||= markup_for_file('', @file.filename)
67
+ data = htmlify(@file.contents, @file.attributes[:markup])
68
+ "<div id='filecontents'>" + data + "</div>"
69
+ end
70
+
71
+ # @return [Array<String>] core javascript files for layout
72
+ # @since 0.7.0
73
+ def javascripts
74
+ %w(js/jquery.js js/app.js)
75
+ end
76
+
77
+ # @return [Array<String>] core stylesheets for the layout
78
+ # @since 0.7.0
79
+ def stylesheets
80
+ %w(css/style.css css/common.css)
81
+ end
82
+
83
+ # @return [Array<Hash{Symbol=>String}>] the list of search links and drop-down menus
84
+ # @since 0.7.0
85
+ def menu_lists
86
+ [{:type => 'class', :title => 'Classes', :search_title => 'Class List'},
87
+ {:type => 'method', :title => 'Methods', :search_title => 'Method List'},
88
+ {:type => 'file', :title => 'Files', :search_title => 'File List'}]
89
+ end
@@ -0,0 +1,17 @@
1
+ <h1>Method: <%= object.path %></h1>
2
+ <div class="box_info">
3
+ <dl>
4
+ <dt class="">Defined in:</dt>
5
+ <dd class="">
6
+ <%= object.file %><% if object.files.size > 1 %><span class="defines">,<br />
7
+ <%= object.files[1..-1].map {|f| f.first }.join(",<br /> ") %></div>
8
+ <% end %>
9
+ </dd>
10
+ </dl>
11
+ </div>
12
+
13
+ <div class="method_details_list">
14
+ <div id="method_details">
15
+ <%= yieldall :index => 0 %>
16
+ </div>
17
+ </div>
@@ -0,0 +1,4 @@
1
+ # frozen_string_literal: true
2
+ def init
3
+ sections :header, [T('method_details')]
4
+ end
@@ -0,0 +1 @@
1
+ <%= yieldall %>
@@ -0,0 +1,3 @@
1
+ <div class="method_details <%= @index == 0 ? 'first' : '' %>">
2
+ <%= yieldall %>
3
+ </div>
@@ -0,0 +1,25 @@
1
+ <h3 class="signature <%= 'first' if @index == 0 %>" id="<%= anchor_for(object) %>">
2
+ <% if object.tags(:overload).size == 1 %>
3
+ <%= signature(object.tag(:overload), false) %>
4
+ <% elsif object.tags(:overload).size > 1 %>
5
+ <% object.tags(:overload).each do |overload| %>
6
+ <span class="overload"><%= signature(overload, false) %></span>
7
+ <% end %>
8
+ <% else %>
9
+ <%= signature(object, false) %>
10
+ <% end %>
11
+
12
+ <% if object.aliases.size > 0 %>
13
+ <span class="aliases">Also known as:
14
+ <span class="names"><%= object.aliases.map {|o|
15
+ "<span id='#{anchor_for(o)}'>" + h(o.name.to_s) + "</span>" }.join(", ") %></span>
16
+ </span>
17
+ <% end %>
18
+
19
+ <% if owner != object.namespace %>
20
+ <span class="not_defined_here">
21
+ Originally defined in <%= object.namespace.type %>
22
+ <%= linkify object, owner.relative_path(object.namespace) %>
23
+ </span>
24
+ <% end %>
25
+ </h3>
@@ -0,0 +1,10 @@
1
+ <table class="source_code">
2
+ <tr>
3
+ <td>
4
+ <pre class="lines"><%= "\n\n\n" %><%= h format_lines(object) %></pre>
5
+ </td>
6
+ <td>
7
+ <pre class="code"><span class="info file"># File '<%= h object.file %>'<% if object.line %>, line <%= object.line %><% end %></span><%= "\n\n" %><%= html_syntax_highlight object.source %></pre>
8
+ </td>
9
+ </tr>
10
+ </table>
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+ def init
3
+ sections :header, [:method_signature, T('docstring'), :source]
4
+ end
5
+
6
+ def source
7
+ return if owner != object.namespace
8
+ return if Tags::OverloadTag === object
9
+ return if object.source.nil?
10
+ erb(:source)
11
+ end
@@ -0,0 +1,10 @@
1
+ <%= title_align_right format_object_title(object) %>
2
+
3
+ <%= align_right "(Defined in: #{object.file})" %>
4
+ <% if object.aliases.size > 0 %>
5
+
6
+ <%= align_right "(Also known as: #{object.aliases.map {|o| o.name(true).to_s }.join(',')})" %>
7
+ <% end %>
8
+
9
+ <%= yieldall %>
10
+
@@ -0,0 +1,12 @@
1
+
2
+ <% if object.tags(:overload).size == 1 %>
3
+ <%= indent wrap(signature(object.tag(:overload))) %>
4
+ <% elsif object.tags(:overload).size > 1 %>
5
+ <% object.tags(:overload).each do |overload| %>
6
+ <%= indent wrap(signature(overload)) %>
7
+ <% end %>
8
+ <% else %>
9
+ <%= indent wrap(signature(object)) %>
10
+ <% end %>
11
+ <%= hr %>
12
+
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+ def init
3
+ super
4
+ sections.last.pop
5
+ end
6
+
7
+ def format_object_title(object)
8
+ title = "Method: #{object.name(true)}"
9
+ title += " (#{object.namespace})" unless object.namespace.root?
10
+ title
11
+ end
@@ -0,0 +1 @@
1
+ <%= format_path object %> [label="{<%= yieldall.gsub("\n", '') %>}" rank=sink];
@@ -0,0 +1,3 @@
1
+ <% object.mixins(:instance).each do |obj| %>
2
+ <%= format_path object %> -> <%= format_path obj %> [style=dotted arrowType=none];
3
+ <% end %>
@@ -0,0 +1,6 @@
1
+ subgraph cluster_<%= format_path object %> {
2
+ label = "<%= h(object.name) unless object.path == "" %>"; labelloc=b;
3
+ <% for obj in @modules %>
4
+ <%= yieldall :object => obj %>
5
+ <% end %>
6
+ }
@@ -0,0 +1,14 @@
1
+ <%= object.type %> <%= h object.name %>
2
+ <% if options.full %>
3
+ |
4
+ <% object.attributes.each do |scope, list| %>
5
+ <% list.sort_by {|name, rw| name.to_s }.each do |name, rw| %>
6
+ <%= uml_visibility(rw.values.compact.first) %> <%= h (rw[:read]||rw[:write]).name(true).gsub(/=$/,'') %> [<%= 'R' if rw[:read] %><%= 'W' if rw[:write] %>]\l
7
+ <% end %>
8
+ <% end %>
9
+ |
10
+ <% method_listing.each do |obj| %>
11
+ <%= uml_visibility obj %> <%= h obj.name(true) %>
12
+ <%= h(" : #{obj.tag(:return).types.first}") if obj.has_tag?(:return) && obj.tag(:return).types && obj.tag(:return).types.size > 0 %>\l
13
+ <% end %>
14
+ <% end %>
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+ def init
3
+ @modules = object.children.select {|o| o.type == :module }
4
+ @classes = object.children.select {|o| o.type == :class }
5
+ sections :child, [:info], :classes, [T('class')], :header, [T('module')], :dependencies
6
+ end
7
+
8
+ def dependencies
9
+ return unless options.dependencies
10
+ erb(:dependencies)
11
+ end
12
+
13
+ def classes
14
+ @classes.map {|k| yieldall :object => k }.join("\n")
15
+ end
@@ -0,0 +1,10 @@
1
+ <% scopes(attr_listing) do |list, scope| %>
2
+ <div id="<%= scope %>_attr_details" class="attr_details">
3
+ <h2><%= scope.to_s.capitalize %> Attribute Details</h2>
4
+ <% list.each_with_index do |meth, i| %>
5
+ <% rw = meth.attr_info %>
6
+ <span id="<%= anchor_for(rw[meth.reader? ? :write : :read]) %>"></span>
7
+ <%= yieldall :object => meth, :owner => object, :index => i %>
8
+ <% end %>
9
+ </div>
10
+ <% end %>
@@ -0,0 +1,8 @@
1
+ <% groups(attr_listing, "Attribute") do |list, name| %>
2
+ <h2><%= name %> <small><a href="#" class="summary_toggle">collapse</a></small></h2>
3
+ <ul class="summary">
4
+ <% list.each do |meth| %>
5
+ <%= yieldall :item => meth %>
6
+ <% end %>
7
+ </ul>
8
+ <% end %>
@@ -0,0 +1,43 @@
1
+ <div class="box_info">
2
+ <% if CodeObjects::ClassObject === object && object.superclass %>
3
+ <dl>
4
+ <dt>Inherits:</dt>
5
+ <dd>
6
+ <span class="inheritName"><%= linkify object.superclass %></span>
7
+ <% if object.superclass.name != :BasicObject %>
8
+ <ul class="fullTree">
9
+ <li><%= linkify P(:Object) %></li>
10
+ <% object.inheritance_tree.reverse.each_with_index do |obj, i| %>
11
+ <li class="next"><%= obj == object ? obj.path : linkify(obj) %></li>
12
+ <% end %>
13
+ </ul>
14
+ <a href="#" class="inheritanceTree">show all</a>
15
+ <% end %>
16
+ </dd>
17
+ </dl>
18
+ <% end %>
19
+
20
+ <% [[:class, "Extended by"], [:instance, "Includes"]].each do |scope, name| %>
21
+ <% if (mix = run_verifier(object.mixins(scope))).size > 0 %>
22
+ <dl>
23
+ <dt><%= name %>:</dt>
24
+ <dd><%= mix.sort_by {|o| o.path }.map {|o| linkify(o) }.join(", ") %></dd>
25
+ </dl>
26
+ <% end %>
27
+ <% end %>
28
+
29
+ <% if (mixed_into = mixed_into(object)).size > 0 %>
30
+ <dl>
31
+ <dt>Included in:</dt>
32
+ <dd><%= mixed_into.sort_by {|o| o.path }.map {|o| linkify(o) }.join(", ") %></dd>
33
+ </dl>
34
+ <% end %>
35
+
36
+ <% unless object.root? %>
37
+ <dl>
38
+ <dt>Defined in:</dt>
39
+ <dd><%= erb(:defines) %></dd>
40
+ </dl>
41
+ <% end %>
42
+ </div>
43
+
@@ -0,0 +1,8 @@
1
+ <h2>Defined Under Namespace</h2>
2
+ <p class="children">
3
+ <% @inner.each do |name, list| %>
4
+ <% if list.size > 0 %>
5
+ <strong class="<%= name %>"><%= name.to_s.capitalize %>:</strong> <%= list.map {|child| linkify(child, child.name(true)) }.join(", ") %>
6
+ <% end %>
7
+ <% end %>
8
+ </p>
@@ -0,0 +1,17 @@
1
+ <% if constant_listing.size > 0 %>
2
+ <% groups(constant_listing, "Constant") do |list, name| %>
3
+ <h2>
4
+ <%= name %>
5
+ <small><a href="#" class="constants_summary_toggle">collapse</a></small>
6
+ </h2>
7
+
8
+ <dl class="constants">
9
+ <% list.each do |cnst| %>
10
+ <dt id="<%= anchor_for(cnst) %>" class="<%= cnst.has_tag?(:deprecated) ? 'deprecated' : '' %>"><%= cnst.name %> =
11
+ <%= yieldall :object => cnst %>
12
+ </dt>
13
+ <dd><pre class="code"><%= format_constant cnst.value %></pre></dd>
14
+ <% end %>
15
+ </dl>
16
+ <% end %>
17
+ <% end %>
@@ -0,0 +1,3 @@
1
+ <%= object.file ? object.file : '(unknown)' %><% if object.files.size > 1 %><span class="defines">,<br />
2
+ <%= object.files[1..-1].map {|f| f.first }.join(",<br /> ") %></span>
3
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <h1><%= format_object_title(object) %>
2
+ <% if object.has_tag?(:abstract) %><span class="abstract note title">Abstract</span><% end %>
3
+ <% if object.has_tag?(:deprecated) %><span class="deprecated note title">Deprecated</span><% end %>
4
+ <% if object.has_tag?(:api) && object.tag(:api).text == 'private' %><span class="private note title">Private</span><% end %>
5
+ </h1>
@@ -0,0 +1,14 @@
1
+ <% found_method = false %>
2
+ <% inherited_attr_list do |superclass, attribs| %>
3
+ <% if attr_listing.size == 0 && !found_method %><h2>Instance Attribute Summary</h2><% end %>
4
+ <% found_method = true %>
5
+ <h3 class="inherited">Attributes <%= superclass.type == :class ? 'inherited' : 'included' %> from <%= linkify superclass %></h3>
6
+ <p class="inherited"><%= attribs.map do |method|
7
+ name = method.name(true).gsub(/=$/, '')
8
+ if superclass.type == :module && object.instance_mixins.include?(superclass)
9
+ name = "##{name}" unless name =~ /^#/
10
+ end
11
+ linkify(method, name)
12
+ end.join(", ")
13
+ %></p>
14
+ <% end %>
@@ -0,0 +1,8 @@
1
+ <% found_const = false %>
2
+ <% inherited_constant_list do |superclass, consts| %>
3
+ <% if constant_listing.size == 0 && !found_const %><h2>Constant Summary</h2><% end %>
4
+ <% found_const = true %>
5
+ <h3 class="inherited">Constants <%= superclass.type == :class ? 'inherited' : 'included' %>
6
+ from <%= linkify superclass %></h3>
7
+ <p class="inherited"><%= consts.map {|c| linkify c }.join(", ") %></p>
8
+ <% end %>
@@ -0,0 +1,19 @@
1
+ <% found_method = false %>
2
+ <% object.inheritance_tree(true)[1..-1].each do |superclass| %>
3
+ <% next if superclass.is_a?(YARD::CodeObjects::Proxy) %>
4
+ <% next if options.embed_mixins.size > 0 && options.embed_mixins_match?(superclass) != false %>
5
+ <% meths = prune_method_listing(superclass.meths(:included => false, :inherited => false)) %>
6
+ <% meths.reject! {|m| object.child(:scope => m.scope, :name => m.name) != nil } %>
7
+ <% meths.reject! {|m| m.is_alias? || m.is_attribute? } %>
8
+ <% next if meths.size == 0 %>
9
+ <% if method_listing.size == 0 && !found_method %><h2>Method Summary</h2><% end %>
10
+ <% found_method = true %>
11
+ <h3 class="inherited">Methods <%= superclass.type == :class ? 'inherited' : 'included' %> from <%= linkify superclass %></h3>
12
+ <p class="inherited"><%=
13
+ meths.sort_by {|o| o.name.to_s }.map do |m|
14
+ name = m.name(true)
15
+ name = name.gsub(/^#/,'') if superclass.type == :module && object.class_mixins.include?(superclass)
16
+ linkify(m, name)
17
+ end.join(", ")
18
+ %></p>
19
+ <% end %>
@@ -0,0 +1,40 @@
1
+ <li class="<%= @item.visibility %> <%= @item.has_tag?(:deprecated) ? 'deprecated' : '' %>">
2
+ <span class="summary_signature">
3
+ <% if @item.tags(:overload).size == 1 %>
4
+ <%= signature(@item.tag(:overload), true, false, !@item.attr_info) %>
5
+ <% else %>
6
+ <%= signature(@item, true, false, !@item.attr_info) %>
7
+ <% end %>
8
+
9
+ <% if @item.aliases.size > 0 %>
10
+ (also: <%= @item.aliases.map {|o| h(o.name(true)) }.join(", ") %>)
11
+ <% end %>
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 %>
19
+ <% if @item.constructor? %>
20
+ <span class="note title constructor">constructor</span>
21
+ <% end %>
22
+ <% if rw = @item.attr_info %>
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 %>
29
+ <% end %>
30
+ <% if @item.visibility != :public %><span class="note title <%= @item.visibility %>"><%= @item.visibility %></span><% end %>
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 %>
34
+
35
+ <% if @item.has_tag?(:deprecated) %>
36
+ <span class="summary_desc"><strong>Deprecated.</strong> <%= htmlify_line @item.tag(:deprecated).text %></span>
37
+ <% else %>
38
+ <span class="summary_desc"><%= htmlify_line docstring_summary(@item) %></span>
39
+ <% end %>
40
+ </li>
@@ -0,0 +1,9 @@
1
+ <% scopes(method_listing(false)) do |list, scope| %>
2
+ <div id="<%= scope %>_method_details" class="method_details_list">
3
+ <h2><%= scope.to_s.capitalize %> Method Details</h2>
4
+
5
+ <% list.each_with_index do |meth, i| %>
6
+ <%= yieldall :object => meth, :owner => object, :index => i %>
7
+ <% end %>
8
+ </div>
9
+ <% end %>
@@ -0,0 +1,14 @@
1
+ <% if method_listing.size > 0 %>
2
+ <% groups(method_listing) do |list, name| %>
3
+ <h2>
4
+ <%= name %>
5
+ <small><a href="#" class="summary_toggle">collapse</a></small>
6
+ </h2>
7
+
8
+ <ul class="summary">
9
+ <% list.each do |meth| %>
10
+ <%= yieldall :item => meth %>
11
+ <% end %>
12
+ </ul>
13
+ <% end %>
14
+ <% end %>
@@ -0,0 +1,12 @@
1
+ <div id="method_missing_details" class="method_details_list">
2
+ <h2>Dynamic Method Handling</h2>
3
+ <p class="notice <%= @mm.namespace == object ? 'this' : 'super' %>">
4
+ This class handles dynamic methods through the <tt>method_missing</tt> method
5
+ <% if @mm.namespace != object %>
6
+ in the class <%= linkify @mm, @mm.namespace.path %>
7
+ <% end %>
8
+ </p>
9
+ <% if @mm.namespace == object %>
10
+ <%= yieldall :object => @mm, :index => 0 %>
11
+ <% end %>
12
+ </div>
@@ -0,0 +1 @@
1
+ <h2>Overview</h2>