yard 0.9.5 → 0.9.6

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 (575) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +0 -0
  3. data/CHANGELOG.md +20 -0
  4. data/LEGAL +0 -0
  5. data/LICENSE +0 -0
  6. data/README.md +70 -35
  7. data/Rakefile +10 -39
  8. data/benchmarks/builtins_vs_eval.rb +9 -8
  9. data/benchmarks/concat_vs_join.rb +1 -0
  10. data/benchmarks/erb_vs_erubis.rb +3 -2
  11. data/benchmarks/format_args.rb +1 -0
  12. data/benchmarks/generation.rb +2 -1
  13. data/benchmarks/marshal_vs_dbm.rb +2 -1
  14. data/benchmarks/parsing.rb +1 -1
  15. data/benchmarks/pathname_vs_string.rb +1 -0
  16. data/benchmarks/rdoc_vs_yardoc.rb +2 -1
  17. data/benchmarks/registry_store_types.rb +1 -0
  18. data/benchmarks/ri_vs_yri.rb +1 -0
  19. data/benchmarks/ripper_parser.rb +2 -1
  20. data/benchmarks/splat_vs_flatten.rb +4 -3
  21. data/benchmarks/template_erb.rb +2 -1
  22. data/benchmarks/template_format.rb +1 -0
  23. data/benchmarks/template_profile.rb +4 -3
  24. data/benchmarks/yri_cache.rb +2 -1
  25. data/bin/yard +2 -1
  26. data/bin/yardoc +2 -1
  27. data/bin/yri +2 -1
  28. data/docs/CodeObjects.md +0 -0
  29. data/docs/GettingStarted.md +0 -0
  30. data/docs/Handlers.md +0 -0
  31. data/docs/Overview.md +0 -0
  32. data/docs/Parser.md +0 -0
  33. data/docs/Tags.md +0 -0
  34. data/docs/TagsArch.md +0 -0
  35. data/docs/Templates.md +0 -0
  36. data/docs/WhatsNew.md +0 -0
  37. data/docs/images/code-objects-class-diagram.png +0 -0
  38. data/docs/images/tags-class-diagram.png +0 -0
  39. data/docs/templates/default/fulldoc/html/full_list_tag.erb +0 -0
  40. data/docs/templates/default/fulldoc/html/setup.rb +1 -1
  41. data/docs/templates/default/layout/html/setup.rb +1 -0
  42. data/docs/templates/default/layout/html/tag_list.erb +0 -0
  43. data/docs/templates/default/yard_tags/html/list.erb +0 -0
  44. data/docs/templates/default/yard_tags/html/setup.rb +18 -19
  45. data/docs/templates/plugin.rb +18 -13
  46. data/lib/rubygems_plugin.rb +1 -0
  47. data/lib/yard.rb +5 -6
  48. data/lib/yard/autoload.rb +4 -0
  49. data/lib/yard/cli/command.rb +3 -2
  50. data/lib/yard/cli/command_parser.rb +4 -3
  51. data/lib/yard/cli/config.rb +5 -4
  52. data/lib/yard/cli/diff.rb +39 -39
  53. data/lib/yard/cli/display.rb +2 -1
  54. data/lib/yard/cli/gems.rb +6 -5
  55. data/lib/yard/cli/graph.rb +4 -5
  56. data/lib/yard/cli/help.rb +4 -2
  57. data/lib/yard/cli/i18n.rb +2 -1
  58. data/lib/yard/cli/list.rb +2 -1
  59. data/lib/yard/cli/markup_types.rb +4 -5
  60. data/lib/yard/cli/server.rb +27 -24
  61. data/lib/yard/cli/stats.rb +20 -16
  62. data/lib/yard/cli/yardoc.rb +22 -19
  63. data/lib/yard/cli/yardopts_command.rb +3 -2
  64. data/lib/yard/cli/yri.rb +26 -25
  65. data/lib/yard/code_objects/base.rb +41 -37
  66. data/lib/yard/code_objects/class_object.rb +3 -2
  67. data/lib/yard/code_objects/class_variable_object.rb +2 -1
  68. data/lib/yard/code_objects/constant_object.rb +2 -1
  69. data/lib/yard/code_objects/extended_method_object.rb +2 -1
  70. data/lib/yard/code_objects/extra_file_object.rb +1 -0
  71. data/lib/yard/code_objects/macro_object.rb +10 -10
  72. data/lib/yard/code_objects/method_object.rb +15 -13
  73. data/lib/yard/code_objects/module_object.rb +1 -0
  74. data/lib/yard/code_objects/namespace_mapper.rb +1 -0
  75. data/lib/yard/code_objects/namespace_object.rb +2 -5
  76. data/lib/yard/code_objects/proxy.rb +35 -53
  77. data/lib/yard/code_objects/root_object.rb +3 -1
  78. data/lib/yard/config.rb +8 -9
  79. data/lib/yard/core_ext/array.rb +1 -0
  80. data/lib/yard/core_ext/file.rb +4 -3
  81. data/lib/yard/core_ext/hash.rb +3 -2
  82. data/lib/yard/core_ext/insertion.rb +7 -4
  83. data/lib/yard/core_ext/module.rb +2 -1
  84. data/lib/yard/core_ext/string.rb +5 -4
  85. data/lib/yard/core_ext/symbol_hash.rb +8 -6
  86. data/lib/yard/docstring.rb +26 -15
  87. data/lib/yard/docstring_parser.rb +61 -61
  88. data/lib/yard/gem_index.rb +17 -0
  89. data/lib/yard/globals.rb +6 -2
  90. data/lib/yard/handlers/base.rb +22 -23
  91. data/lib/yard/handlers/c/alias_handler.rb +3 -2
  92. data/lib/yard/handlers/c/attribute_handler.rb +2 -2
  93. data/lib/yard/handlers/c/base.rb +13 -13
  94. data/lib/yard/handlers/c/class_handler.rb +1 -0
  95. data/lib/yard/handlers/c/constant_handler.rb +3 -2
  96. data/lib/yard/handlers/c/handler_methods.rb +24 -25
  97. data/lib/yard/handlers/c/init_handler.rb +4 -2
  98. data/lib/yard/handlers/c/method_handler.rb +7 -6
  99. data/lib/yard/handlers/c/mixin_handler.rb +3 -1
  100. data/lib/yard/handlers/c/module_handler.rb +1 -0
  101. data/lib/yard/handlers/c/override_comment_handler.rb +2 -1
  102. data/lib/yard/handlers/c/path_handler.rb +1 -0
  103. data/lib/yard/handlers/c/struct_handler.rb +1 -0
  104. data/lib/yard/handlers/c/symbol_handler.rb +2 -1
  105. data/lib/yard/handlers/processor.rb +14 -15
  106. data/lib/yard/handlers/ruby/alias_handler.rb +4 -2
  107. data/lib/yard/handlers/ruby/attribute_handler.rb +11 -6
  108. data/lib/yard/handlers/ruby/base.rb +5 -4
  109. data/lib/yard/handlers/ruby/class_condition_handler.rb +4 -3
  110. data/lib/yard/handlers/ruby/class_handler.rb +7 -9
  111. data/lib/yard/handlers/ruby/class_variable_handler.rb +2 -1
  112. data/lib/yard/handlers/ruby/comment_handler.rb +1 -0
  113. data/lib/yard/handlers/ruby/constant_handler.rb +9 -5
  114. data/lib/yard/handlers/ruby/decorator_handler_methods.rb +15 -28
  115. data/lib/yard/handlers/ruby/dsl_handler.rb +1 -0
  116. data/lib/yard/handlers/ruby/dsl_handler_methods.rb +7 -6
  117. data/lib/yard/handlers/ruby/exception_handler.rb +1 -0
  118. data/lib/yard/handlers/ruby/extend_handler.rb +1 -0
  119. data/lib/yard/handlers/ruby/legacy/alias_handler.rb +6 -4
  120. data/lib/yard/handlers/ruby/legacy/attribute_handler.rb +12 -7
  121. data/lib/yard/handlers/ruby/legacy/base.rb +21 -26
  122. data/lib/yard/handlers/ruby/legacy/class_condition_handler.rb +7 -7
  123. data/lib/yard/handlers/ruby/legacy/class_handler.rb +7 -5
  124. data/lib/yard/handlers/ruby/legacy/class_variable_handler.rb +2 -1
  125. data/lib/yard/handlers/ruby/legacy/comment_handler.rb +1 -0
  126. data/lib/yard/handlers/ruby/legacy/constant_handler.rb +2 -1
  127. data/lib/yard/handlers/ruby/legacy/dsl_handler.rb +1 -0
  128. data/lib/yard/handlers/ruby/legacy/exception_handler.rb +2 -1
  129. data/lib/yard/handlers/ruby/legacy/extend_handler.rb +2 -1
  130. data/lib/yard/handlers/ruby/legacy/method_handler.rb +11 -6
  131. data/lib/yard/handlers/ruby/legacy/mixin_handler.rb +5 -5
  132. data/lib/yard/handlers/ruby/legacy/module_function_handler.rb +2 -1
  133. data/lib/yard/handlers/ruby/legacy/module_handler.rb +2 -1
  134. data/lib/yard/handlers/ruby/legacy/private_class_method_handler.rb +2 -1
  135. data/lib/yard/handlers/ruby/legacy/private_constant_handler.rb +2 -1
  136. data/lib/yard/handlers/ruby/legacy/visibility_handler.rb +3 -2
  137. data/lib/yard/handlers/ruby/legacy/yield_handler.rb +1 -0
  138. data/lib/yard/handlers/ruby/method_condition_handler.rb +2 -1
  139. data/lib/yard/handlers/ruby/method_handler.rb +9 -11
  140. data/lib/yard/handlers/ruby/mixin_handler.rb +2 -1
  141. data/lib/yard/handlers/ruby/module_function_handler.rb +2 -1
  142. data/lib/yard/handlers/ruby/module_handler.rb +2 -1
  143. data/lib/yard/handlers/ruby/private_class_method_handler.rb +1 -0
  144. data/lib/yard/handlers/ruby/private_constant_handler.rb +2 -2
  145. data/lib/yard/handlers/ruby/public_class_method_handler.rb +1 -0
  146. data/lib/yard/handlers/ruby/struct_handler_methods.rb +5 -4
  147. data/lib/yard/handlers/ruby/visibility_handler.rb +1 -0
  148. data/lib/yard/handlers/ruby/yield_handler.rb +1 -0
  149. data/lib/yard/i18n/locale.rb +1 -0
  150. data/lib/yard/i18n/message.rb +5 -4
  151. data/lib/yard/i18n/messages.rb +2 -1
  152. data/lib/yard/i18n/po_parser.rb +5 -4
  153. data/lib/yard/i18n/pot_generator.rb +8 -8
  154. data/lib/yard/i18n/text.rb +9 -9
  155. data/lib/yard/logging.rb +9 -6
  156. data/lib/yard/options.rb +8 -7
  157. data/lib/yard/parser/base.rb +3 -2
  158. data/lib/yard/parser/c/c_parser.rb +22 -21
  159. data/lib/yard/parser/c/comment_parser.rb +9 -6
  160. data/lib/yard/parser/c/statement.rb +1 -0
  161. data/lib/yard/parser/ruby/ast_node.rb +20 -18
  162. data/lib/yard/parser/ruby/legacy/ruby_lex.rb +99 -122
  163. data/lib/yard/parser/ruby/legacy/ruby_parser.rb +3 -2
  164. data/lib/yard/parser/ruby/legacy/statement.rb +4 -3
  165. data/lib/yard/parser/ruby/legacy/statement_list.rb +52 -42
  166. data/lib/yard/parser/ruby/legacy/token_list.rb +16 -13
  167. data/lib/yard/parser/ruby/ruby_parser.rb +87 -63
  168. data/lib/yard/parser/ruby/token_resolver.rb +156 -0
  169. data/lib/yard/parser/source_parser.rb +28 -20
  170. data/lib/yard/rake/yardoc_task.rb +3 -3
  171. data/lib/yard/registry.rb +14 -16
  172. data/lib/yard/registry_resolver.rb +36 -20
  173. data/lib/yard/registry_store.rb +19 -15
  174. data/lib/yard/rubygems/backports.rb +2 -0
  175. data/lib/yard/rubygems/backports/LICENSE.txt +0 -0
  176. data/lib/yard/rubygems/backports/MIT.txt +0 -0
  177. data/lib/yard/rubygems/backports/gem.rb +1 -0
  178. data/lib/yard/rubygems/backports/source_index.rb +25 -30
  179. data/lib/yard/rubygems/doc_manager.rb +10 -8
  180. data/lib/yard/rubygems/hook.rb +11 -18
  181. data/lib/yard/rubygems/specification.rb +1 -0
  182. data/lib/yard/serializers/base.rb +5 -2
  183. data/lib/yard/serializers/file_system_serializer.rb +7 -6
  184. data/lib/yard/serializers/process_serializer.rb +2 -2
  185. data/lib/yard/serializers/stdout_serializer.rb +8 -6
  186. data/lib/yard/serializers/yardoc_serializer.rb +31 -26
  187. data/lib/yard/server.rb +2 -1
  188. data/lib/yard/server/adapter.rb +1 -1
  189. data/lib/yard/server/commands/base.rb +15 -2
  190. data/lib/yard/server/commands/display_file_command.rb +2 -2
  191. data/lib/yard/server/commands/display_object_command.rb +6 -3
  192. data/lib/yard/server/commands/frames_command.rb +1 -0
  193. data/lib/yard/server/commands/library_command.rb +50 -14
  194. data/lib/yard/server/commands/library_index_command.rb +5 -4
  195. data/lib/yard/server/commands/list_command.rb +1 -0
  196. data/lib/yard/server/commands/root_request_command.rb +1 -0
  197. data/lib/yard/server/commands/search_command.rb +17 -16
  198. data/lib/yard/server/commands/static_file_command.rb +2 -1
  199. data/lib/yard/server/commands/static_file_helpers.rb +23 -14
  200. data/lib/yard/server/doc_server_helper.rb +15 -1
  201. data/lib/yard/server/doc_server_serializer.rb +3 -5
  202. data/lib/yard/server/library_version.rb +44 -22
  203. data/lib/yard/server/rack_adapter.rb +2 -1
  204. data/lib/yard/server/router.rb +15 -14
  205. data/lib/yard/server/static_caching.rb +1 -0
  206. data/lib/yard/server/templates/default/fulldoc/html/css/custom.css +0 -0
  207. data/lib/yard/server/templates/default/fulldoc/html/images/processing.gif +0 -0
  208. data/lib/yard/server/templates/default/fulldoc/html/js/autocomplete.js +0 -0
  209. data/lib/yard/server/templates/default/layout/html/breadcrumb.erb +0 -0
  210. data/lib/yard/server/templates/default/layout/html/script_setup.erb +0 -0
  211. data/lib/yard/server/templates/default/layout/html/setup.rb +2 -1
  212. data/lib/yard/server/templates/default/method_details/html/permalink.erb +0 -0
  213. data/lib/yard/server/templates/default/method_details/html/setup.rb +1 -0
  214. data/lib/yard/server/templates/doc_server/library_list/html/headers.erb +2 -2
  215. data/lib/yard/server/templates/doc_server/library_list/html/library_list.erb +0 -0
  216. data/lib/yard/server/templates/doc_server/library_list/html/listing.erb +1 -1
  217. data/lib/yard/server/templates/doc_server/library_list/html/setup.rb +2 -1
  218. data/lib/yard/server/templates/doc_server/library_list/html/title.erb +0 -0
  219. data/lib/yard/server/templates/doc_server/processing/html/processing.erb +4 -4
  220. data/lib/yard/server/templates/doc_server/processing/html/setup.rb +2 -1
  221. data/lib/yard/server/templates/doc_server/search/html/search.erb +0 -0
  222. data/lib/yard/server/templates/doc_server/search/html/setup.rb +2 -1
  223. data/lib/yard/server/webrick_adapter.rb +4 -2
  224. data/lib/yard/tags/default_factory.rb +19 -13
  225. data/lib/yard/tags/default_tag.rb +2 -1
  226. data/lib/yard/tags/directives.rb +17 -19
  227. data/lib/yard/tags/library.rb +9 -6
  228. data/lib/yard/tags/option_tag.rb +1 -0
  229. data/lib/yard/tags/overload_tag.rb +6 -4
  230. data/lib/yard/tags/ref_tag.rb +1 -0
  231. data/lib/yard/tags/ref_tag_list.rb +2 -1
  232. data/lib/yard/tags/tag.rb +16 -2
  233. data/lib/yard/tags/tag_format_error.rb +3 -2
  234. data/lib/yard/tags/types_explainer.rb +160 -0
  235. data/lib/yard/templates/engine.rb +3 -2
  236. data/lib/yard/templates/erb_cache.rb +3 -2
  237. data/lib/yard/templates/helpers/base_helper.rb +9 -6
  238. data/lib/yard/templates/helpers/filter_helper.rb +1 -0
  239. data/lib/yard/templates/helpers/html_helper.rb +65 -37
  240. data/lib/yard/templates/helpers/html_syntax_highlight_helper.rb +25 -7
  241. data/lib/yard/templates/helpers/markup/rdoc_markdown.rb +2 -1
  242. data/lib/yard/templates/helpers/markup/rdoc_markup.rb +10 -7
  243. data/lib/yard/templates/helpers/markup_helper.rb +12 -13
  244. data/lib/yard/templates/helpers/method_helper.rb +8 -7
  245. data/lib/yard/templates/helpers/module_helper.rb +1 -0
  246. data/lib/yard/templates/helpers/text_helper.rb +16 -11
  247. data/lib/yard/templates/helpers/uml_helper.rb +2 -1
  248. data/lib/yard/templates/section.rb +3 -4
  249. data/lib/yard/templates/template.rb +18 -11
  250. data/lib/yard/templates/template_options.rb +1 -0
  251. data/lib/yard/verifier.rb +2 -0
  252. data/lib/yard/version.rb +2 -1
  253. data/spec/cli/command_parser_spec.rb +7 -7
  254. data/spec/cli/command_spec.rb +2 -2
  255. data/spec/cli/config_spec.rb +3 -4
  256. data/spec/cli/diff_spec.rb +7 -9
  257. data/spec/cli/display_spec.rb +2 -2
  258. data/spec/cli/gems_spec.rb +11 -11
  259. data/spec/cli/graph_spec.rb +4 -3
  260. data/spec/cli/help_spec.rb +3 -3
  261. data/spec/cli/i18n_spec.rb +3 -3
  262. data/spec/cli/list_spec.rb +2 -2
  263. data/spec/cli/markup_types_spec.rb +2 -2
  264. data/spec/cli/server_spec.rb +21 -18
  265. data/spec/cli/stats_spec.rb +23 -22
  266. data/spec/cli/yardoc_spec.rb +49 -47
  267. data/spec/cli/yri_spec.rb +6 -6
  268. data/spec/code_objects/base_spec.rb +6 -4
  269. data/spec/code_objects/class_object_spec.rb +10 -9
  270. data/spec/code_objects/code_object_list_spec.rb +3 -2
  271. data/spec/code_objects/constants_spec.rb +17 -6
  272. data/spec/code_objects/extra_file_object_spec.rb +6 -5
  273. data/spec/code_objects/macro_object_spec.rb +5 -3
  274. data/spec/code_objects/method_object_spec.rb +6 -5
  275. data/spec/code_objects/module_object_spec.rb +3 -2
  276. data/spec/code_objects/namespace_object_spec.rb +10 -9
  277. data/spec/code_objects/proxy_spec.rb +9 -8
  278. data/spec/code_objects/spec_helper.rb +2 -2
  279. data/spec/config_spec.rb +9 -14
  280. data/spec/core_ext/array_spec.rb +2 -3
  281. data/spec/core_ext/file_spec.rb +3 -3
  282. data/spec/core_ext/hash_spec.rb +5 -5
  283. data/spec/core_ext/insertion_spec.rb +2 -2
  284. data/spec/core_ext/module_spec.rb +3 -3
  285. data/spec/core_ext/string_spec.rb +5 -5
  286. data/spec/core_ext/symbol_hash_spec.rb +8 -8
  287. data/spec/docstring_parser_spec.rb +6 -7
  288. data/spec/docstring_spec.rb +30 -3
  289. data/spec/examples.txt +1848 -0
  290. data/spec/handlers/alias_handler_spec.rb +2 -1
  291. data/spec/handlers/attribute_handler_spec.rb +7 -5
  292. data/spec/handlers/base_spec.rb +9 -8
  293. data/spec/handlers/c/alias_handler_spec.rb +2 -1
  294. data/spec/handlers/c/attribute_handler_spec.rb +2 -1
  295. data/spec/handlers/c/class_handler_spec.rb +2 -1
  296. data/spec/handlers/c/constant_handler_spec.rb +5 -4
  297. data/spec/handlers/c/init_handler_spec.rb +2 -1
  298. data/spec/handlers/c/method_handler_spec.rb +2 -1
  299. data/spec/handlers/c/mixin_handler_spec.rb +2 -1
  300. data/spec/handlers/c/module_handler_spec.rb +2 -1
  301. data/spec/handlers/c/override_comment_handler_spec.rb +2 -1
  302. data/spec/handlers/c/path_handler_spec.rb +2 -1
  303. data/spec/handlers/c/spec_helper.rb +1 -1
  304. data/spec/handlers/c/struct_handler_spec.rb +3 -2
  305. data/spec/handlers/class_condition_handler_spec.rb +3 -2
  306. data/spec/handlers/class_handler_spec.rb +3 -2
  307. data/spec/handlers/class_method_handler_shared_examples.rb +9 -8
  308. data/spec/handlers/class_variable_handler_spec.rb +3 -2
  309. data/spec/handlers/constant_handler_spec.rb +28 -3
  310. data/spec/handlers/decorator_handler_methods_spec.rb +47 -59
  311. data/spec/handlers/dsl_handler_spec.rb +3 -2
  312. data/spec/handlers/examples/alias_handler_001.rb.txt +0 -0
  313. data/spec/handlers/examples/attribute_handler_001.rb.txt +0 -0
  314. data/spec/handlers/examples/class_condition_handler_001.rb.txt +0 -0
  315. data/spec/handlers/examples/class_handler_001.rb.txt +0 -0
  316. data/spec/handlers/examples/class_variable_handler_001.rb.txt +0 -0
  317. data/spec/handlers/examples/constant_handler_001.rb.txt +0 -0
  318. data/spec/handlers/examples/dsl_handler_001.rb.txt +0 -0
  319. data/spec/handlers/examples/exception_handler_001.rb.txt +0 -0
  320. data/spec/handlers/examples/extend_handler_001.rb.txt +0 -0
  321. data/spec/handlers/examples/method_condition_handler_001.rb.txt +0 -0
  322. data/spec/handlers/examples/method_handler_001.rb.txt +2 -0
  323. data/spec/handlers/examples/mixin_handler_001.rb.txt +0 -0
  324. data/spec/handlers/examples/module_handler_001.rb.txt +0 -0
  325. data/spec/handlers/examples/private_constant_handler_001.rb.txt +0 -0
  326. data/spec/handlers/examples/process_handler_001.rb.txt +0 -0
  327. data/spec/handlers/examples/visibility_handler_001.rb.txt +0 -0
  328. data/spec/handlers/examples/yield_handler_001.rb.txt +0 -0
  329. data/spec/handlers/exception_handler_spec.rb +3 -2
  330. data/spec/handlers/extend_handler_spec.rb +2 -1
  331. data/spec/handlers/legacy_base_spec.rb +5 -5
  332. data/spec/handlers/method_condition_handler_spec.rb +3 -2
  333. data/spec/handlers/method_handler_spec.rb +7 -1
  334. data/spec/handlers/mixin_handler_spec.rb +3 -2
  335. data/spec/handlers/module_function_handler_spec.rb +2 -1
  336. data/spec/handlers/module_handler_spec.rb +3 -2
  337. data/spec/handlers/private_class_method_handler_spec.rb +2 -1
  338. data/spec/handlers/private_constant_handler_spec.rb +2 -1
  339. data/spec/handlers/processor_spec.rb +2 -1
  340. data/spec/handlers/public_class_method_handler_spec.rb +2 -1
  341. data/spec/handlers/ruby/base_spec.rb +6 -5
  342. data/spec/handlers/ruby/legacy/base_spec.rb +4 -4
  343. data/spec/handlers/spec_helper.rb +3 -3
  344. data/spec/handlers/visibility_handler_spec.rb +3 -2
  345. data/spec/handlers/yield_handler_spec.rb +3 -2
  346. data/spec/i18n/locale_spec.rb +3 -3
  347. data/spec/i18n/message_spec.rb +2 -2
  348. data/spec/i18n/messages_spec.rb +3 -3
  349. data/spec/i18n/pot_generator_spec.rb +34 -34
  350. data/spec/i18n/text_spec.rb +16 -12
  351. data/spec/logging_spec.rb +2 -2
  352. data/spec/options_spec.rb +9 -9
  353. data/spec/parser/base_spec.rb +2 -2
  354. data/spec/parser/c_parser_spec.rb +5 -4
  355. data/spec/parser/examples/array.c.txt +0 -0
  356. data/spec/parser/examples/example1.rb.txt +0 -0
  357. data/spec/parser/examples/extrafile.c.txt +0 -0
  358. data/spec/parser/examples/multifile.c.txt +0 -0
  359. data/spec/parser/examples/override.c.txt +0 -0
  360. data/spec/parser/examples/parse_in_order_001.rb.txt +0 -0
  361. data/spec/parser/examples/parse_in_order_002.rb.txt +0 -0
  362. data/spec/parser/examples/tag_handler_001.rb.txt +0 -0
  363. data/spec/parser/ruby/ast_node_spec.rb +7 -7
  364. data/spec/parser/ruby/legacy/statement_list_spec.rb +7 -7
  365. data/spec/parser/ruby/legacy/token_list_spec.rb +4 -4
  366. data/spec/parser/ruby/ruby_parser_spec.rb +42 -20
  367. data/spec/parser/ruby/token_resolver_spec.rb +165 -0
  368. data/spec/parser/source_parser_spec.rb +18 -18
  369. data/spec/parser/tag_parsing_spec.rb +2 -2
  370. data/spec/rake/yardoc_task_spec.rb +4 -4
  371. data/spec/registry_spec.rb +62 -56
  372. data/spec/registry_store_spec.rb +7 -7
  373. data/spec/rubygems/doc_manager_spec.rb +2 -2
  374. data/spec/serializers/data/serialized_yardoc/checksums +0 -0
  375. data/spec/serializers/data/serialized_yardoc/objects/Foo.dat +0 -0
  376. data/spec/serializers/data/serialized_yardoc/objects/Foo/bar_i.dat +0 -0
  377. data/spec/serializers/data/serialized_yardoc/objects/Foo/baz_i.dat +0 -0
  378. data/spec/serializers/data/serialized_yardoc/objects/root.dat +0 -0
  379. data/spec/serializers/data/serialized_yardoc/proxy_types +0 -0
  380. data/spec/serializers/file_system_serializer_spec.rb +8 -7
  381. data/spec/serializers/spec_helper.rb +2 -2
  382. data/spec/serializers/yardoc_serializer_spec.rb +5 -4
  383. data/spec/server/adapter_spec.rb +3 -2
  384. data/spec/server/commands/base_spec.rb +15 -11
  385. data/spec/server/commands/library_command_spec.rb +2 -2
  386. data/spec/server/doc_server_helper_spec.rb +4 -3
  387. data/spec/server/doc_server_serializer_spec.rb +3 -2
  388. data/spec/server/rack_adapter_spec.rb +3 -2
  389. data/spec/server/router_spec.rb +3 -2
  390. data/spec/server/spec_helper.rb +2 -2
  391. data/spec/server/static_caching_spec.rb +4 -3
  392. data/spec/server/webrick_servlet_spec.rb +5 -4
  393. data/spec/server_spec.rb +3 -3
  394. data/spec/spec_helper.rb +94 -21
  395. data/spec/tags/default_factory_spec.rb +10 -4
  396. data/spec/tags/default_tag_spec.rb +3 -3
  397. data/spec/tags/directives_spec.rb +12 -12
  398. data/spec/tags/library_spec.rb +16 -2
  399. data/spec/tags/overload_tag_spec.rb +4 -4
  400. data/spec/tags/ref_tag_list_spec.rb +3 -3
  401. data/spec/tags/types_explainer_spec.rb +200 -0
  402. data/spec/templates/class_spec.rb +2 -1
  403. data/spec/templates/constant_spec.rb +3 -2
  404. data/spec/templates/engine_spec.rb +4 -3
  405. data/spec/templates/examples/class001.html +0 -0
  406. data/spec/templates/examples/class001.txt +0 -0
  407. data/spec/templates/examples/class002.html +0 -0
  408. data/spec/templates/examples/constant001.txt +0 -0
  409. data/spec/templates/examples/constant002.txt +0 -0
  410. data/spec/templates/examples/constant003.txt +0 -0
  411. data/spec/templates/examples/method001.html +0 -0
  412. data/spec/templates/examples/method001.txt +0 -0
  413. data/spec/templates/examples/method002.html +0 -0
  414. data/spec/templates/examples/method002.txt +0 -0
  415. data/spec/templates/examples/method003.html +0 -0
  416. data/spec/templates/examples/method003.txt +0 -0
  417. data/spec/templates/examples/method004.html +0 -0
  418. data/spec/templates/examples/method004.txt +0 -0
  419. data/spec/templates/examples/method005.html +0 -0
  420. data/spec/templates/examples/method005.txt +0 -0
  421. data/spec/templates/examples/method006.html +108 -0
  422. data/spec/templates/examples/method006.txt +20 -0
  423. data/spec/templates/examples/module001.dot +0 -0
  424. data/spec/templates/examples/module001.html +0 -0
  425. data/spec/templates/examples/module001.txt +0 -0
  426. data/spec/templates/examples/module002.html +0 -0
  427. data/spec/templates/examples/module003.html +0 -0
  428. data/spec/templates/examples/module004.html +0 -0
  429. data/spec/templates/examples/tag001.txt +0 -0
  430. data/spec/templates/helpers/base_helper_spec.rb +5 -5
  431. data/spec/templates/helpers/html_helper_spec.rb +64 -60
  432. data/spec/templates/helpers/html_syntax_highlight_helper_spec.rb +17 -6
  433. data/spec/templates/helpers/markup/rdoc_markup_spec.rb +11 -13
  434. data/spec/templates/helpers/markup_helper_spec.rb +2 -2
  435. data/spec/templates/helpers/method_helper_spec.rb +3 -3
  436. data/spec/templates/helpers/module_helper_spec.rb +2 -2
  437. data/spec/templates/helpers/shared_signature_examples.rb +2 -1
  438. data/spec/templates/helpers/text_helper_spec.rb +7 -6
  439. data/spec/templates/method_spec.rb +18 -2
  440. data/spec/templates/module_spec.rb +4 -3
  441. data/spec/templates/onefile_spec.rb +8 -6
  442. data/spec/templates/section_spec.rb +3 -2
  443. data/spec/templates/spec_helper.rb +5 -2
  444. data/spec/templates/tag_spec.rb +3 -2
  445. data/spec/templates/template_spec.rb +15 -14
  446. data/spec/verifier_spec.rb +3 -3
  447. data/templates/default/class/dot/setup.rb +2 -1
  448. data/templates/default/class/dot/superklass.erb +0 -0
  449. data/templates/default/class/html/constructor_details.erb +0 -0
  450. data/templates/default/class/html/setup.rb +2 -1
  451. data/templates/default/class/html/subclasses.erb +0 -0
  452. data/templates/default/class/setup.rb +6 -6
  453. data/templates/default/class/text/setup.rb +2 -1
  454. data/templates/default/class/text/subclasses.erb +0 -0
  455. data/templates/default/constant/text/header.erb +0 -0
  456. data/templates/default/constant/text/setup.rb +1 -0
  457. data/templates/default/docstring/html/abstract.erb +0 -0
  458. data/templates/default/docstring/html/deprecated.erb +0 -0
  459. data/templates/default/docstring/html/index.erb +0 -0
  460. data/templates/default/docstring/html/note.erb +0 -0
  461. data/templates/default/docstring/html/private.erb +0 -0
  462. data/templates/default/docstring/html/returns_void.erb +0 -0
  463. data/templates/default/docstring/html/text.erb +0 -0
  464. data/templates/default/docstring/html/todo.erb +0 -0
  465. data/templates/default/docstring/setup.rb +4 -3
  466. data/templates/default/docstring/text/abstract.erb +0 -0
  467. data/templates/default/docstring/text/deprecated.erb +0 -0
  468. data/templates/default/docstring/text/index.erb +0 -0
  469. data/templates/default/docstring/text/note.erb +0 -0
  470. data/templates/default/docstring/text/private.erb +0 -0
  471. data/templates/default/docstring/text/returns_void.erb +0 -0
  472. data/templates/default/docstring/text/text.erb +0 -0
  473. data/templates/default/docstring/text/todo.erb +0 -0
  474. data/templates/default/fulldoc/html/css/common.css +0 -0
  475. data/templates/default/fulldoc/html/css/full_list.css +0 -0
  476. data/templates/default/fulldoc/html/css/style.css +31 -20
  477. data/templates/default/fulldoc/html/frames.erb +0 -0
  478. data/templates/default/fulldoc/html/full_list.erb +2 -2
  479. data/templates/default/fulldoc/html/full_list_class.erb +0 -0
  480. data/templates/default/fulldoc/html/full_list_file.erb +0 -0
  481. data/templates/default/fulldoc/html/full_list_method.erb +0 -0
  482. data/templates/default/fulldoc/html/js/app.js +3 -3
  483. data/templates/default/fulldoc/html/js/full_list.js +0 -0
  484. data/templates/default/fulldoc/html/js/jquery.js +0 -0
  485. data/templates/default/fulldoc/html/setup.rb +22 -23
  486. data/templates/default/layout/dot/header.erb +0 -0
  487. data/templates/default/layout/dot/setup.rb +1 -0
  488. data/templates/default/layout/html/breadcrumb.erb +0 -0
  489. data/templates/default/layout/html/files.erb +0 -0
  490. data/templates/default/layout/html/footer.erb +0 -0
  491. data/templates/default/layout/html/headers.erb +2 -2
  492. data/templates/default/layout/html/index.erb +0 -0
  493. data/templates/default/layout/html/layout.erb +1 -3
  494. data/templates/default/layout/html/listing.erb +0 -0
  495. data/templates/default/layout/html/objects.erb +0 -0
  496. data/templates/default/layout/html/script_setup.erb +0 -0
  497. data/templates/default/layout/html/search.erb +0 -0
  498. data/templates/default/layout/html/setup.rb +21 -19
  499. data/templates/default/method/html/header.erb +0 -0
  500. data/templates/default/method/setup.rb +2 -1
  501. data/templates/default/method/text/header.erb +0 -0
  502. data/templates/default/method_details/html/header.erb +0 -0
  503. data/templates/default/method_details/html/method_signature.erb +0 -0
  504. data/templates/default/method_details/html/source.erb +0 -0
  505. data/templates/default/method_details/setup.rb +1 -0
  506. data/templates/default/method_details/text/header.erb +0 -0
  507. data/templates/default/method_details/text/method_signature.erb +0 -0
  508. data/templates/default/method_details/text/setup.rb +3 -2
  509. data/templates/default/module/dot/child.erb +0 -0
  510. data/templates/default/module/dot/dependencies.erb +0 -0
  511. data/templates/default/module/dot/header.erb +0 -0
  512. data/templates/default/module/dot/info.erb +0 -0
  513. data/templates/default/module/dot/setup.rb +2 -1
  514. data/templates/default/module/html/attribute_details.erb +0 -0
  515. data/templates/default/module/html/attribute_summary.erb +0 -0
  516. data/templates/default/module/html/box_info.erb +0 -0
  517. data/templates/default/module/html/children.erb +0 -0
  518. data/templates/default/module/html/constant_summary.erb +0 -0
  519. data/templates/default/module/html/defines.erb +0 -0
  520. data/templates/default/module/html/header.erb +0 -0
  521. data/templates/default/module/html/inherited_attributes.erb +0 -0
  522. data/templates/default/module/html/inherited_constants.erb +0 -0
  523. data/templates/default/module/html/inherited_methods.erb +0 -0
  524. data/templates/default/module/html/item_summary.erb +0 -0
  525. data/templates/default/module/html/method_details_list.erb +0 -0
  526. data/templates/default/module/html/method_summary.erb +0 -0
  527. data/templates/default/module/html/methodmissing.erb +0 -0
  528. data/templates/default/module/html/pre_docstring.erb +0 -0
  529. data/templates/default/module/setup.rb +24 -26
  530. data/templates/default/module/text/children.erb +0 -0
  531. data/templates/default/module/text/class_meths_list.erb +0 -0
  532. data/templates/default/module/text/extends.erb +0 -0
  533. data/templates/default/module/text/header.erb +0 -0
  534. data/templates/default/module/text/includes.erb +0 -0
  535. data/templates/default/module/text/instance_meths_list.erb +0 -0
  536. data/templates/default/module/text/setup.rb +2 -1
  537. data/templates/default/onefile/html/files.erb +0 -0
  538. data/templates/default/onefile/html/headers.erb +0 -0
  539. data/templates/default/onefile/html/layout.erb +3 -3
  540. data/templates/default/onefile/html/readme.erb +0 -0
  541. data/templates/default/onefile/html/setup.rb +9 -8
  542. data/templates/default/root/dot/child.erb +0 -0
  543. data/templates/default/root/dot/setup.rb +3 -2
  544. data/templates/default/root/html/setup.rb +2 -1
  545. data/templates/default/tags/html/example.erb +0 -0
  546. data/templates/default/tags/html/index.erb +0 -0
  547. data/templates/default/tags/html/option.erb +1 -1
  548. data/templates/default/tags/html/overload.erb +0 -0
  549. data/templates/default/tags/html/see.erb +0 -0
  550. data/templates/default/tags/html/tag.erb +1 -1
  551. data/templates/default/tags/setup.rb +7 -5
  552. data/templates/default/tags/text/example.erb +0 -0
  553. data/templates/default/tags/text/index.erb +0 -0
  554. data/templates/default/tags/text/option.erb +1 -1
  555. data/templates/default/tags/text/overload.erb +0 -0
  556. data/templates/default/tags/text/see.erb +0 -0
  557. data/templates/default/tags/text/tag.erb +2 -2
  558. data/templates/guide/class/html/setup.rb +1 -0
  559. data/templates/guide/docstring/html/setup.rb +1 -0
  560. data/templates/guide/fulldoc/html/css/style.css +0 -0
  561. data/templates/guide/fulldoc/html/js/app.js +0 -0
  562. data/templates/guide/fulldoc/html/setup.rb +7 -6
  563. data/templates/guide/layout/html/layout.erb +0 -0
  564. data/templates/guide/layout/html/setup.rb +2 -5
  565. data/templates/guide/method/html/header.erb +0 -0
  566. data/templates/guide/method/html/setup.rb +5 -4
  567. data/templates/guide/module/html/header.erb +0 -0
  568. data/templates/guide/module/html/method_list.erb +0 -0
  569. data/templates/guide/module/html/setup.rb +2 -1
  570. data/templates/guide/onefile/html/files.erb +0 -0
  571. data/templates/guide/onefile/html/setup.rb +1 -0
  572. data/templates/guide/onefile/html/toc.erb +0 -0
  573. data/templates/guide/tags/html/setup.rb +1 -0
  574. data/yard.gemspec +2 -1
  575. metadata +10 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f93ca569b327f662d35892e83a4799a91868da56
4
- data.tar.gz: c185c90879b8b862d40bb3eee2da95e67311e568
3
+ metadata.gz: 3c4860f6272d455388884ec3b5b0e5bf1908eca8
4
+ data.tar.gz: 66dab77e0af3f3a08aeb774e108c9861fc3d9139
5
5
  SHA512:
6
- metadata.gz: 1f0cf4b6767842dcd90879cd6039e510767af156c17f6722b46028d239bca925dc854b5399009a27615761a50875523f7e2aa27f89b4e6f5f7d9d101d48f9ef2
7
- data.tar.gz: 85d0822f567fb4caad941758e54f7805bceae24dbe1f84a31c4c0ae79658ddafb152c1646e3d65201847a69288133d7227a442825fbf0560b8399ff26714a6e6
6
+ metadata.gz: 0cdde30bedcc5c8d6bedbbc5d1f6e66db612059407ec9d1d7bc3d66813602e7e835949897bc844db74497315444139be9d098489b22b31c5998182b3b39c98fb
7
+ data.tar.gz: 3e463b1aac3301801bf496dc3fb474bd229fb40c3d585b4fabf5a6018f6dc70db787e4e18179b06627a59b59fd9f3cfb53883e9a1feebf2e88838052d55f5f47
data/.yardopts CHANGED
File without changes
data/CHANGELOG.md CHANGED
@@ -1,3 +1,23 @@
1
+ # Master branch (unreleased)
2
+
3
+ - Removed official support for Ruby 1.x (1.8/1.9). YARD can still be installed
4
+ in these versions, but support is not guaranteed. Simple bug fixes may still
5
+ be considered via pull request only. Issues without code will be automatically
6
+ closed.
7
+ - Added {YARD::Tags::Tag#explain_types} returning a plain English summary
8
+ of the type specification of a given tag. Also adds {YARD::Tags::TypesExplainer}
9
+ as an implementation class for the method.
10
+ - Added support for automatic linking of constants and method calls of
11
+ Ruby syntax highlighted source code in generated HTML. Also adds the
12
+ {YARD::Parser::Ruby::TokenResolver} implementation class to iterate over
13
+ tokenized code with extra resolved object information.
14
+ - Added support for compound constant assignments (`A::B::C = true`).
15
+ - Added `LibraryVersion#yardoc_file_for_SOURCE` callback method for sources with
16
+ a pre-determined yardoc file location. Implement this method instead of
17
+ manually setting `library.yardoc_file = ...` in your load method (you can
18
+ still assign the attribute manually).
19
+ - Use RubyGems 2.x+ API to query gems when available instead of using backport.
20
+
1
21
  # 0.9.5 - July 22nd, 2016
2
22
 
3
23
  - `yard doc` will now generate `.yardoc/processing` and `.yardoc/complete` files
data/LEGAL CHANGED
File without changes
data/LICENSE CHANGED
File without changes
data/README.md CHANGED
@@ -7,6 +7,7 @@
7
7
 
8
8
  [![Gem Version](https://badge.fury.io/rb/yard.svg)](http://github.com/lsegal/yard/releases)
9
9
  [![Build Status](https://travis-ci.org/lsegal/yard.svg?branch=master)](https://travis-ci.org/lsegal/yard)
10
+ [![Coverage Status](https://coveralls.io/repos/github/lsegal/yard/badge.svg)](https://coveralls.io/github/lsegal/yard)
10
11
  [![License](http://img.shields.io/badge/license-MIT-yellowgreen.svg)](#license)
11
12
 
12
13
  ## Synopsis
@@ -42,14 +43,16 @@ describing this data in the body of the description, a developer may formally
42
43
  declare the parameter or return type(s) in a single line. Consider the
43
44
  following method documented with YARD formatting:
44
45
 
45
- # Reverses the contents of a String or IO object.
46
- #
47
- # @param [String, #read] contents the contents to reverse
48
- # @return [String] the contents reversed lexically
49
- def reverse(contents)
50
- contents = contents.read if contents.respond_to? :read
51
- contents.reverse
52
- end
46
+ ```ruby
47
+ # Reverses the contents of a String or IO object.
48
+ #
49
+ # @param [String, #read] contents the contents to reverse
50
+ # @return [String] the contents reversed lexically
51
+ def reverse(contents)
52
+ contents = contents.read if contents.respond_to? :read
53
+ contents.reverse
54
+ end
55
+ ```
53
56
 
54
57
  With the above @param tag, we learn that the contents parameter can either be
55
58
  a String or any object that responds to the 'read' method, which is more
@@ -63,10 +66,12 @@ descriptive.
63
66
  extended and customized by plugins. Take for instance the scenario where you
64
67
  need to document the following code:
65
68
 
66
- class List
67
- # Sets the publisher name for the list.
68
- cattr_accessor :publisher
69
- end
69
+ ```ruby
70
+ class List
71
+ # Sets the publisher name for the list.
72
+ cattr_accessor :publisher
73
+ end
74
+ ```
70
75
 
71
76
  This custom declaration provides dynamically generated code that is hard for a
72
77
  documentation tool to properly document without help from the developer. To
@@ -103,7 +108,9 @@ documentation a much faster process.
103
108
 
104
109
  To install YARD, use the following command:
105
110
 
106
- $ gem install yard
111
+ ```sh
112
+ $ gem install yard
113
+ ```
107
114
 
108
115
  (Add `sudo` if you're installing under a POSIX system as root)
109
116
 
@@ -114,7 +121,9 @@ Alternatively, if you've checked the source out directly, you can call
114
121
  install lacks RDoc, which is occasionally used by YARD to convert markup to HTML.
115
122
  If running `which rdoc` turns up empty, install RDoc by issuing:
116
123
 
117
- $ sudo apt-get install rdoc
124
+ ```sh
125
+ $ sudo apt-get install rdoc
126
+ ```
118
127
 
119
128
 
120
129
  ## Usage
@@ -128,7 +137,9 @@ YARD comes packaged with a executable named `yard` which can control the many
128
137
  functions of YARD, including generating documentation, graphs running the
129
138
  YARD server, and so on. To view a list of available YARD commands, type:
130
139
 
131
- $ yard --help
140
+ ```sh
141
+ $ yard --help
142
+ ```
132
143
 
133
144
  Plugins can also add commands to the `yard` executable to provide extra
134
145
  functionality.
@@ -144,7 +155,9 @@ project root. This will assume your files are
144
155
  located in the `lib/` directory. If they are located elsewhere, you can specify
145
156
  paths and globs from the commandline via:
146
157
 
147
- $ yardoc 'lib/**/*.rb' 'app/**/*.rb' ...etc...
158
+ ```sh
159
+ $ yardoc 'lib/**/*.rb' 'app/**/*.rb' ...etc...
160
+ ```
148
161
 
149
162
  The tool will generate a `.yardoc` file which will store the cached database
150
163
  of your source code and documentation. If you want to re-generate your docs
@@ -163,12 +176,16 @@ maintainer/developer consumption).
163
176
  You can also add extra informative files (README, LICENSE) by separating
164
177
  the globs and the filenames with '-'.
165
178
 
166
- $ yardoc 'app/**/*.rb' - README LICENSE FAQ
179
+ ```sh
180
+ $ yardoc 'app/**/*.rb' - README LICENSE FAQ
181
+ ```
167
182
 
168
183
  If no globs precede the '-' argument, the default glob (`lib/**/*.rb`) is
169
184
  used:
170
185
 
171
- $ yardoc - README LICENSE FAQ
186
+ ```sh
187
+ $ yardoc - README LICENSE FAQ
188
+ ```
172
189
 
173
190
  Note that the README file can be specified with its own `--readme` switch.
174
191
 
@@ -185,9 +202,11 @@ a few shortcuts are available. For instance, to document only objects that have
185
202
  an "@api" tag with the value "public", all of the following syntaxes would give
186
203
  the same result:
187
204
 
188
- --query '@api.text == "public"'
189
- --query 'object.has_tag?(:api) && object.tag(:api).text == "public"'
190
- --query 'has_tag?(:api) && tag(:api).text == "public"'
205
+ ```sh
206
+ --query '@api.text == "public"'
207
+ --query 'object.has_tag?(:api) && object.tag(:api).text == "public"'
208
+ --query 'has_tag?(:api) && tag(:api).text == "public"'
209
+ ```
191
210
 
192
211
  Note that the "@tag" syntax returns the first tag named "tag" on the object.
193
212
  To return the array of all tags named "tag", use "@@tag".
@@ -195,8 +214,10 @@ To return the array of all tags named "tag", use "@@tag".
195
214
  Multiple `--query` arguments are allowed in the command line parameters. The
196
215
  following two lines both check for the existence of a return and param tag:
197
216
 
198
- --query '@return' --query '@param'
199
- --query '@return && @param'
217
+ ```sh
218
+ --query '@return' --query '@param'
219
+ --query '@return && @param'
220
+ ```
200
221
 
201
222
  For more information about the query syntax, see the {YARD::Verifier} class.
202
223
 
@@ -205,11 +226,13 @@ For more information about the query syntax, see the {YARD::Verifier} class.
205
226
  The second most obvious is to generate docs via a Rake task. You can do this by
206
227
  adding the following to your `Rakefile`:
207
228
 
208
- YARD::Rake::YardocTask.new do |t|
209
- t.files = ['lib/**/*.rb', OTHER_PATHS] # optional
210
- t.options = ['--any', '--extra', '--opts'] # optional
211
- t.stats_options = ['--list-undoc'] # optional
212
- end
229
+ ```ruby
230
+ YARD::Rake::YardocTask.new do |t|
231
+ t.files = ['lib/**/*.rb', OTHER_PATHS] # optional
232
+ t.options = ['--any', '--extra', '--opts'] # optional
233
+ t.stats_options = ['--list-undoc'] # optional
234
+ end
235
+ ```
213
236
 
214
237
  All the settings: `files`, `options` and `stats_options` are optional. `files` will default to
215
238
  `lib/**/*.rb`, `options` will represents any options you might want
@@ -218,7 +241,9 @@ Again, a full list of options is available by typing `yardoc --help`
218
241
  in a shell. You can also override the options at the Rake command-line with the
219
242
  OPTS environment variable:
220
243
 
221
- $ rake yard OPTS='--any --extra --opts'
244
+ ```sh
245
+ $ rake yard OPTS='--any --extra --opts'
246
+ ```
222
247
 
223
248
  **3. `yri` RI Implementation**
224
249
 
@@ -226,8 +251,10 @@ The yri binary will use the cached .yardoc database to give you quick ri-style
226
251
  access to your documentation. It's way faster than ri but currently does not
227
252
  work with the stdlib or core Ruby libraries, only the active project. Example:
228
253
 
229
- $ yri YARD::Handlers::Base#register
230
- $ yri File.relative_path
254
+ ```sh
255
+ $ yri YARD::Handlers::Base#register
256
+ $ yri File.relative_path
257
+ ```
231
258
 
232
259
  Note that class methods must not be referred to with the "::" namespace
233
260
  separator. Only modules, classes and constants should use "::".
@@ -235,7 +262,9 @@ separator. Only modules, classes and constants should use "::".
235
262
  You can also do lookups on any installed gems. Just make sure to build the
236
263
  .yardoc databases for installed gems with:
237
264
 
238
- $ sudo yard gems
265
+ ```sh
266
+ $ yard gems
267
+ ```
239
268
 
240
269
  If you don't have sudo access, it will write these files to your `~/.yard`
241
270
  directory. `yri` will also cache lookups there.
@@ -245,7 +274,9 @@ directory. `yri` will also cache lookups there.
245
274
  The `yard server` command serves documentation for a local project or all installed
246
275
  RubyGems. To serve documentation for a project you are working on, simply run:
247
276
 
248
- $ yard server
277
+ ```sh
278
+ $ yard server
279
+ ```
249
280
 
250
281
  And the project inside the current directory will be parsed (if the source has
251
282
  not yet been scanned by YARD) and served at [http://localhost:8808](http://localhost:8808).
@@ -261,7 +292,9 @@ change any documentation in the source and refresh to see the new contents.
261
292
 
262
293
  To serve documentation for all installed gems, call:
263
294
 
264
- $ yard server --gems
295
+ ```sh
296
+ $ yard server --gems
297
+ ```
265
298
 
266
299
  This will also automatically build documentation for any gems that have not
267
300
  been previously scanned. Note that in this case there will be a slight delay
@@ -279,7 +312,9 @@ option to show mixin inclusions. You can output to stdout or a file, or pipe dir
279
312
  to `dot`. The same public, protected and private visibility rules apply to `yard graph`.
280
313
  More options can be seen by typing `yard graph --help`, but here is an example:
281
314
 
282
- $ yard graph --protected --full --dependencies
315
+ ```sh
316
+ $ yard graph --protected --full --dependencies
317
+ ```
283
318
 
284
319
 
285
320
  ## Changelog
data/Rakefile CHANGED
@@ -1,19 +1,17 @@
1
+ # frozen_string_literal: true
1
2
  require File.dirname(__FILE__) + '/lib/yard'
2
3
  require File.dirname(__FILE__) + '/lib/yard/rubygems/specification'
3
4
  require 'rbconfig'
4
5
 
5
6
  YARD::VERSION.replace(ENV['YARD_VERSION']) if ENV['YARD_VERSION']
6
7
 
7
- task :default => :travis_ci
8
-
9
8
  desc "Publish gem"
10
9
  task :publish do
11
10
  ver = ENV['VERSION']
12
11
 
13
- if ver.nil? || ver.empty?
14
- fail "missing VERSION=x.y.z"
15
- elsif ver < YARD::VERSION
16
- fail "invalid version `#{ver}' (must be >= `#{YARD::VERSION}')"
12
+ raise "missing VERSION=x.y.z" if ver.nil? || ver.empty?
13
+ if ver < YARD::VERSION
14
+ raise "invalid version `#{ver}' (must be >= `#{YARD::VERSION}')"
17
15
  end
18
16
 
19
17
  file = "release-v#{ver}.tar.gz"
@@ -32,44 +30,17 @@ task :install => :gem do
32
30
  end
33
31
 
34
32
  begin
35
- require 'rvm-tester'
36
- RVM::Tester::TesterTask.new do |t|
37
- t.rubies = %w(1.8.6 ree jruby 1.8.7 1.9.2 1.9.3)
38
- t.bundle_install = false # don't need to do this all the time
39
- t.verbose = true
40
- end
33
+ require 'rspec/core/rake_task'
34
+ RSpec::Core::RakeTask.new(:spec)
41
35
  rescue LoadError
36
+ nil # noop
42
37
  end
43
38
 
44
- task :travis_ci do
45
- ENV['SUITE'] = '1'
46
- ENV['CI'] = '1'
47
- ENV['LEGACY'] = nil
48
- Rake::Task['specs'].execute
49
- if RUBY_VERSION >= '1.9' && RUBY_PLATFORM != 'java'
50
- puts ""
51
- puts "Running specs with in legacy mode"
52
- ENV['LEGACY'] = '1'
53
- Rake::Task['specs'].execute
54
- end
39
+ task :rubocop do
40
+ sh "rubocop"
55
41
  end
56
42
 
57
- desc "Run all specs"
58
- task :specs do
59
- opts = ['rspec', '-c']
60
- opts += ["--require", File.join(File.dirname(__FILE__), 'spec', 'spec_helper')]
61
- opts += ['-I', YARD::ROOT]
62
- if ENV['DEBUG']
63
- $DEBUG = true
64
- opts += ['-d']
65
- end
66
- opts += FileList["spec/**/*_spec.rb"].sort
67
- cmd = opts.join(' ')
68
- puts cmd if Rake.application.options.trace
69
- system(cmd)
70
- raise "Command failed with status (#{$?.to_i}): #{cmd}" if $?.to_i != 0
71
- end
72
- task :spec => :specs
43
+ task :default => [:rubocop, :spec]
73
44
 
74
45
  YARD::Rake::YardocTask.new do |t|
75
46
  t.options += ['--title', "YARD #{YARD::VERSION} Documentation"]
@@ -1,10 +1,11 @@
1
+ # frozen_string_literal: true
1
2
  require 'benchmark'
2
3
  require File.join(File.dirname(__FILE__), '..', 'lib', 'yard')
3
4
 
4
5
  TIMES = (ARGV[0] || 10_000).to_i
5
6
 
6
7
  def bench_builtins(name)
7
- YARD::CodeObjects::BUILTIN_EXCEPTIONS_HASH.has_key? name
8
+ YARD::CodeObjects::BUILTIN_EXCEPTIONS_HASH.key? name
8
9
  end
9
10
 
10
11
  def bench_eval(name)
@@ -14,10 +15,10 @@ rescue
14
15
  end
15
16
 
16
17
  Benchmark.bmbm do |b|
17
- b.report("builtins PASS") { TIMES.times {YARD::CodeObjects::BUILTIN_EXCEPTIONS.each {|y| bench_builtins(y) } } }
18
- b.report("eval PASS") { TIMES.times {YARD::CodeObjects::BUILTIN_EXCEPTIONS.each {|y| bench_eval(y) }} }
19
- b.report("builtins FAIL") { TIMES.times {YARD::CodeObjects::BUILTIN_MODULES.each {|y| bench_builtins(y) } } }
20
- b.report("eval FAIL") { TIMES.times {YARD::CodeObjects::BUILTIN_MODULES.each {|y| bench_eval(y) }} }
21
- b.report("builtins ANY") { TIMES.times {YARD::CodeObjects::BUILTIN_CLASSES.each {|y| bench_builtins(y) } } }
22
- b.report("eval ANY") { TIMES.times {YARD::CodeObjects::BUILTIN_CLASSES.each {|y| bench_eval(y) }} }
23
- end
18
+ b.report("builtins PASS") { TIMES.times { YARD::CodeObjects::BUILTIN_EXCEPTIONS.each {|y| bench_builtins(y) } } }
19
+ b.report("eval PASS") { TIMES.times { YARD::CodeObjects::BUILTIN_EXCEPTIONS.each {|y| bench_eval(y) } } }
20
+ b.report("builtins FAIL") { TIMES.times { YARD::CodeObjects::BUILTIN_MODULES.each {|y| bench_builtins(y) } } }
21
+ b.report("eval FAIL") { TIMES.times { YARD::CodeObjects::BUILTIN_MODULES.each {|y| bench_eval(y) } } }
22
+ b.report("builtins ANY") { TIMES.times { YARD::CodeObjects::BUILTIN_CLASSES.each {|y| bench_builtins(y) } } }
23
+ b.report("eval ANY") { TIMES.times { YARD::CodeObjects::BUILTIN_CLASSES.each {|y| bench_eval(y) } } }
24
+ end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require "benchmark"
2
3
 
3
4
  STR1 = "Hello"
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'rubygems'
2
3
  require 'erubis'
3
4
  require 'erubis/tiny'
@@ -41,7 +42,7 @@ Benchmark.bmbm do |x|
41
42
  rungen
42
43
  end
43
44
 
44
- x.report("erb") do
45
+ x.report("erb") do
45
46
  eval <<-eof
46
47
  module YARD; module Templates; module Template
47
48
  def erb_with(str, x) ERB.new(str, nil) end
@@ -50,4 +51,4 @@ Benchmark.bmbm do |x|
50
51
 
51
52
  rungen
52
53
  end
53
- end
54
+ end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require "benchmark"
2
3
  require 'lib/yard'
3
4
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require "benchmark"
2
3
  require File.join(File.dirname(__FILE__), '..', 'lib', 'yard')
3
4
 
@@ -34,4 +35,4 @@ gen-with-locking 7.790000 0.400000 8.190000 ( 8.373811)
34
35
  user system total real
35
36
  gen-w/o-locking 9.820000 0.430000 10.250000 ( 10.293283)
36
37
  gen-with-locking 7.820000 0.380000 8.200000 ( 8.243326)
37
- =end
38
+ =end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'benchmark'
2
3
  require 'dbm'
3
4
 
@@ -5,7 +6,7 @@ MARSHAL_FILE = "marshal_test.db"
5
6
  DBM_FILE = "dbm_test"
6
7
  WRITE_TIMES = 1
7
8
  READ_TIMES = 100
8
- NUM_INDICES = 10000
9
+ NUM_INDICES = 10_000
9
10
  INDICES = ['33', '857', '5022', '8555']
10
11
 
11
12
  def generate_index
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require "benchmark"
2
3
  require 'yard'
3
4
  require 'logger'
@@ -43,4 +44,3 @@ parse 6.380000 0.050000 6.430000 ( 6.446954)
43
44
  parse in order 6.320000 0.040000 6.360000 ( 6.394460)
44
45
  parse 6.040000 0.040000 6.080000 ( 6.099738)
45
46
  =end
46
-
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'pathname'
2
3
  require "benchmark"
3
4
  require File.dirname(__FILE__) + '/../lib/yard'