redparse 0.8.1 → 0.8.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,9 +1,40 @@
1
+ === 0.8.2 / 2009-04-21
2
+ * 14 Minor Enhancements:
3
+ * should be no tokens left in Node tree now
4
+ * lots of code trying to make things faster (no luck so far)
5
+ * declare types and parameters of variation of all inputs
6
+ * to_parsetree now outputs 1.8.6 (new default) as well as 1.8.7 tree formats
7
+ * #parsetree takes a session arg instead of thread-local variables
8
+ * reduce number of warnings/noise in test output
9
+ * created #to_parsetree_and_warnings: returns warnings along with a tree
10
+ * (for now, no warnings are ever emitted, tho)
11
+ * some utilities for working with node trees
12
+ * split off rescue operator and begin..end from ParenedNode
13
+ * made a VarNode to replace VarNameToken in node trees
14
+ * Reg::Repeat#subregs was missing, had to hack one up
15
+ * Reg::LookBack/LookAhead#subregs were missing too
16
+ * unparse now tracks lines in the original src
17
+ * beginnings of support for 1.9 syntax
18
+
19
+ * 10 Bugfixes:
20
+ * don't panic if rubygems not available
21
+ * @lvalue is not useful to clients, so ignore it when comparing trees
22
+ * many improvements to unparser; most expressions now unparse correctly
23
+ * rescue and friends now work in modules, classes and metaclasses
24
+ * word array splitter is perfect now
25
+ * comma and unary star now have right precedence wrt = in all cases
26
+ * fixed miscellaneous minor misparsings
27
+ * some of the remaining ParseTree compatibility bugs removed
28
+ * string contents are now always left unaltered in Node tree output
29
+ * (so escape translation has to be done later, when Nodes are used)
30
+ * #to_parsetree of an empty source text should be happier now
31
+
1
32
  === 0.8.1 / 2009-04-21
2
- * 4 minor enhancements:
33
+ * 4 Minor Enhancements:
3
34
  * fixed embarassing permissions problems
4
35
  * version.rb and History.txt were missing from the release
5
36
  * I left off the dependancy on reg, oops!
6
- * hacked up tests to ignore trivial compare errors
37
+ * hacked up tests to ignore sudden problem with extra nils
7
38
 
8
39
  === 0.8.0 / 2008-10-10
9
40
  * 1 Major Enhancement:
@@ -37,7 +37,6 @@ README.txt
37
37
  History.txt
38
38
  Rakefile
39
39
  COPYING.LGPL
40
- nurli/test_control.nurli
41
- redparse.vpj
42
- redparse.vpw
43
40
  bin/redparse
41
+ lib/redparse/generate.rb
42
+ test/data/def_spec.rb
data/README.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  = RedParse
2
- * redparse.rubyforge.org
3
- * rubyforge.org/projects/redparse
2
+ * http://rubyforge.org/projects/redparse
3
+ * http://github.com/coatl/redparse
4
4
 
5
5
  == DESCRIPTION:
6
6
 
@@ -20,13 +20,13 @@ the wild. For known problems, see below.
20
20
  (external iterators). Reg depends on Sequence's predecessor, Cursor,
21
21
  altho Cursor isn't used at all in RedParse. The (long-delayed) next
22
22
  version of Reg will use Sequence. To summarize:
23
- * RedParse 0.9.0 requires RubyLexer>=0.7.1 and Reg>=0.4.7
24
- * RubyLexer 0.7.1 requires Sequence>=0.2.0
23
+ * RedParse 0.8.2 requires RubyLexer>=0.7.4 and Reg>=0.4.7
24
+ * RubyLexer 0.7.4 requires Sequence>=0.2.0
25
25
  * Reg 0.4.7 requires Cursor (not really needed here)
26
26
  * All are available as gems. (Or tarballs on rubyforge, if you must.)
27
27
 
28
28
  == INSTALL:
29
- * gem install redparse #(if root as necessary)
29
+ * gem install redparse #(if root as necssary)
30
30
 
31
31
  == LICENSE:
32
32
 
@@ -60,17 +60,14 @@ Please see COPYING.LGPL for details.
60
60
 
61
61
  == Drawbacks:
62
62
 
63
- * Pathetically, rediculously slow (to be addressed soon).
63
+ * Pathetically, rediculously slow (ok, compiler-compilers are hard...)
64
64
  * Error handling is very minimal right now.
65
65
  * No warnings at all.
66
66
  * Some expressions aren't parsed correctly. see below.
67
- * Line numbers in ParseTrees not supported yet.
68
- * AST tree format is not finalized yet.
69
67
  * Unit test takes a fairly long time.
70
68
  * Lots of warnings printed during unit test.
71
69
  * Debugging parse rules is not straightforward.
72
- * No support for ruby 1.9.
73
- * No support for any charset but ascii (until rubylexer gets it).
70
+ * Incomplete support for ruby 1.9.
74
71
  * "loosey-goosey" parser happily parses many expressions which normal
75
72
  ruby considers errors.
76
73
 
@@ -93,8 +90,7 @@ Please see COPYING.LGPL for details.
93
90
 
94
91
  #presumably tree was altered somehow in the walk-"loop" above
95
92
  #when done mucking with the tree, you can turn it into one
96
- #of two other formats: ParseTree s-exps or (experimental)
97
- #ruby source code.
93
+ #of two other formats: ParseTree s-exps or ruby source code.
98
94
 
99
95
  tree.to_parsetree #=> turns a tree into an ParseTree-style s-exp.
100
96
 
@@ -109,9 +105,9 @@ Syntax trees are represented by trees of nested Nodes. All Nodes descend from
109
105
  Array, and their subnodes can be addressed by numeric index, just like normal
110
106
  Arrays. However, many subnodes want to have names as well, thus most (but not
111
107
  all) array slots within the various Node classes have names. The general rule
112
- is that Node slots may contain a Node, a VarNameToken, a plain Array, a
113
- String, or nil. However, many cases are more specific than that. Specific
114
- Node classes are documented briefly below in this format:
108
+ is that Node slots may contain a Node, a plain Array, a String, or nil.
109
+ However, many cases are more specific than that. Specific Node classes are
110
+ documented briefly below in this format:
115
111
 
116
112
  NodeName #comments describing node
117
113
  (slot1: Type, slot2: Type)
@@ -134,40 +130,34 @@ describes the constraints on the Array's contents.
134
130
  In the cases where node slots don't have names, there will be no colon-
135
131
  terminated slot name(s) on the second line, just an Array[] specification.
136
132
 
137
- And just to make everyone's life a little more complicated, I should add that
138
- there is still one token type which leaks through into the syntax tree:
139
- VarNameToken. It's descended from a RubyLexer::Token, not a Node. In the
140
- future this will be replaced with an actual Node.
141
-
142
- In fact, there are several areas where rough edges in the syntax tree could be
143
- removed. So don't consider this current depiction to be final. But it should
144
- be pretty close.
133
+ This is a final depiction of the syntax tree. There may be additions to the
134
+ existing format in the future, but no incompatibility-creating changes.
145
135
 
146
136
  Several abbreviations are used:
147
- Value means ValueNode
148
- LValue means ConstantNode|VarNameToken|UnaryStarNode|CallNode|
137
+ Expr means ValueNode
138
+ LValue means ConstantNode|VarNode|UnaryStarNode|CallNode|
149
139
  BracketsGetNode|AssigneeList[LValue*]
150
140
  UnAmpNode means UnOpNode with op == "&"
151
141
 
152
- VarNameToken<RubyLexer::Token #represents variables and constants
153
- (ident: String)
154
- Node<Array #abstract ancestor of all nodes (except VarNameToken)
155
- +RescueNode #a rescue clause in a def of begin statement
156
- | (exceptions: Array[Value*], varname: VarNameToken|nil, action: Value)
142
+ Node<Array #abstract ancestor of all nodes
143
+ +RescueNode #a rescue clause in a def or begin statement
144
+ | (exceptions: Array[Expr*], varname: VarNode|nil, action: Expr)
157
145
  +WhenNode #a when clause in a case statement
158
- | (when: Value|Array[Value+] then: Value|nil )
146
+ | (when: Expr|Array[Expr+] then: Expr|nil )
159
147
  +ElsifNode #an elsif clause in an if statement
160
- | (elsif: Value, then: Value|nil)
148
+ | (elsif: Expr, then: Expr|nil)
161
149
  +ValueNode #abstract, a node which has a value (an expression)
150
+ |+VarNode #represents variables and constants
151
+ || (ident: String)
162
152
  |+ListOpNode #abstract, ancestor for nodes which are lists of
163
153
  ||| #things separated by some op
164
154
  ||+SequenceNode #a sequence of statements
165
- ||| (Array[Value*])
155
+ ||| (Array[Expr*])
166
156
  ||+ConstantNode #a constant expression of the form A::B::C or the like
167
157
  || #first expression can be anything
168
- || (Array[String|Value|nil,String+])
158
+ || (Array[String|Expr|nil,String+])
169
159
  |+RawOpNode #ancestor of all operators (but not . :: ; , ?..:)
170
- ||| (left: Value, op: String, right: Value)
160
+ ||| (left: Expr, op: String, right: Expr)
171
161
  ||+OpNode #ancestor of some operators
172
162
  |||+RangeNode #a range literal node
173
163
  |||+KeywordOpNode #abstract, ancestor of keyword operators
@@ -176,13 +166,15 @@ be pretty close.
176
166
  ||||+UntilOpNode #until as an operator
177
167
  ||||+IfOpNode #if as an operator
178
168
  ||||+UnlessOpNode #unless as an operator
169
+ ||||+RescueOpNode #rescue as an operator
170
+ |||| (body: Expr, rescues: Array[RescueNode*])
179
171
  |||+NotEqualNode #!= expressions
180
172
  |||+MatchNode #=~ expressions
181
173
  |||+NotMatchNode #!~ expressions
182
174
  |+LiteralNode #literal symbols, integers
183
175
  || (val: Numeric|Symbol|StringNode)
184
176
  |+StringNode #literal strings
185
- ||| (Array[(String|Value)+])
177
+ ||| (Array[(String|Expr)+])
186
178
  ||+HereDocNode #here documents
187
179
  |+StringCatNode #adjacent strings are catenated ("foo" "bar" == "foobar")
188
180
  || (Array[StringNode+])
@@ -191,59 +183,63 @@ be pretty close.
191
183
  |+VarLikeNode #nil,false,true,__FILE__,__LINE__,self
192
184
  || (name: String)
193
185
  |+UnOpNode #unary operators
194
- || (op: String, val: Value)
186
+ || (op: String, val: Expr)
195
187
  ||+UnaryStarNode #unary star (splat)
196
188
  |||+DanglingStarNode #unary star with no argument
197
189
  ||||| (no attributes)
198
190
  ||||+DanglingCommaNode #comma with no rhs
199
191
  || (no attributes)
200
- |+ParenedNode #ugly, parenthesized expressions and begin..end
201
- || (body: Value) -OR- (parentheses)
202
- || (body: Value|nil, rescues: Array[RescueNode*],
203
- || else: Value|nil, ensure: Value|nil) (begin...end and rescue as operator)
192
+ |+BeginNode #begin..end block
193
+ || (body: Expr|nil, rescues: Array[RescueNode*],
194
+ || else: Expr|nil, ensure: Expr|nil)
195
+ |+ParenedNode #parenthesized expressions
196
+ || (body: Expr)
204
197
  |+AssignNode #assignment (including eg +=)
205
- || (left:AssigneeList|LValue, op:String ,right:Array[Value*]|Value)
198
+ || (left:AssigneeList|LValue, op:String ,right:Array[Expr*]|Expr)
206
199
  |+AssigneeList #abstract, comma-delimited list of assignables
207
200
  ||| (Array[LValue*])
208
201
  ||+NestedAssign #nested lhs, in parentheses
209
202
  ||+MultiAssign #regular top-level lhs
210
203
  ||+BlockParams #block formal parameter list
211
204
  |+CallSiteNode #abstract, method calls
212
- ||| (receiver: Value|nil, name: String, params: nil|Array[Value+,UnaryStarNode?,UnAmpNode?],
213
- ||| block_params: BlockParams, block: Value)
205
+ ||| (receiver: Expr|nil, name: String, params: nil|Array[Expr+,UnaryStarNode?,UnAmpNode?],
206
+ ||| block_params: BlockParams, block: Expr)
214
207
  ||+CallNode #normal method calls
215
208
  ||+KWCallNode #keywords that look (more or less) like methods (BEGIN END yield return break continue next)
216
209
  |+ArrayLiteralNode #[..]
217
- || (Array[Value*])
210
+ || (Array[Expr*])
218
211
  |+IfNode #if..end and unless..end
219
- || (if: Value, then: Value|nil, elsifs: Array[ElsifNode+]|Nil, else: Value|nil)
212
+ || (if: Expr, then: Expr|nil, elsifs: Array[ElsifNode+]|Nil, else: Expr|nil)
220
213
  |+LoopNode #while..end and until..end
221
- || (while: Value, do: Value:nil)
214
+ || (while: Expr, do: Expr:nil)
222
215
  |+CaseNode #case..end
223
- || (case: Value|nil, whens: Array[WhenNode*], else: Value|nil)
216
+ || (case: Expr|nil, whens: Array[WhenNode*], else: Expr|nil)
224
217
  |+ForNode #for..end
225
- || (for: LValue, in: Value, do: Value|nil)
218
+ || (for: LValue, in: Expr, do: Expr|nil)
226
219
  |+HashLiteralNode #{..}
227
- || (Array[Value*]) (size must be even)
220
+ || (Array[Expr*]) (size must be even)
228
221
  |+TernaryNode # ? .. :
229
- || (if: Value, then: Value, else: Value)
222
+ || (if: Expr, then: Expr, else: Expr)
230
223
  |+MethodNode #def..end
231
- || (receiver:Value|nil, name:String,
232
- || params:Array[VarNameToken*,AssignNode*,UnaryStarNode?,UnAmpNode?]|nil,
233
- || body: Value|nil, rescues: Array[RescueNode+]|nil, else: Value|nil, ensure: Value|nil)
224
+ || (receiver:Expr|nil, name:String,
225
+ || params:Array[VarNode*,AssignNode*,UnaryStarNode?,UnAmpNode?]|nil,
226
+ || body: Expr|nil, rescues: Array[RescueNode+]|nil, else: Expr|nil, ensure: Expr|nil)
234
227
  |+AliasNode #alias foo bar
235
- || (to: String|VarNameToken|StringNode, from: String|VarNameToken|StringNode)
228
+ || (to: String|VarNode|StringNode, from: String|VarNode|StringNode)
236
229
  |+UndefNode #undef foo
237
230
  || (Array[String|StringNode+])
238
231
  |+NamespaceNode #abstract
239
232
  ||+ModuleNode #module..end
240
- ||| (name: VarNameToken|ConstantNode, body: Value|nil)
233
+ ||| (name: VarNode|ConstantNode, body: Expr|nil
234
+ ||| rescues: Array[RescueNode+]|nil, else: Expr|nil, ensure: Expr|nil)
241
235
  ||+ClassNode #class..end
242
- ||| (name: VarNameToken|ConstantNode, parent: Value|nil, body: Value|nil)
236
+ ||| (name: VarNode|ConstantNode, parent: Expr|nil, body: Expr|nil,
237
+ ||| rescues: Array[RescueNode+]|nil, else: Expr|nil, ensure: Expr|nil)
243
238
  ||+MetaClassNode #class<<x..end
244
- || (val: Value, body: Value|nil)
239
+ || (val: Expr, body: Expr|nil,
240
+ || rescues: Array[RescueNode+]|nil, else: Expr|nil, ensure: Expr|nil)
245
241
  |+BracketsGetNode #a[b]
246
- | (receiver: Value, params: Array[Value+,UnaryStarNode?]|nil)
242
+ | (receiver: Expr, params: Array[Expr+,UnaryStarNode?]|nil)
247
243
  |
248
244
  ErrorNode #mixed in to nodes with a syntax error
249
245
  +MisparsedNode #mismatched braces or begin..end or the like
@@ -251,216 +247,112 @@ be pretty close.
251
247
 
252
248
 
253
249
  == Known failing expressions
254
- * The following expressions are known to parse incorrectly currently:
255
- * m.cn= 1, V
256
- * "#{}"""
257
- * begin;mode;rescue;o_chmod rescue nil;end
258
- * def i;"..#{@@c = 1}";end
259
- * e { |c|; print "%02X" % c }
260
- * File.open() {|f| ; }
261
- * %W(white\ \ \ \ \ space).should == ["white ", " ", " ", " space"]
262
- * %w[- \\ e]
263
- * %w[- \\ ]
264
- * module A; b; rescue C=>d; e; else g; ensure f; end
265
- * class A; b; rescue C=>d; e; else g; ensure f; end
266
- * class<<A; b; rescue C=>d; e; else g; ensure f; end
267
- * %w![ ] { } ( ) | - * . \\ ? + ^ $ #!
268
-
269
- == Homie doan' play dat
270
- * These expressions fail to parse like in MRI, because of bug(s) in MRI.
250
+ * The following expressions are known to parse incorrectly currently:
251
+ * def foo(a = 1) end; def foo(a=b=c={}) end; def bar(a=b=c=1,d=2) end
252
+ * <<-EOS<<__LINE__
253
+ EOS
254
+ * z = valueo_s rescue "?"
255
+ * self.<=>:p8
256
+ * return (@images = @old_imgs)
257
+ * p ?e.<<?y
258
+ * doc_status, err_args = Documeh_status{fcgi_state = 3; docespond do doc_response =fcgi_state = 1; end }
259
+ * class A;def b;class <<self;@@p = false end;end;end
260
+ * return @senders[1] =
261
+ 2
262
+
263
+ == Not exactly right, but semantically equivalent
264
+ * These don't return exactly the same s-exp as MRI/ParseTree, but close enough:
265
+ * for i in (begin
266
+ [44,55,66,77,88] end) do p i**Math.sqrt(i) end
267
+ * %W"is #{"Slim #{2?"W":"S"}"}#{xx}."
268
+ * def d; return (block_given? ? begin; yield f; ensure; f.close; end : f); end
269
+ * "#{publi}#{}>"
270
+ * /__A#{__FILE__}tcase/n =~ i
271
+
272
+ == Bugs in ruby
273
+ * These expressions don't parse the same as in MRI because of bug(s) in MRI:
271
274
  * p = p m %(1)
272
275
  * p=556;p (e) /a
276
+ * c do p (110).m end
273
277
 
274
- ==
275
- * And these expressions fail because of bugs in parse_tree.
276
- * $11111111111111111111111111111111111111111111111111111111111111111111
278
+ == Bugs in ParseTree
279
+ * Unit tests see failures in these cases, but due to bugs in ParseTree:
277
280
  * case F;when G; else;case; when j; end;end
278
- * 1..2 #ruby 1.8.6 only
279
- * Proc{|&b|} #ruby 1.8.7 only
281
+ * def foo(a=b=c={}) end
282
+ * $11111111111111111111111111111111111111111111111111111111111111111111
283
+ * proc{|&b| }
284
+ * def sum(options = {:weights => weights = Hash.new(1)}); opt; end
280
285
 
281
286
  ==Known failing files
282
287
  * And here's a list of files which are known to parse incorrectly:
283
- * alib-0.5.1/lib/alib-0.5.1/util.rb
284
- * stick-1.3.3/test/test_matrix.rb
285
- * rubyslippers-1.03/extras/rconftool.rb
286
- * rubysync-0.2.1/lib/ruby_sync/connectors/base_connector.rb
287
- * karmasphere-client-0.6.4/lib/karmasphere/query.rb
288
- * roby-0.7.2/test/test_transactions.rb
289
- * rwddemo-0.92/extras/rconftool.rb
290
- * rmail-1.0.0/test/testmessage.rb
291
- * passenger-2.0.1/lib/passenger/abstract_server.rb
292
- * rubywebdialogs/rubywebdialogs.rb
293
- * aspectr-0.3.7/lib/aspectr.rb
294
- * rubywebdialogs-0.2.0/realstuff.rb
295
- * stick-1.3.3/lib/stick/matrix.rb
296
- * rb2html-2.4/rb2html/haskell_lexer.rb
297
- * mspire-0.3.9/lib/spec_id/srf.rb
298
- * rb-wartslib-0.9.14/lib/wartslib/wl-file.rb
299
- * sqliki_generator-0.0.4/templates/lib_sanitize_html.rb
300
- * rwdshell-1.00/extras/rconftool.rb
301
- * main-2.8.0/lib/main/base.rb
302
- * pseudoxml-0.1.0/RAKEFILE
303
- * rubytorrent-0.3/lib/rubytorrent/server.rb
304
- * Nephila-0.6.0/config/environment.rb
305
- * ruby-rpm-1.2.3/lib/rpm.rb
306
- * ya2yaml-0.26/lib/ya2yaml.rb
307
- * spree-0.2.0/vendor/rails/activesupport/lib/active_support/multibyte/handlers/utf8_handler.rb
308
- * rq-3.4.0/rails/vendor/rails/actionpack/test/controller/fragment_store_setting_test.rb
309
- * typo-5.0.3.98.1/config/environment.rb
310
- * aeditor-1.9/lib/aeditor/test_lexer.rb
311
- * gecoder-with-gecode-0.8.2/lib/gecoder/interface/constraints/set/connection.rb
312
- * onebody-0.3.0/vendor/rails/actionpack/test/controller/caching_test.rb
313
- * rwdhypernote-0.10/extras/rconftool.rb
314
- * radiant-0.6.7/vendor/rails/railties/lib/initializer.rb
315
- * rwdgutenberg-0.07/extras/rconftool.rb
316
- * aspectr-0-3-5/lib/aspectr.rb
317
- * rubygems-update-1.2.0/lib/rubygems/test_utilities.rb
318
- * live_console-0.1.0/lib/live_console.rb
319
- * html-table-1.3.1/test/tc_header.rb
320
- * authorails-1.0.0/lib/initializer.rb
321
- * allinoneruby-0.2.11/realstuff.rb
322
- * typo-5.0.3.98.1/db/migrate/040_attach_content_to_blog.rb
323
- * rq-3.4.0/lib/rq/lockfile.rb
324
- * rubygame-2.3.0/lib/rubygame/rect.rb
325
- * html-table-1.3.1/test/tc_foot.rb
326
- * html-table-1.3.1/test/tc_caption.rb
327
- * extract-curves-0.1.1/ruby_libs/pav/string/observable.rb
328
- * starling-0.9.3/lib/starling/runner.rb
329
- * RbYAML-0.2.0/lib/rbyaml/types.rb
330
- * rwdaddresses-1.03/extras/vpim/rrule.rb
331
- * Dnsruby-1.0/test/tc_tsig.rb
332
- * rubyscript2exe/rubyscript2exe.rb
333
- * rq-3.4.0/rails/vendor/rails/railties/builtin/rails_info/rails/info.rb
334
- * extract_curves-0.0.1/ruby_libs/pav/string/observable.rb
335
- * simplemapper-0.0.6/lib/simple_mapper/default_plugins/oauth.rb
336
- * text-hyphen-1.0.0/lib/text/hyphen/language/id.rb
337
- * ruby-nxt-0.8.1/examples/commands.rb
338
- * gettext-1.91.0/test/test_rails_caching.rb
339
- * rwdschedule-1.02/extras/rconftool.rb
340
- * rabbit-0.5.6/lib/rabbit/image/base.rb
341
- * sqliki-0.0.4/templates/lib_sanitize_html.rb
342
- * whistle-0.1.1/lib/resource.rb
343
- * html-table-1.3.1/examples/intermediate2.rb
344
- * xmlparser-0.6.8/xmlparser/samples/digesttest.rb
345
- * datamapper-0.3.2/lib/data_mapper/adapters/sql/mappings/table.rb
346
- * openwferu-0.9.17/test/raw_prog_test.rb
347
- * rubytorrent-0.3/lib/rubytorrent/controller.rb
348
- * rails-2.1.0/builtin/rails_info/rails/info.rb
349
- * mongrel-1.1.5/lib/mongrel.rb
350
- * stream-0.5/lib/stream.rb
351
- * dhaka-2.2.1/lib/dhaka/lexer/alphabet.rb
352
- * roby-0.7.2/lib/roby/planning/model.rb
353
- * data_objects-0.9.2/lib/data_objects/connection.rb
354
- * logging-0.8.0/test/test_logger.rb
355
- * hobo-0.7.5/hobo_files/plugin/lib/hobo/scopes/defined_scope_proxy_extender.rb
356
- * logtwuncator-0.1.2/lib/log_twuncator/win32_file.rb
357
- * Dnsruby-1.0/test/tc_axfr.rb
358
- * spree-0.2.0/vendor/rails/railties/builtin/rails_info/rails/info.rb
359
- * margot-0.5.0/Rakefile
360
- * ruby-style-1.2.1/lib/style.rb
361
- * preferences-0.1.3/test/functional/preferences_test.rb
362
- * mogilefs-client-1.2.1/lib/mogilefs/backend.rb
363
- * flatulent-0.0.4/lib/flatulent.rb
364
- * actionpack-2.1.0/test/controller/caching_test.rb
365
- * buildr-1.3.1.1/lib/buildr/packaging/zip.rb
366
- * typo-5.0.3.98.1/vendor/syntax/lib/syntax/lang/ruby.rb
367
- * starling-0.9.3/lib/starling/server.rb
368
- * ruby-odbc-0.9995/ruby-odbc-0.9995/extconf.rb
369
- * ruby-ajp-0.2.1/lib/net/ajp13.rb
370
- * radiant-0.6.7/vendor/rails/railties/builtin/rails_info/rails/info.rb
371
- * xmlparser-0.6.8/xmlparser/samples/digesttest2.rb
372
- * rwdtorrent-0.05/extras/rubytorrent/controller.rb
373
- * typo-5.0.3.98.1/db/migrate/039_serialize_blog_attributes.rb
374
- * sparrow-0.3.1/lib/sparrow/runner.rb
375
- * rubyscript2exe-0.5.3/realstuff.rb
376
- * stomp-1.0.5/lib/stomp.rb
377
- * adhearsion-0.7.7/lib/rami.rb
378
- * bigtinker-0.93/extras/rconftool.rb
379
- * Buildr-0.17.0/lib/tasks/zip.rb
380
- * rmail-1.0.0/test/testheader.rb
381
- * datamapper-0.3.2/lib/data_mapper/adapters/sql/mappings/column.rb
382
- * fhlow-1.91.0/lib/module_cmdparse/cmdparse.rb
383
- * can_has_bots-0.1.0/adapters/jabber/bot.rb
384
- * spree-0.2.0/vendor/rails/actionpack/test/controller/caching_test.rb
385
- * nitro-0.41.0/lib/nitro/compiler/include.rb
386
- * wwwsrv-0.15.3/test/test_token.rb
387
- * wwwsrv-0.15.3/wwwsrv/fastcgi.rb
388
- * rgen-0.4.2/redist/xmlscan/tests/deftestcase.rb
389
- * muding-0.2.0/lib/initializer.rb
390
- * bj-1.0.1/lib/bj/runner.rb
391
- * dnsruby-1.1/test/tc_tsig.rb
392
- * ruote-0.9.18/test/ft_0c_testname.rb
393
- * aquarium-0.4.2/spec/aquarium/aspects/aspect_spec.rb
394
- * Ruby-MemCache-0.0.1/tests/stats.tests.rb
395
- * docdiff-0.3.2/docdiff/charstring.rb
396
- * automateit-0.80624/lib/automateit/account_manager/posix.rb
397
- * simplemapper-0.0.6/lib/simple_mapper/default_plugins/associations.rb
398
- * onebody-0.3.0/vendor/rails/activesupport/lib/active_support/multibyte/handlers/utf8_handler.rb
399
- * notification-0.2/Rakefile
400
- * websitary-0.5/lib/websitary/htmldiff.rb
401
- * feedupdater-0.2.5/lib/feed_updater/vendor/daemons/daemonize.rb
402
- * rogdl-0.2.3/lib/string.rb
403
- * yapra-0.1.1/legacy_plugins/Filter/sort.rb
404
- * rwdaddresses-1.03/extras/rconftool.rb
405
- * ruote-0.9.18/test/raw_prog_test.rb
406
- * sequel_core-2.2.0/lib/sequel_core/core_sql.rb
407
- * html-table-1.3.1/examples/advanced.rb
408
- * swivel-0.0.175/vendor/activesupport-2.0.2-/lib/active_support/multibyte/handlers/utf8_handler.rb
409
- * Rubernate-0.1.7/tests/rubernate/impl/dbi_generic_stub.rb
410
- * logmerge-1.0.0/lib/logmerge/resolv.rb
411
- * mongoose-0.2.5/lib/mongoose/column.rb
412
- * aquarium-0.4.2/spec/aquarium/aspects/advice_chain_node_spec.rb
413
- * qualitysmith_extensions-0.0.64/lib/qualitysmith_extensions/object/ancestry_of_method.rb
414
- * rubygame-2.3.0/samples/chimp.rb
415
- * rshell-0.1.0/lib/g/misc.rb
416
- * bibliomori-0.2.3/src/filter.rb
417
- * Ruby-MemCache-0.0.4/lib/memcache.rb
418
- * raggle-0.4.2/extras/test_html_renderer.rb
419
- * vpim-0.619/lib/vpim/rrule.rb
420
- * command-set-0.10.4/lib/command-set/arguments.rb
421
- * activerdf-1.6.10/lib/active_rdf/queryengine/query2jars2.rb
422
- * hobofields-0.7.5/lib/hobo_fields/field_spec.rb
423
- * mssqlclient-0.1.0/RAKEFILE
424
- * html-table-1.3.1/test/tc_head.rb
425
- * ruby-odbc-0.9995/ruby-odbc-0.9995/utf8/extconf.rb
426
- * ditz-0.3/lib/operator.rb
427
- * tolerances-1.0.0/lib/tolerance.rb
428
- * raingrams-0.0.9/lib/raingrams/multigram_model.rb
429
- * cheat-1.2.1/lib/site.rb
430
- * ap4r-0.3.6/lib/ap4r/mongrel.rb
431
- * radiant-0.6.7/vendor/rails/actionpack/test/controller/fragment_store_setting_test.rb
432
- * datamapper-0.3.2/lib/data_mapper/associations/belongs_to_association.rb
433
- * rools-0.4/RAKEFILE
434
- * gettext-1.91.0/test/test_gettext.rb
435
- * multibyte-0.0.1/lib/multibyte/handlers/utf8_handler.rb
436
- * data_objects-0.9.2/lib/data_objects/transaction.rb
437
- * onebody-0.3.0/vendor/rails/railties/builtin/rails_info/rails/info.rb
438
- * mongrel_esi-0.5.4/test/net/server_test.rb
439
- * dbc-2.0.0/lib/dbc/ocl.rb
440
- * rubylexer/test/data/heremonsters_dos.rb
441
- * lib/ftools.rb
442
- * lib/rdoc/generators/template/html/html.rb
443
- * lib/yaml/types.rb
444
- * ruby-1.8.7/sample/test.rb
445
- * ruby-1.8.7/test/fileutils/test_fileutils.rb
446
- * ruby-1.8.7/test/ruby/test_proc.rb
447
- * reg/regcompiler.rb
448
- * reg/regvar.rb
449
- * rubyparser/rubyparser.rb
450
- * /usr/lib/ruby/1.9.0/resolv.rb
451
- * /usr/lib/ruby/1.8/cmdparse2.rb
452
- * /usr/lib/ruby/1.8/puppet/provider/package/appdmg.rb
453
- * /usr/lib/ruby/1.8/qwik/util-css.rb
454
- * /usr/lib/ruby/1.8/rbbr/doc/ri2.rb
455
- * libxml-parser-ruby1.8/examples/digesttest.rb
456
- * glark/optproc.rb
457
- * hiki/hiki/plugin.rb
458
- * kagemai/lib/xmlscan/parser.rb
459
- * actionpack/test/controller/caching_test.rb
460
- * activesupport/lib/active_support/multibyte/handlers/utf8_handler.rb
461
- * railties/builtin/rails_info/rails/info.rb
462
- * railties/lib/initializer.rb
463
- * skktools/filters/skkdictools.rb
464
- * cursor-0.9/duck.rb
465
- * Ron-0.1.0/lib/ron.rb
466
- * ruby-debug-0.10.0/cli/ruby-debug/processor.rb
288
+
289
+
290
+ activerdf-1.6.10/lib/active_rdf/queryengine/query2jars2.rb
291
+ aquarium-0.4.2/spec/aquarium/aspects/aspect_spec.rb
292
+ aspectr-0-3-5/lib/aspectr.rb
293
+ authorails-1.0.0/lib/initializer.rb
294
+ bibliomori-0.2.3/src/filter.rb
295
+ cursor-0.9/cursor/circular.rb
296
+ cursor-0.9/duck.rb
297
+ data_objects-0.9.2/lib/data_objects/transaction.rb
298
+ docdiff-0.3.2/docdiff/charstring.rb
299
+ extract_curves-0.0.1/ruby_libs/pav/string/observable.rb
300
+ extract-curves-0.1.1/ruby_libs/pav/string/observable.rb
301
+ gecoder-with-gecode-0.8.2/lib/gecoder/interface/constraints/set/connection.rb
302
+ gettext-1.91.0/test/test_gettext.rb
303
+ lazytools-0.1.0/lib/dirstructure.rb
304
+ lockfile-1.4.3/lib/lockfile-1.4.3.rb
305
+ lockfile-1.4.3/lib/lockfile.rb
306
+ logging-0.8.0/test/test_logger.rb
307
+ logmerge-1.0.0/lib/logmerge/resolv.rb
308
+ main-2.8.0/lib/main/base.rb
309
+ muding-0.2.0/lib/initializer.rb
310
+ net-mdns-0.4/lib/net/dns/resolv.rb
311
+ not_naughty-0.5.1/spec/not_naughty_spec.rb
312
+ radiant-0.6.7/vendor/rails/railties/lib/initializer.rb
313
+ redparse/test/data/def_spec.rb
314
+ reg/regcompiler.rb
315
+ rgen-0.4.2/redist/xmlscan/tests/deftestcase.rb
316
+ rq-3.4.0/lib/rq/lockfile.rb
317
+ ruby-ajp-0.2.1/lib/net/ajp13.rb
318
+ ruby-contract-0.1.1/lib/contract/overrides.rb
319
+ ruby-debug-0.10.0/cli/ruby-debug/processor.rb
320
+ rubygame-2.3.0/lib/rubygame/rect.rb
321
+ rubygems-update-1.2.0/lib/rubygems/test_utilities.rb
322
+ rubylexer/test/data/heremonsters_dos.rb
323
+ ruby-nuggets-0.2.1.246/lib/nuggets/array/to_hash.rb
324
+ sequel_core-2.2.0/lib/sequel_core/core_sql.rb
325
+ skktools/filters/skkdictools.rb
326
+ stick-1.3.3/lib/stick/matrix.rb
327
+ stomp-1.0.5/lib/stomp.rb
328
+ syntax-1.0.0/lib/syntax/lang/ruby.rb
329
+ tournament-1.1.0/lib/tournament/bracket.rb
330
+ typo-5.0.3.98.1/config/environment.rb
331
+ typo-5.0.3.98.1/vendor/syntax/lib/syntax/lang/ruby.rb
332
+ /usr/lib/ruby/1.8/docdiff/charstring.rb
333
+ /usr/lib/ruby/1.8/puppet/provider/nameservice.rb
334
+ /usr/lib/ruby/1.8/qwik/util-css.rb
335
+ /usr/lib/ruby/1.8/resolv.rb
336
+ /usr/lib/ruby/1.8/rexml/doctype.rb
337
+ /usr/lib/ruby/1.8/tkextlib/bwidget/buttonbox.rb
338
+ /usr/lib/ruby/1.9.0/resolv.rb
339
+ /usr/lib/ruby/1.9.0/rexml/doctype.rb
340
+ /usr/share/doc/libtcltk-ruby1.8/examples/tkextlib/tkHTML/ss.rb
341
+ /usr/share/doc/libtcltk-ruby1.9/examples/tkextlib/tkHTML/ss.rb
342
+ /usr/share/doc/libxml-ruby/tests/tc_xml_parser8.rb
343
+ /usr/share/glark/options.rb
344
+ /usr/share/hiki/hiki/docdiff/charstring.rb
345
+ /usr/share/nadoka/rice/irc.rb
346
+ /usr/share/rails/actionpack/test/controller/caching_test.rb
347
+ /usr/share/rails/actionpack/test/controller/fragment_store_setting_test.rb
348
+ /usr/share/rails/activesupport/lib/active_support/multibyte/handlers/utf8_handler.rb
349
+ /usr/share/rails/railties/builtin/rails_info/rails/info.rb
350
+ /usr/share/rails/railties/lib/initializer.rb
351
+ /usr/share/skktools/filters/skkdictools.rb
352
+ /usr/share/tdiary/TC_tdiary-setup.rb
353
+ wwwsrv-0.15.3/wwwsrv/fastcgi.rb
354
+ xmlscan-0.2.3/tests/deftestcase.rb
355
+ ya2yaml-0.26/lib/ya2yaml.rb
356
+ ActiveRecord-JDBC-0.5/lib/jdbc_adapter/jdbc_hsqldb.rb
357
+ ruby-web-1.1.1/lib/webunit/parser.rb
358
+ filemanager-0.2.0/filemanager/app/controllers/fm/filemanager_controller.rb