rdoc 3.1 → 6.3.3

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rdoc might be problematic. Click here for more details.

Files changed (247) hide show
  1. checksums.yaml +7 -0
  2. data/CONTRIBUTING.rdoc +220 -0
  3. data/CVE-2013-0256.rdoc +49 -0
  4. data/ExampleMarkdown.md +37 -0
  5. data/ExampleRDoc.rdoc +208 -0
  6. data/Gemfile +12 -0
  7. data/History.rdoc +1666 -0
  8. data/LEGAL.rdoc +50 -0
  9. data/LICENSE.rdoc +57 -0
  10. data/README.rdoc +129 -0
  11. data/RI.rdoc +57 -0
  12. data/Rakefile +84 -81
  13. data/TODO.rdoc +59 -0
  14. data/bin/console +7 -0
  15. data/bin/setup +6 -0
  16. data/{bin → exe}/rdoc +11 -2
  17. data/exe/ri +12 -0
  18. data/lib/rdoc/alias.rb +1 -2
  19. data/lib/rdoc/anon_class.rb +3 -2
  20. data/lib/rdoc/any_method.rb +234 -40
  21. data/lib/rdoc/attr.rb +79 -11
  22. data/lib/rdoc/class_module.rb +443 -71
  23. data/lib/rdoc/code_object.rb +216 -20
  24. data/lib/rdoc/code_objects.rb +4 -21
  25. data/lib/rdoc/comment.rb +250 -0
  26. data/lib/rdoc/constant.rb +110 -9
  27. data/lib/rdoc/context/section.rb +232 -0
  28. data/lib/rdoc/context.rb +392 -172
  29. data/lib/rdoc/cross_reference.rb +202 -0
  30. data/lib/rdoc/encoding.rb +83 -28
  31. data/lib/rdoc/erb_partial.rb +19 -0
  32. data/lib/rdoc/erbio.rb +8 -3
  33. data/lib/rdoc/extend.rb +10 -0
  34. data/lib/rdoc/generator/darkfish.rb +507 -84
  35. data/lib/rdoc/generator/json_index.rb +300 -0
  36. data/lib/rdoc/generator/markup.rb +27 -74
  37. data/lib/rdoc/generator/pot/message_extractor.rb +68 -0
  38. data/lib/rdoc/generator/pot/po.rb +84 -0
  39. data/lib/rdoc/generator/pot/po_entry.rb +141 -0
  40. data/lib/rdoc/generator/pot.rb +98 -0
  41. data/lib/rdoc/generator/ri.rb +8 -62
  42. data/lib/rdoc/generator/template/darkfish/_footer.rhtml +5 -0
  43. data/lib/rdoc/generator/template/darkfish/_head.rhtml +22 -0
  44. data/lib/rdoc/generator/template/darkfish/_sidebar_VCS_info.rhtml +19 -0
  45. data/lib/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +9 -0
  46. data/lib/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +15 -0
  47. data/lib/rdoc/generator/template/darkfish/_sidebar_in_files.rhtml +9 -0
  48. data/lib/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +15 -0
  49. data/lib/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +15 -0
  50. data/lib/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +12 -0
  51. data/lib/rdoc/generator/template/darkfish/_sidebar_navigation.rhtml +11 -0
  52. data/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +12 -0
  53. data/lib/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +11 -0
  54. data/lib/rdoc/generator/template/darkfish/_sidebar_search.rhtml +14 -0
  55. data/lib/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +11 -0
  56. data/lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +18 -0
  57. data/lib/rdoc/generator/template/darkfish/class.rhtml +172 -0
  58. data/lib/rdoc/generator/template/darkfish/css/fonts.css +167 -0
  59. data/lib/rdoc/generator/template/darkfish/css/rdoc.css +639 -0
  60. data/lib/rdoc/generator/template/darkfish/fonts/Lato-Light.ttf +0 -0
  61. data/lib/rdoc/generator/template/darkfish/fonts/Lato-LightItalic.ttf +0 -0
  62. data/lib/rdoc/generator/template/darkfish/fonts/Lato-Regular.ttf +0 -0
  63. data/lib/rdoc/generator/template/darkfish/fonts/Lato-RegularItalic.ttf +0 -0
  64. data/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Bold.ttf +0 -0
  65. data/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Regular.ttf +0 -0
  66. data/lib/rdoc/generator/template/darkfish/images/add.png +0 -0
  67. data/lib/rdoc/generator/template/darkfish/images/arrow_up.png +0 -0
  68. data/lib/rdoc/generator/template/darkfish/images/delete.png +0 -0
  69. data/lib/rdoc/generator/template/darkfish/images/tag_blue.png +0 -0
  70. data/lib/rdoc/generator/template/darkfish/images/transparent.png +0 -0
  71. data/lib/rdoc/generator/template/darkfish/index.rhtml +18 -60
  72. data/lib/rdoc/generator/template/darkfish/js/darkfish.js +51 -83
  73. data/lib/rdoc/generator/template/darkfish/js/search.js +110 -0
  74. data/lib/rdoc/generator/template/darkfish/page.rhtml +18 -0
  75. data/lib/rdoc/generator/template/darkfish/servlet_not_found.rhtml +18 -0
  76. data/lib/rdoc/generator/template/darkfish/servlet_root.rhtml +62 -0
  77. data/lib/rdoc/generator/template/darkfish/table_of_contents.rhtml +58 -0
  78. data/lib/rdoc/generator/template/json_index/.document +1 -0
  79. data/lib/rdoc/generator/template/json_index/js/navigation.js +105 -0
  80. data/lib/rdoc/generator/template/json_index/js/searcher.js +229 -0
  81. data/lib/rdoc/generator.rb +24 -13
  82. data/lib/rdoc/ghost_method.rb +1 -2
  83. data/lib/rdoc/i18n/locale.rb +102 -0
  84. data/lib/rdoc/i18n/text.rb +126 -0
  85. data/lib/rdoc/i18n.rb +10 -0
  86. data/lib/rdoc/include.rb +5 -95
  87. data/lib/rdoc/known_classes.rb +5 -2
  88. data/lib/rdoc/markdown/entities.rb +2132 -0
  89. data/lib/rdoc/markdown/literals.kpeg +23 -0
  90. data/lib/rdoc/markdown/literals.rb +416 -0
  91. data/lib/rdoc/markdown.kpeg +1237 -0
  92. data/lib/rdoc/markdown.rb +16684 -0
  93. data/lib/rdoc/markup/attr_changer.rb +23 -0
  94. data/lib/rdoc/markup/attr_span.rb +36 -0
  95. data/lib/rdoc/markup/attribute_manager.rb +135 -62
  96. data/lib/rdoc/markup/attributes.rb +71 -0
  97. data/lib/rdoc/markup/blank_line.rb +1 -0
  98. data/lib/rdoc/markup/block_quote.rb +15 -0
  99. data/lib/rdoc/markup/document.rb +96 -9
  100. data/lib/rdoc/markup/formatter.rb +138 -25
  101. data/lib/rdoc/markup/hard_break.rb +32 -0
  102. data/lib/rdoc/markup/heading.rb +61 -2
  103. data/lib/rdoc/markup/include.rb +43 -0
  104. data/lib/rdoc/markup/indented_paragraph.rb +48 -0
  105. data/lib/rdoc/markup/list.rb +25 -4
  106. data/lib/rdoc/markup/list_item.rb +18 -4
  107. data/lib/rdoc/markup/paragraph.rb +15 -0
  108. data/lib/rdoc/markup/parser.rb +180 -88
  109. data/lib/rdoc/markup/pre_process.rb +183 -38
  110. data/lib/rdoc/markup/raw.rb +6 -5
  111. data/lib/rdoc/markup/regexp_handling.rb +41 -0
  112. data/lib/rdoc/markup/rule.rb +1 -0
  113. data/lib/rdoc/markup/table.rb +47 -0
  114. data/lib/rdoc/markup/to_ansi.rb +17 -7
  115. data/lib/rdoc/markup/to_bs.rb +5 -8
  116. data/lib/rdoc/markup/to_html.rb +238 -137
  117. data/lib/rdoc/markup/to_html_crossref.rb +125 -152
  118. data/lib/rdoc/markup/to_html_snippet.rb +285 -0
  119. data/lib/rdoc/markup/to_joined_paragraph.rb +47 -0
  120. data/lib/rdoc/markup/to_label.rb +75 -0
  121. data/lib/rdoc/markup/to_markdown.rb +192 -0
  122. data/lib/rdoc/markup/to_rdoc.rb +85 -15
  123. data/lib/rdoc/markup/to_table_of_contents.rb +89 -0
  124. data/lib/rdoc/markup/to_test.rb +2 -4
  125. data/lib/rdoc/markup/to_tt_only.rb +121 -0
  126. data/lib/rdoc/markup/verbatim.rb +39 -0
  127. data/lib/rdoc/markup.rb +388 -110
  128. data/lib/rdoc/meta_method.rb +1 -2
  129. data/lib/rdoc/method_attr.rb +87 -21
  130. data/lib/rdoc/mixin.rb +121 -0
  131. data/lib/rdoc/normal_class.rb +39 -10
  132. data/lib/rdoc/normal_module.rb +22 -7
  133. data/lib/rdoc/options.rb +613 -73
  134. data/lib/rdoc/parser/c.rb +621 -287
  135. data/lib/rdoc/parser/changelog.rb +335 -0
  136. data/lib/rdoc/parser/markdown.rb +24 -0
  137. data/lib/rdoc/parser/rd.rb +23 -0
  138. data/lib/rdoc/parser/ripper_state_lex.rb +590 -0
  139. data/lib/rdoc/parser/ruby.rb +1368 -762
  140. data/lib/rdoc/parser/ruby_tools.rb +42 -35
  141. data/lib/rdoc/parser/simple.rb +23 -11
  142. data/lib/rdoc/parser/text.rb +12 -0
  143. data/lib/rdoc/parser.rb +162 -89
  144. data/lib/rdoc/rd/block_parser.rb +1056 -0
  145. data/lib/rdoc/rd/block_parser.ry +639 -0
  146. data/lib/rdoc/rd/inline.rb +72 -0
  147. data/lib/rdoc/rd/inline_parser.rb +1208 -0
  148. data/lib/rdoc/rd/inline_parser.ry +593 -0
  149. data/lib/rdoc/rd.rb +100 -0
  150. data/lib/rdoc/rdoc.rb +208 -115
  151. data/lib/rdoc/require.rb +1 -2
  152. data/lib/rdoc/ri/driver.rb +734 -239
  153. data/lib/rdoc/ri/formatter.rb +1 -0
  154. data/lib/rdoc/ri/paths.rb +91 -48
  155. data/lib/rdoc/ri/store.rb +3 -261
  156. data/lib/rdoc/ri/task.rb +71 -0
  157. data/lib/rdoc/ri.rb +5 -2
  158. data/lib/rdoc/rubygems_hook.rb +246 -0
  159. data/lib/rdoc/servlet.rb +451 -0
  160. data/lib/rdoc/single_class.rb +14 -2
  161. data/lib/rdoc/stats/normal.rb +19 -12
  162. data/lib/rdoc/stats/quiet.rb +1 -0
  163. data/lib/rdoc/stats/verbose.rb +1 -0
  164. data/lib/rdoc/stats.rb +262 -104
  165. data/lib/rdoc/store.rb +979 -0
  166. data/lib/rdoc/task.rb +84 -44
  167. data/lib/rdoc/text.rb +117 -72
  168. data/lib/rdoc/token_stream.rb +73 -4
  169. data/lib/rdoc/tom_doc.rb +263 -0
  170. data/lib/rdoc/top_level.rb +111 -261
  171. data/lib/rdoc/version.rb +8 -0
  172. data/lib/rdoc.rb +127 -64
  173. data/man/ri.1 +247 -0
  174. data/rdoc.gemspec +249 -0
  175. metadata +171 -291
  176. data/.autotest +0 -16
  177. data/.document +0 -5
  178. data/History.txt +0 -594
  179. data/LICENSE.txt +0 -57
  180. data/Manifest.txt +0 -158
  181. data/README.txt +0 -45
  182. data/RI.txt +0 -58
  183. data/bin/ri +0 -5
  184. data/lib/rdoc/gauntlet.rb +0 -52
  185. data/lib/rdoc/generator/template/darkfish/classpage.rhtml +0 -296
  186. data/lib/rdoc/generator/template/darkfish/filepage.rhtml +0 -124
  187. data/lib/rdoc/generator/template/darkfish/js/jquery.js +0 -32
  188. data/lib/rdoc/generator/template/darkfish/js/quicksearch.js +0 -114
  189. data/lib/rdoc/generator/template/darkfish/js/thickbox-compressed.js +0 -10
  190. data/lib/rdoc/generator/template/darkfish/rdoc.css +0 -706
  191. data/lib/rdoc/markup/formatter_test_case.rb +0 -689
  192. data/lib/rdoc/markup/inline.rb +0 -137
  193. data/lib/rdoc/markup/text_formatter_test_case.rb +0 -116
  194. data/lib/rdoc/ruby_lex.rb +0 -1291
  195. data/lib/rdoc/ruby_token.rb +0 -416
  196. data/test/README +0 -1
  197. data/test/binary.dat +0 -0
  198. data/test/hidden.zip.txt +0 -1
  199. data/test/test.ja.rdoc +0 -10
  200. data/test/test.ja.txt +0 -8
  201. data/test/test.txt +0 -1
  202. data/test/test_attribute_manager.rb +0 -120
  203. data/test/test_rdoc_alias.rb +0 -13
  204. data/test/test_rdoc_any_method.rb +0 -126
  205. data/test/test_rdoc_attr.rb +0 -61
  206. data/test/test_rdoc_class_module.rb +0 -233
  207. data/test/test_rdoc_code_object.rb +0 -165
  208. data/test/test_rdoc_constant.rb +0 -15
  209. data/test/test_rdoc_context.rb +0 -370
  210. data/test/test_rdoc_encoding.rb +0 -166
  211. data/test/test_rdoc_generator_darkfish.rb +0 -119
  212. data/test/test_rdoc_generator_ri.rb +0 -76
  213. data/test/test_rdoc_include.rb +0 -96
  214. data/test/test_rdoc_markup.rb +0 -37
  215. data/test/test_rdoc_markup_attribute_manager.rb +0 -240
  216. data/test/test_rdoc_markup_document.rb +0 -51
  217. data/test/test_rdoc_markup_paragraph.rb +0 -9
  218. data/test/test_rdoc_markup_parser.rb +0 -1395
  219. data/test/test_rdoc_markup_pre_process.rb +0 -185
  220. data/test/test_rdoc_markup_raw.rb +0 -27
  221. data/test/test_rdoc_markup_to_ansi.rb +0 -328
  222. data/test/test_rdoc_markup_to_bs.rb +0 -341
  223. data/test/test_rdoc_markup_to_html.rb +0 -335
  224. data/test/test_rdoc_markup_to_html_crossref.rb +0 -169
  225. data/test/test_rdoc_markup_to_rdoc.rb +0 -327
  226. data/test/test_rdoc_method_attr.rb +0 -122
  227. data/test/test_rdoc_normal_class.rb +0 -17
  228. data/test/test_rdoc_normal_module.rb +0 -31
  229. data/test/test_rdoc_options.rb +0 -342
  230. data/test/test_rdoc_parser.rb +0 -83
  231. data/test/test_rdoc_parser_c.rb +0 -912
  232. data/test/test_rdoc_parser_ruby.rb +0 -1754
  233. data/test/test_rdoc_parser_simple.rb +0 -99
  234. data/test/test_rdoc_rdoc.rb +0 -164
  235. data/test/test_rdoc_require.rb +0 -25
  236. data/test/test_rdoc_ri_driver.rb +0 -846
  237. data/test/test_rdoc_ri_paths.rb +0 -43
  238. data/test/test_rdoc_ri_store.rb +0 -352
  239. data/test/test_rdoc_ruby_lex.rb +0 -23
  240. data/test/test_rdoc_stats.rb +0 -38
  241. data/test/test_rdoc_task.rb +0 -92
  242. data/test/test_rdoc_text.rb +0 -251
  243. data/test/test_rdoc_top_level.rb +0 -120
  244. data/test/xref_data.rb +0 -62
  245. data/test/xref_test_case.rb +0 -61
  246. data.tar.gz.sig +0 -3
  247. metadata.gz.sig +0 -0
@@ -1,416 +0,0 @@
1
- #--
2
- # irb/ruby-token.rb - ruby tokens
3
- # $Release Version: 0.9.5$
4
- # $Revision: 11708 $
5
- # $Date: 2007-02-12 15:01:19 -0800 (Mon, 12 Feb 2007) $
6
- # by Keiju ISHITSUKA(keiju@ruby-lang.org)
7
- #++
8
- # Definitions of all tokens involved in the lexical analysis.
9
- #
10
- # This class is not documented because it is so deep in the internals.
11
-
12
- module RDoc::RubyToken
13
- # :stopdoc:
14
-
15
- EXPR_BEG = :EXPR_BEG
16
- EXPR_MID = :EXPR_MID
17
- EXPR_END = :EXPR_END
18
- EXPR_ARG = :EXPR_ARG
19
- EXPR_FNAME = :EXPR_FNAME
20
- EXPR_DOT = :EXPR_DOT
21
- EXPR_CLASS = :EXPR_CLASS
22
-
23
- # for ruby 1.4X
24
- if !defined?(Symbol)
25
- Symbol = Integer
26
- end
27
-
28
- def set_token_position(line, char)
29
- @prev_line_no = line
30
- @prev_char_no = char
31
- end
32
-
33
- class Token
34
- def initialize(seek, line_no, char_no, text = nil)
35
- @seek = seek
36
- @line_no = line_no
37
- @char_no = char_no
38
- @text = text
39
- end
40
-
41
- attr :seek
42
- attr :line_no
43
- attr :char_no
44
-
45
- attr_accessor :text
46
-
47
- def ==(other)
48
- self.class == other.class and
49
- other.line_no == @line_no and
50
- other.char_no == @char_no and
51
- other.text == @text
52
- end
53
-
54
- ##
55
- # Because we're used in contexts that expect to return a token, we set the
56
- # text string and then return ourselves
57
-
58
- def set_text(text)
59
- @text = text
60
- self
61
- end
62
-
63
- end
64
-
65
- class TkNode < Token
66
- def initialize(seek, line_no, char_no, node = nil)
67
- super seek, line_no, char_no
68
- @node = node
69
- end
70
-
71
- attr :node
72
-
73
- def ==(other)
74
- self.class == other.class and
75
- other.line_no == @line_no and
76
- other.char_no == @char_no and
77
- other.node == @node
78
- end
79
-
80
- def set_text text
81
- @node = text
82
- self
83
- end
84
-
85
- alias text node
86
- end
87
-
88
- class TkId < Token
89
- def initialize(seek, line_no, char_no, name)
90
- super(seek, line_no, char_no)
91
- @name = name
92
- end
93
- attr :name
94
-
95
- def ==(other)
96
- self.class == other.class and
97
- other.line_no == @line_no and
98
- other.char_no == @char_no and
99
- other.name == @name
100
- end
101
-
102
- def set_text text
103
- @name = text
104
- self
105
- end
106
-
107
- alias text name
108
- end
109
-
110
- class TkKW < TkId
111
- end
112
-
113
- class TkVal < Token
114
- def initialize(seek, line_no, char_no, value = nil)
115
- super(seek, line_no, char_no)
116
- @value = value
117
- end
118
- attr_accessor :value
119
-
120
- def ==(other)
121
- self.class == other.class and
122
- other.line_no == @line_no and
123
- other.char_no == @char_no and
124
- other.value == @value
125
- end
126
-
127
- def set_text text
128
- @value = text
129
- self
130
- end
131
-
132
- alias text value
133
- end
134
-
135
- class TkOp < Token
136
- def initialize(seek, line_no, char_no, name = nil)
137
- super seek, line_no, char_no
138
- @name = name
139
- end
140
-
141
- attr_accessor :name
142
-
143
- def ==(other)
144
- self.class == other.class and
145
- other.line_no == @line_no and
146
- other.char_no == @char_no and
147
- other.name == @name
148
- end
149
-
150
- def set_text text
151
- @name = text
152
- self
153
- end
154
-
155
- alias text name
156
- end
157
-
158
- class TkOPASGN < TkOp
159
- def initialize(seek, line_no, char_no, op)
160
- super(seek, line_no, char_no)
161
- op = TkReading2Token[op][0] unless op.kind_of?(Symbol)
162
- @op = op
163
- @text = nil
164
- end
165
-
166
- attr :op
167
-
168
- def ==(other)
169
- self.class == other.class and
170
- other.line_no == @line_no and
171
- other.char_no == @char_no and
172
- other.op == @op
173
- end
174
-
175
- def text
176
- @text ||= "#{TkToken2Reading[op]}="
177
- end
178
- end
179
-
180
- class TkUnknownChar < Token
181
- def initialize(seek, line_no, char_no, name)
182
- super(seek, line_no, char_no)
183
- @name = name
184
- end
185
- attr :name
186
-
187
- def ==(other)
188
- self.class == other.class and
189
- other.line_no == @line_no and
190
- other.char_no == @char_no and
191
- other.name == @name
192
- end
193
-
194
- def set_text text
195
- @name = text
196
- self
197
- end
198
-
199
- alias text name
200
- end
201
-
202
- class TkError < Token
203
- end
204
-
205
- def Token(token, value = nil)
206
- value ||= TkToken2Reading[token]
207
-
208
- case token
209
- when String
210
- if (tk = TkReading2Token[token]).nil?
211
- IRB.fail TkReading2TokenNoKey, token
212
- end
213
-
214
- tk = Token(tk[0], value)
215
-
216
- if tk.kind_of?(TkOp) then
217
- tk.name = token
218
- end
219
- when Symbol
220
- if (tk = TkSymbol2Token[token]).nil?
221
- IRB.fail TkSymbol2TokenNoKey, token
222
- end
223
-
224
- tk = Token(tk[0], value)
225
- else
226
- if token.instance_method(:initialize).arity == 3 then
227
- tk = token.new(@prev_seek, @prev_line_no, @prev_char_no)
228
- tk.set_text value
229
- else
230
- tk = token.new(@prev_seek, @prev_line_no, @prev_char_no, value)
231
- end
232
- end
233
-
234
- tk
235
- end
236
-
237
- TokenDefinitions = [
238
- [:TkCLASS, TkKW, "class", EXPR_CLASS],
239
- [:TkMODULE, TkKW, "module", EXPR_BEG],
240
- [:TkDEF, TkKW, "def", EXPR_FNAME],
241
- [:TkUNDEF, TkKW, "undef", EXPR_FNAME],
242
- [:TkBEGIN, TkKW, "begin", EXPR_BEG],
243
- [:TkRESCUE, TkKW, "rescue", EXPR_MID],
244
- [:TkENSURE, TkKW, "ensure", EXPR_BEG],
245
- [:TkEND, TkKW, "end", EXPR_END],
246
- [:TkIF, TkKW, "if", EXPR_BEG, :TkIF_MOD],
247
- [:TkUNLESS, TkKW, "unless", EXPR_BEG, :TkUNLESS_MOD],
248
- [:TkTHEN, TkKW, "then", EXPR_BEG],
249
- [:TkELSIF, TkKW, "elsif", EXPR_BEG],
250
- [:TkELSE, TkKW, "else", EXPR_BEG],
251
- [:TkCASE, TkKW, "case", EXPR_BEG],
252
- [:TkWHEN, TkKW, "when", EXPR_BEG],
253
- [:TkWHILE, TkKW, "while", EXPR_BEG, :TkWHILE_MOD],
254
- [:TkUNTIL, TkKW, "until", EXPR_BEG, :TkUNTIL_MOD],
255
- [:TkFOR, TkKW, "for", EXPR_BEG],
256
- [:TkBREAK, TkKW, "break", EXPR_MID],
257
- [:TkNEXT, TkKW, "next", EXPR_END],
258
- [:TkREDO, TkKW, "redo", EXPR_END],
259
- [:TkRETRY, TkKW, "retry", EXPR_END],
260
- [:TkIN, TkKW, "in", EXPR_BEG],
261
- [:TkDO, TkKW, "do", EXPR_BEG],
262
- [:TkRETURN, TkKW, "return", EXPR_MID],
263
- [:TkYIELD, TkKW, "yield", EXPR_END],
264
- [:TkSUPER, TkKW, "super", EXPR_END],
265
- [:TkSELF, TkKW, "self", EXPR_END],
266
- [:TkNIL, TkKW, "nil", EXPR_END],
267
- [:TkTRUE, TkKW, "true", EXPR_END],
268
- [:TkFALSE, TkKW, "false", EXPR_END],
269
- [:TkAND, TkKW, "and", EXPR_BEG],
270
- [:TkOR, TkKW, "or", EXPR_BEG],
271
- [:TkNOT, TkKW, "not", EXPR_BEG],
272
- [:TkIF_MOD, TkKW],
273
- [:TkUNLESS_MOD, TkKW],
274
- [:TkWHILE_MOD, TkKW],
275
- [:TkUNTIL_MOD, TkKW],
276
- [:TkALIAS, TkKW, "alias", EXPR_FNAME],
277
- [:TkDEFINED, TkKW, "defined?", EXPR_END],
278
- [:TklBEGIN, TkKW, "BEGIN", EXPR_END],
279
- [:TklEND, TkKW, "END", EXPR_END],
280
- [:Tk__LINE__, TkKW, "__LINE__", EXPR_END],
281
- [:Tk__FILE__, TkKW, "__FILE__", EXPR_END],
282
-
283
- [:TkIDENTIFIER, TkId],
284
- [:TkFID, TkId],
285
- [:TkGVAR, TkId],
286
- [:TkCVAR, TkId],
287
- [:TkIVAR, TkId],
288
- [:TkCONSTANT, TkId],
289
-
290
- [:TkINTEGER, TkVal],
291
- [:TkFLOAT, TkVal],
292
- [:TkSTRING, TkVal],
293
- [:TkXSTRING, TkVal],
294
- [:TkREGEXP, TkVal],
295
- [:TkSYMBOL, TkVal],
296
-
297
- [:TkDSTRING, TkNode],
298
- [:TkDXSTRING, TkNode],
299
- [:TkDREGEXP, TkNode],
300
- [:TkNTH_REF, TkNode],
301
- [:TkBACK_REF, TkNode],
302
-
303
- [:TkUPLUS, TkOp, "+@"],
304
- [:TkUMINUS, TkOp, "-@"],
305
- [:TkPOW, TkOp, "**"],
306
- [:TkCMP, TkOp, "<=>"],
307
- [:TkEQ, TkOp, "=="],
308
- [:TkEQQ, TkOp, "==="],
309
- [:TkNEQ, TkOp, "!="],
310
- [:TkGEQ, TkOp, ">="],
311
- [:TkLEQ, TkOp, "<="],
312
- [:TkANDOP, TkOp, "&&"],
313
- [:TkOROP, TkOp, "||"],
314
- [:TkMATCH, TkOp, "=~"],
315
- [:TkNMATCH, TkOp, "!~"],
316
- [:TkDOT2, TkOp, ".."],
317
- [:TkDOT3, TkOp, "..."],
318
- [:TkAREF, TkOp, "[]"],
319
- [:TkASET, TkOp, "[]="],
320
- [:TkLSHFT, TkOp, "<<"],
321
- [:TkRSHFT, TkOp, ">>"],
322
- [:TkCOLON2, TkOp, '::'],
323
- [:TkCOLON3, TkOp, '::'],
324
- #[:OPASGN, TkOp], # +=, -= etc. #
325
- [:TkASSOC, TkOp, "=>"],
326
- [:TkQUESTION, TkOp, "?"], #?
327
- [:TkCOLON, TkOp, ":"], #:
328
-
329
- [:TkfLPAREN, Token, "("], # func( #
330
- [:TkfLBRACK, Token, "["], # func[ #
331
- [:TkfLBRACE, Token, "{"], # func{ #
332
- [:TkSTAR, Token, "*"], # *arg
333
- [:TkAMPER, Token, "&"], # &arg #
334
- [:TkSYMBEG, Token, ":"], # :SYMBOL
335
-
336
- [:TkGT, TkOp, ">"],
337
- [:TkLT, TkOp, "<"],
338
- [:TkPLUS, TkOp, "+"],
339
- [:TkMINUS, TkOp, "-"],
340
- [:TkMULT, TkOp, "*"],
341
- [:TkDIV, TkOp, "/"],
342
- [:TkMOD, TkOp, "%"],
343
- [:TkBITOR, TkOp, "|"],
344
- [:TkBITXOR, TkOp, "^"],
345
- [:TkBITAND, TkOp, "&"],
346
- [:TkBITNOT, TkOp, "~"],
347
- [:TkNOTOP, TkOp, "!"],
348
-
349
- [:TkBACKQUOTE, TkOp, "`"],
350
-
351
- [:TkASSIGN, Token, "="],
352
- [:TkDOT, Token, "."],
353
- [:TkLPAREN, Token, "("], #(exp)
354
- [:TkLBRACK, Token, "["], #[arry]
355
- [:TkLBRACE, Token, "{"], #{hash}
356
- [:TkRPAREN, Token, ")"],
357
- [:TkRBRACK, Token, "]"],
358
- [:TkRBRACE, Token, "}"],
359
- [:TkCOMMA, Token, ","],
360
- [:TkSEMICOLON, Token, ";"],
361
-
362
- [:TkCOMMENT, TkVal],
363
- [:TkRD_COMMENT],
364
- [:TkSPACE, Token, " "],
365
- [:TkNL, Token, "\n"],
366
- [:TkEND_OF_SCRIPT],
367
-
368
- [:TkBACKSLASH, TkUnknownChar, "\\"],
369
- [:TkAT, TkUnknownChar, "@"],
370
- [:TkDOLLAR, TkUnknownChar, "$"],
371
- ]
372
-
373
- # {reading => token_class}
374
- # {reading => [token_class, *opt]}
375
- TkReading2Token = {}
376
- TkToken2Reading = {}
377
- TkSymbol2Token = {}
378
-
379
- def self.def_token(token_n, super_token = Token, reading = nil, *opts)
380
- token_n = token_n.id2name if token_n.kind_of?(Symbol)
381
- if const_defined?(token_n)
382
- IRB.fail AlreadyDefinedToken, token_n
383
- end
384
- token_c = eval("class #{token_n} < #{super_token}; end; #{token_n}")
385
-
386
- if reading
387
- TkToken2Reading[token_c] = reading
388
-
389
- return if TkReading2Token[reading]
390
-
391
- if opts.empty?
392
- TkReading2Token[reading] = [token_c]
393
- else
394
- TkReading2Token[reading] = [token_c].concat(opts)
395
- end
396
- end
397
- TkSymbol2Token[token_n.intern] = token_c
398
- end
399
-
400
- for defs in TokenDefinitions
401
- def_token(*defs)
402
- end
403
-
404
- NEWLINE_TOKEN = TkNL.new nil, 0, 0, "\n"
405
-
406
- class TkSYMBOL
407
-
408
- def to_sym
409
- @sym ||= text[1..-1].intern
410
- end
411
-
412
- end
413
-
414
- # :startdoc:
415
- end
416
-
data/test/README DELETED
@@ -1 +0,0 @@
1
- you don't have to
data/test/binary.dat DELETED
Binary file
data/test/hidden.zip.txt DELETED
@@ -1 +0,0 @@
1
- PK
data/test/test.ja.rdoc DELETED
@@ -1,10 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- こんにちは!
4
-
5
- 初めまして。アーロンと申します。
6
-
7
- どんな食べ物が好きですか?私はフランスの料理が大好きです。
8
- 日本の料理も大好きです。
9
-
10
- 食べ物を食べるのが大好きだけど、お皿を洗うのが大嫌いです。
data/test/test.ja.txt DELETED
@@ -1,8 +0,0 @@
1
- こんにちは!
2
-
3
- 初めまして。アーロンと申します。
4
-
5
- どんな食べ物が好きですか?私はフランスの料理が大好きです。
6
- 日本の料理も大好きです。
7
-
8
- 食べ物を食べるのが大好きだけど、お皿を洗うのが大嫌いです。
data/test/test.txt DELETED
@@ -1 +0,0 @@
1
- test file
@@ -1,120 +0,0 @@
1
- require 'rubygems'
2
- require 'minitest/autorun'
3
- require 'rdoc'
4
- require 'rdoc/markup'
5
- require 'rdoc/markup/formatter'
6
- require 'rdoc/markup/attribute_manager'
7
-
8
- class TestAttributeManager < MiniTest::Unit::TestCase # HACK fix test name
9
-
10
- def setup
11
- @am = RDoc::Markup::AttributeManager.new
12
- @klass = RDoc::Markup::AttributeManager
13
- @formatter = RDoc::Markup::Formatter.new
14
- @formatter.add_tag :BOLD, '<B>', '</B>'
15
- @formatter.add_tag :EM, '<EM>', '</EM>'
16
- @formatter.add_tag :TT, '<TT>', '</TT>'
17
- end
18
-
19
- def test_convert_attrs_ignores_code
20
- assert_equal 'foo <TT>__send__</TT> bar', output('foo <code>__send__</code> bar')
21
- end
22
-
23
- def test_convert_attrs_ignores_tt
24
- assert_equal 'foo <TT>__send__</TT> bar', output('foo <tt>__send__</tt> bar')
25
- end
26
-
27
- def test_convert_attrs_preserves_double
28
- assert_equal 'foo.__send__ :bar', output('foo.__send__ :bar')
29
- assert_equal 'use __FILE__ to', output('use __FILE__ to')
30
- end
31
-
32
- def test_convert_attrs_does_not_ignore_after_tt
33
- assert_equal 'the <TT>IF:</TT><EM>key</EM> directive', output('the <tt>IF:</tt>_key_ directive')
34
- end
35
-
36
- def test_initial_word_pairs
37
- word_pairs = @am.matching_word_pairs
38
- assert word_pairs.is_a?(Hash)
39
- assert_equal(3, word_pairs.size)
40
- end
41
-
42
- def test_initial_html
43
- html_tags = @am.html_tags
44
- assert html_tags.is_a?(Hash)
45
- assert_equal(5, html_tags.size)
46
- end
47
-
48
- def test_add_matching_word_pair
49
- @am.add_word_pair("x","x", :TEST)
50
- word_pairs = @am.matching_word_pairs
51
- assert_equal(4,word_pairs.size)
52
- assert(word_pairs.has_key?("x"))
53
- end
54
-
55
- def test_add_invalid_word_pair
56
- assert_raises ArgumentError do
57
- @am.add_word_pair("<", "<", :TEST)
58
- end
59
- end
60
-
61
- def test_add_word_pair_map
62
- @am.add_word_pair("x", "y", :TEST)
63
- word_pair_map = @am.word_pair_map
64
- assert_equal(1,word_pair_map.size)
65
- assert_equal(word_pair_map. keys.first.source, "(x)(\\S+)(y)")
66
- end
67
-
68
- def test_add_html_tag
69
- @am.add_html("Test", :TEST)
70
- tags = @am.html_tags
71
- assert_equal(6, tags.size)
72
- assert(tags.has_key?("test"))
73
- end
74
-
75
- def test_add_special
76
- @am.add_special("WikiWord", :WIKIWORD)
77
- specials = @am.special
78
- assert_equal(1,specials.size)
79
- assert(specials.has_key?("WikiWord"))
80
- end
81
-
82
- def test_escapes
83
- assert_equal '<TT>text</TT>', output('<tt>text</tt>')
84
- assert_equal '<tt>text</tt>', output('\\<tt>text</tt>')
85
- assert_equal '<tt>', output('\\<tt>')
86
- assert_equal '<TT><tt></TT>', output('<tt>\\<tt></tt>')
87
- assert_equal '<TT>\\<tt></TT>', output('<tt>\\\\<tt></tt>')
88
- assert_equal '<B>text</B>', output('*text*')
89
- assert_equal '*text*', output('\\*text*')
90
- assert_equal '\\', output('\\')
91
- assert_equal '\\text', output('\\text')
92
- assert_equal '\\\\text', output('\\\\text')
93
- assert_equal 'text \\ text', output('text \\ text')
94
-
95
- assert_equal 'and <TT>\\s</TT> matches space',
96
- output('and <tt>\\s</tt> matches space')
97
- assert_equal 'use <TT><tt>text</TT></tt> for code',
98
- output('use <tt>\\<tt>text</tt></tt> for code')
99
- assert_equal 'use <TT><tt>text</tt></TT> for code',
100
- output('use <tt>\\<tt>text\\</tt></tt> for code')
101
- assert_equal 'use <tt><tt>text</tt></tt> for code',
102
- output('use \\<tt>\\<tt>text</tt></tt> for code')
103
- assert_equal 'use <tt><TT>text</TT></tt> for code',
104
- output('use \\<tt><tt>text</tt></tt> for code')
105
- assert_equal 'use <TT>+text+</TT> for code',
106
- output('use <tt>\\+text+</tt> for code')
107
- assert_equal 'use <tt><TT>text</TT></tt> for code',
108
- output('use \\<tt>+text+</tt> for code')
109
- assert_equal 'illegal <tag>not</tag> changed',
110
- output('illegal <tag>not</tag> changed')
111
- assert_equal 'unhandled <p>tag</p> unchanged',
112
- output('unhandled <p>tag</p> unchanged')
113
- end
114
-
115
- def output str
116
- @formatter.convert_flow @am.flow str
117
- end
118
-
119
- end
120
-
@@ -1,13 +0,0 @@
1
- require File.expand_path '../xref_test_case', __FILE__
2
-
3
- class TestRDocAlias < XrefTestCase
4
-
5
- def test_to_s
6
- a = RDoc::Alias.new nil, 'a', 'b', ''
7
- a.parent = @c2
8
-
9
- assert_equal 'alias: b -> #a in: RDoc::NormalClass C2 < Object', a.to_s
10
- end
11
-
12
- end
13
-
@@ -1,126 +0,0 @@
1
- require File.expand_path '../xref_test_case', __FILE__
2
- require 'rdoc/code_objects'
3
- require 'rdoc/generator/markup'
4
-
5
- class RDocAnyMethodTest < XrefTestCase
6
-
7
- def test_aref
8
- m = RDoc::AnyMethod.new nil, 'method?'
9
-
10
- assert_equal 'method-i-method-3F', m.aref
11
-
12
- m.singleton = true
13
-
14
- assert_equal 'method-c-method-3F', m.aref
15
- end
16
-
17
- def test_arglists
18
- m = RDoc::AnyMethod.new nil, 'method'
19
-
20
- assert_nil m.arglists
21
-
22
- m.params = "(a, b)"
23
- m.block_params = "c, d"
24
-
25
- assert_equal "method(a, b) { |c, d| ... }", m.arglists
26
-
27
- call_seq = <<-SEQ
28
- method(a) { |c| ... }
29
- method(a, b) { |c, d| ... }
30
- SEQ
31
-
32
- m.call_seq = call_seq.dup
33
-
34
- assert_equal call_seq, m.arglists
35
- end
36
-
37
- def test_full_name
38
- assert_equal 'C1::m', @c1.method_list.first.full_name
39
- end
40
-
41
- def test_markup_code
42
- tokens = [
43
- RDoc::RubyToken::TkCONSTANT. new(0, 0, 0, 'CONSTANT'),
44
- RDoc::RubyToken::TkKW. new(0, 0, 0, 'KW'),
45
- RDoc::RubyToken::TkIVAR. new(0, 0, 0, 'IVAR'),
46
- RDoc::RubyToken::TkOp. new(0, 0, 0, 'Op'),
47
- RDoc::RubyToken::TkId. new(0, 0, 0, 'Id'),
48
- RDoc::RubyToken::TkNode. new(0, 0, 0, 'Node'),
49
- RDoc::RubyToken::TkCOMMENT. new(0, 0, 0, 'COMMENT'),
50
- RDoc::RubyToken::TkREGEXP. new(0, 0, 0, 'REGEXP'),
51
- RDoc::RubyToken::TkSTRING. new(0, 0, 0, 'STRING'),
52
- RDoc::RubyToken::TkVal. new(0, 0, 0, 'Val'),
53
- RDoc::RubyToken::TkBACKSLASH.new(0, 0, 0, '\\'),
54
- ]
55
-
56
- @c2_a.collect_tokens
57
- @c2_a.add_tokens(*tokens)
58
-
59
- expected = [
60
- '<span class="ruby-constant">CONSTANT</span>',
61
- '<span class="ruby-keyword">KW</span>',
62
- '<span class="ruby-ivar">IVAR</span>',
63
- '<span class="ruby-operator">Op</span>',
64
- '<span class="ruby-identifier">Id</span>',
65
- '<span class="ruby-node">Node</span>',
66
- '<span class="ruby-comment">COMMENT</span>',
67
- '<span class="ruby-regexp">REGEXP</span>',
68
- '<span class="ruby-string">STRING</span>',
69
- '<span class="ruby-value">Val</span>',
70
- '\\'
71
- ].join
72
-
73
- assert_equal expected, @c2_a.markup_code
74
- end
75
-
76
- def test_markup_code_empty
77
- assert_equal '', @c2_a.markup_code
78
- end
79
-
80
- def test_marshal_load
81
- instance_method = Marshal.load Marshal.dump(@c1.method_list.last)
82
-
83
- assert_equal 'C1#m', instance_method.full_name
84
- assert_equal 'C1', instance_method.parent_name
85
- assert_equal '(foo)', instance_method.params
86
-
87
- class_method = Marshal.load Marshal.dump(@c1.method_list.first)
88
-
89
- assert_equal 'C1::m', class_method.full_name
90
- assert_equal 'C1', class_method.parent_name
91
- assert_equal '()', class_method.params
92
- end
93
-
94
- def test_name
95
- m = RDoc::AnyMethod.new nil, nil
96
-
97
- assert_nil m.name
98
- end
99
-
100
- def test_param_seq
101
- m = RDoc::AnyMethod.new nil, 'method'
102
- m.parent = @c1
103
- m.params = 'a'
104
-
105
- assert_equal '(a)', m.param_seq
106
-
107
- m.params = '(a)'
108
-
109
- assert_equal '(a)', m.param_seq
110
-
111
- m.params = "(a,\n b)"
112
-
113
- assert_equal '(a, b)', m.param_seq
114
-
115
- m.block_params = "c,\n d"
116
-
117
- assert_equal '(a, b) { |c, d| ... }', m.param_seq
118
- end
119
-
120
- def test_parent_name
121
- assert_equal 'C1', @c1.method_list.first.parent_name
122
- assert_equal 'C1', @c1.method_list.last.parent_name
123
- end
124
-
125
- end
126
-