diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-11-19 07:10:09 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-11-19 07:10:09 +0000 |
commit | 7a978073c9160e6ed1c706aaf034b2c4c4d104e1 (patch) | |
tree | f1ad61761e4b28b18e939dd1667981810cc49d4b /test/ripper | |
parent | 03c4e447fab16864abed71b174a0636d9524b5b9 (diff) |
* parse.y (parser_yylex): should clear parser->tokp as well.
[ruby-dev:32250]
* parse.y: remove NEED_ASSOC that break test_parser_events.
* parse.y (parser_yylex): should not decrement line numbers at the
end of file.
* file.c (rb_find_file_ext): search .rb files first through in the
loadpath.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ripper')
-rw-r--r-- | test/ripper/dummyparser.rb | 70 | ||||
-rw-r--r-- | test/ripper/test_files.rb | 2 | ||||
-rw-r--r-- | test/ripper/test_parser_events.rb | 2 |
3 files changed, 64 insertions, 10 deletions
diff --git a/test/ripper/dummyparser.rb b/test/ripper/dummyparser.rb index 31fcafb159..483ac0d013 100644 --- a/test/ripper/dummyparser.rb +++ b/test/ripper/dummyparser.rb @@ -30,7 +30,7 @@ class NodeList end def prepend(items) - @list[0,0] = items + @list.unshift items end def to_s @@ -98,32 +98,44 @@ class DummyParser < Ripper args end - def on_arglist_new + def on_args_new NodeList.new end - def on_arglist_add(list, arg) + def on_args_add(list, arg) list.push(arg) end - def on_arglist_add_block(list, blk) - list.push('&' + blk.to_s) + def on_args_add_block(list, blk) + if blk + list.push('&' + blk.to_s) + else + list + end end - def on_arglist_add_star(list, arg) + def on_args_add_star(list, arg) list.push('*' + arg.to_s) end - def on_arglist_prepend(list, args) + def on_args_prepend(list, args) list.prepend args list end def on_method_add_arg(m, arg) + if arg == nil + arg = on_args_new + end m.children.push arg m end + def on_method_add_block(m, b) + on_args_add_block(m.children, b) + m + end + def on_assoc_new(a, b) Node.new('assoc', a, b) end @@ -390,7 +402,7 @@ class DummyParser < Ripper Node.new('sclass', a, b) end - def on_space(a) + def on_sp(a) Node.new('space', a) end @@ -514,4 +526,46 @@ class DummyParser < Ripper Node.new('zsuper') end + def on_backref(a) + a + end + def on_comma(a) + a + end + def on_gvar(a) + a + end + def on_ident(a) + a + end + def on_int(a) + a + end + def on_kw(a) + a + end + def on_lbrace(a) + a + end + def on_rbrace(a) + a + end + def on_lbracket(a) + a + end + def on_rbracket(a) + a + end + def on_lparen(a) + a + end + def on_rparen(a) + a + end + def on_op(a) + a + end + def on_semicolon(a) + a + end end diff --git a/test/ripper/test_files.rb b/test/ripper/test_files.rb index e5ccaf4b06..c2d7a50a3f 100644 --- a/test/ripper/test_files.rb +++ b/test/ripper/test_files.rb @@ -22,4 +22,4 @@ end rescue LoadError end -
\ No newline at end of file + diff --git a/test/ripper/test_parser_events.rb b/test/ripper/test_parser_events.rb index a5d6a62f66..fa640a37ec 100644 --- a/test/ripper/test_parser_events.rb +++ b/test/ripper/test_parser_events.rb @@ -495,4 +495,4 @@ class TestRipper_ParserEvents < Test::Unit::TestCase end rescue LoadError -end
\ No newline at end of file +end |