aboutsummaryrefslogtreecommitdiffstats
path: root/test/ripper
Commit message (Collapse)AuthorAgeFilesLines
* Warn also numbered parameter like parametersNobuyoshi Nakada2019-12-201-1/+1
| | | | [Feature #16433]
* [ripper] Fixed unique key check in pattern matchingNobuyoshi Nakada2019-11-261-0/+25
| | | | | | Check keys * by an internal table, instead of unstable dispatched results * and by parsed key values, instead of escaped forms in the source
* [ripper] Quoted label without expression must be a local variableNobuyoshi Nakada2019-11-251-0/+3
| | | | | | | | | The difference from 0b8c73aa65add5c57b46b0cfdf4e661508802172 is to add the result of `string_add` event to marking objects. ```C RNODE($1)->nd_rval = add_mark_object(p, $$); ```
* Revert "[ripper] Quoted label without expression must be a local variable"Nobuyoshi Nakada2019-11-201-3/+0
| | | | | This reverts commit 0b8c73aa65add5c57b46b0cfdf4e661508802172, which seems breaking RVALUE consistency check.
* [ripper] Quoted label without expression must be a local variableNobuyoshi Nakada2019-11-191-0/+3
|
* `#@1` is no longer an embedded variableNobuyoshi Nakada2019-11-141-1/+1
|
* Revert "Method reference operator"Nobuyoshi Nakada2019-11-122-9/+0
| | | | | This reverts commit 67c574736912003c377218153f9d3b9c0c96a17b. [Feature #16275]
* Arguments forwarding [Feature #16253]Nobuyoshi Nakada2019-10-221-0/+6
|
* Removed idNUMPARAM_0Nobuyoshi Nakada2019-09-251-1/+0
|
* Changed numbered parameter prefixNobuyoshi Nakada2019-09-243-16/+9
|
* Name dynamically defined methods with line numbersNobuyoshi Nakada2019-09-131-35/+35
|
* Make ripper support **nil syntaxJeremy Evans2019-08-301-0/+10
| | | | | | | | | The on_params hook will use :nil as the keyword rest argument. There is a new on_nokw_param hook as well. This fixes a type issue in the previous code, where an ID was passed where a VALUE was the declared type. The symbol :nil is passed instead of the id.
* Revert "Add pipeline operator [Feature #15799]"Nobuyoshi Nakada2019-08-291-2/+0
| | | | | | | | | | | | | This reverts commits: * d365fd5a024254d7c105a62a015a7ea29ccf3e5d * d780c3662484d6072b3a6945b840049de72c2096 * aa7211836b769231a2a8ef6b6ec2fd0ec882ef29 * 043f010c28e82ea38978bf8ed885416f133b5b75 * bb4dd7c6af05c7821d572e2592ea3d0cc748d81f * 043f010c28e82ea38978bf8ed885416f133b5b75 * f169043d81524b5b529f2c1e9c35437ba5bc3a7a http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/94645
* double memory limit on MJIT.Koichi Sasada2019-08-091-1/+2
| | | | | On test with MJIT, sometimes it fails like: http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2189967
* Split test/ripper/test_files.rb to run in parallelNobuyoshi Nakada2019-07-237-18/+56
|
* Added assertions for Unicode escaped CHAR scanner eventsNobuyoshi Nakada2019-07-061-0/+11
|
* Do not dispatch a nil token in ripperNobuyoshi Nakada2019-07-041-0/+6
| | | | | | | As a comment token includes the newline, so delayed newline token just follows it should not be dispatched. [Bug #11485] Co-Authored-By: Jeremy Evans <code@jeremyevans.net>
* Add parentheses to suppress a warningNobuyoshi Nakada2019-06-281-4/+4
|
* Test string contentNobuyoshi Nakada2019-06-281-0/+1
|
* Removed unused variablesNobuyoshi Nakada2019-06-281-1/+0
|
* Fixed a variable nameNobuyoshi Nakada2019-06-281-1/+1
|
* Fix ripper fatalNobuyoshi Nakada2019-06-271-0/+3
| | | | | * parse.y (parser_yylex): return END_OF_INPUT at unterminated here document instead of an error. [Bug #15962]
* Test for unterminated here-docsNobuyoshi Nakada2019-06-271-0/+6
|
* Add pipeline operator [Feature #15799]Nobuyoshi Nakada2019-06-131-0/+2
|
* Fix the error token on "invalid hex escape"Nobuyoshi Nakada2019-06-031-0/+10
| | | | | * parse.y (tok_hex): flush token after dispatching the "invalid hex escape" parse error.
* parse.y: adjust here-doc error tokenNobuyoshi Nakada2019-05-301-3/+7
| | | | | | * parse.y (here_document): adjust token to the here-doc identifier in compile_error when a here-document misses the closing identifier.
* Include stack elements left after errorsNobuyoshi Nakada2019-05-301-0/+22
|
* parse.y: fix state after ivar/cvarNobuyoshi Nakada2019-05-291-0/+18
| | | | | * parse.y (parse_atmark): return EXPR_END or EXPR_ENDFN, depending on the previous state, even incomplete names consistently.
* parse.y: flush invalid charNobuyoshi Nakada2019-05-291-1/+10
|
* Do not make an incomplete escape a valid charNobuyoshi Nakada2019-05-271-1/+1
|
* Ripper#tokenNobuyoshi Nakada2019-05-271-4/+5
| | | | | * parse.y (ripper_token): added Ripper#token which returns the current token string. [EXPERIMENTAL]
* Fix scanner event at invalid syntaxNobuyoshi Nakada2019-05-261-2/+14
| | | | | | * parse.y (parser_yyerror, parser_compile_error): revert r67224 (e5d10cda07b23682e5e4e64d1324e4d3247d4785) "Flush erred token".
* require 'stringio'NARUSE, Yui2019-05-091-0/+1
|
* Introduce pattern matching [EXPERIMENTAL]ktsj2019-04-172-0/+320
| | | | | | [ruby-core:87945] [Feature #14912] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: removed redundant number_arg parser eventnobu2019-03-191-7/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: fix var_ref of numbered param in rippernobu2019-03-191-0/+1
| | | | | | | | * parse.y (string_dvar, user_variable): register numbered parameter in ripper for var_ref. [ruby-core:91867] [Bug #15673] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: fix segv with Ripper#yydebugnobu2019-03-191-0/+9
| | | | | | | | * parse.y (parser_token_value_print): in ripper, ID values are wrapped in NODE_RIPPER at set_yylval_name(), so print the Symbol wrapped together. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Numbered parameters [Feature #4475]nobu2019-03-172-1/+20
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dsym should be treated as string [ruby-core:91852] [Bug #15670]ktsj2019-03-161-0/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: no punctuation instance/class variablesnobu2019-03-141-2/+2
| | | | | | | | * parse.y (parse_atmark): exclude punctuation follows @ marks, whereas it is inclusive after $ mark as some punctuation global variables exist. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add ignored_sp eventnobu2019-03-091-0/+7
| | | | | | | | * ext/ripper/lib/ripper/lexer.rb (Ripper::Lexer): add ignored_sp event which will be fired from Ripper::Lexer#on_heredoc_dedent method. [ruby-core:91727] [Bug #15648] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use assert_respond_tonobu2019-03-091-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Method reference operatornobu2018-12-312-0/+9
| | | | | | | | Introduce the new operator for method reference, `.:`. [Feature #12125] [Feature #13581] [EXPERIMENTAL] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: remove "shadowing outer local variable" warningmame2018-10-261-7/+0
| | | | | | | | | | | You can now write the following without warning. user = User.all.find {|user| cond(user) } Fixes [Feature #12490]. A patch from Soutaro Matsumoto <matsumoto@soutaro.com>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65369 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert "parse.y: remove "shadowing outer local variable" warning"mame2018-10-261-0/+7
| | | | | | I forgot to add the copyright of the patch... git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: remove "shadowing outer local variable" warningmame2018-10-261-7/+0
| | | | | | | | | | You can now write the following without warning. user = User.all.find {|user| cond(user) } Fixes [Feature #12490]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ripper/test_parser_events.rb (test_block_variables): bump RLIMIT_AS againnormal2018-08-151-1/+1
| | | | | | I still seem to need more memory for parallel tests with MJIT... git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ripper/test_parser_events.rb (test_block_variables): increase RLIMIT_ASnormal2018-08-061-2/+5
| | | | | | | Unfortunately, MJIT goes over the 100M RLIMIT_AS for this test on x86-64 (Debian 9) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ripper/test_lexer.rb: add test for r62743k0kubun2018-03-131-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ripper: fix escaped spacenobu2018-03-121-0/+5
| | | | | | | | | * parse.y: use tSP same as ripper instead of tSPACE. [ruby-core:86080] [Bug #14597] * ext/ripper/eventids2.c: tSP is defined in ripper.c now. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e