aboutsummaryrefslogtreecommitdiffstats
path: root/ext/ripper
Commit message (Collapse)AuthorAgeFilesLines
* ripper: fix `#tok` on some error events [Bug 17345]Nobuhiro IMAI2020-12-191-4/+9
| | | | sorting alias target by event arity, and setup suitable `Elem` for error.
* Ripper: Refined error callbacks [Bug #17345]Nobuyoshi Nakada2020-12-151-2/+2
|
* ripper: return pushed new token instead of the token listNobuyoshi Nakada2020-12-151-1/+3
|
* Store all kinds of syntax errors [Bug #17345]Nobuyoshi Nakada2020-11-261-1/+3
|
* [DOC] Ripper.{lex,tokenize} now always return full tokens. [ci skip]Nobuhiro IMAI2020-11-201-4/+2
|
* [Feature #17276] Moved raise_errors support to Ripper::Lexer#parseNobuyoshi Nakada2020-11-201-35/+19
|
* Ripper.{lex,tokenize} return full tokens even if syntax errorNobuhiro IMAI2020-11-201-0/+8
| | | | yet another implements [Feature #17276]
* Update documentation for Ripper.{lex,tokenize,sexp,sexp_raw} [ci skip]Jeremy Evans2020-11-172-0/+17
|
* Support raise_errors keyword for Ripper.{lex,tokenize,sexp,sexp_raw}Jeremy Evans2020-11-172-8/+43
| | | Implements [Feature #17276]
* fix public interfaceKoichi Sasada2020-11-181-1/+1
| | | | | | | | | | | | | | | | | | To make some kind of Ractor related extensions, some functions should be exposed. * include/ruby/thread_native.h * rb_native_mutex_* * rb_native_cond_* * include/ruby/ractor.h * RB_OBJ_SHAREABLE_P(obj) * rb_ractor_shareable_p(obj) * rb_ractor_std*() * rb_cRactor and rm ractor_pub.h and rename srcdir/ractor.h to srcdir/ractor_core.h (to avoid conflict with include/ruby/ractor.h)
* Introduce Ractor mechanism for parallel executionKoichi Sasada2020-09-031-14/+15
| | | | | | | | | | | | | | | | This commit introduces Ractor mechanism to run Ruby program in parallel. See doc/ractor.md for more details about Ractor. See ticket [Feature #17100] to see the implementation details and discussions. [Feature #17100] This commit does not complete the implementation. You can find many bugs on using Ractor. Also the specification will be changed so that this feature is experimental. You will see a warning when you make the first Ractor with `Ractor.new`. I hope this feature can help programmers from thread-safety issues.
* sed -i '/rmodule.h/d'卜部昌平2020-08-271-1/+0
|
* sed -i '/r_cast.h/d'卜部昌平2020-08-271-1/+0
|
* sed -i '\,2/extern.h,d'卜部昌平2020-08-271-1/+0
|
* Allow references to $$ in Ripper DSLNobuyoshi Nakada2020-05-291-0/+3
|
* sed -i 's|ruby/impl|ruby/internal|'卜部昌平2020-05-111-140/+140
| | | | To fix build failures.
* sed -i s|ruby/3|ruby/impl|g卜部昌平2020-05-111-140/+140
| | | | This shall fix compile errors.
* Suppress warnings by gcc 10.1.0-RC-20200430Nobuyoshi Nakada2020-05-041-1/+9
| | | | | | | | | | | | | | | | | | | | | | * Folding results should not be empty. If `OnigCodePointCount(to->n)` were 0, `for` loop using `fn` wouldn't execute and `ncs` elements are not initialized. ``` enc/unicode.c:557:21: warning: 'ncs[0]' may be used uninitialized in this function [-Wmaybe-uninitialized] 557 | for (i = 0; i < ncs[0]; i++) { | ~~~^~~ ``` * Cast to `enum yytokentype` Additional enums for scanner events by ripper are not included in `yytokentype`. ``` ripper.y:7274:28: warning: implicit conversion from 'enum <anonymous>' to 'enum yytokentype' [-Wenum-conversion] ```
* Merge pull request #2991 from shyouhei/ruby.h卜部昌平2020-04-081-1/+152
| | | Split ruby.h
* Workaround for bison provided by scoop on mswin environmentHiroshi SHIBATA2020-02-151-0/+1
|
* Get rid of use of special variablesJeremy Evans2020-01-201-6/+6
| | | | | Use `"\n"` and `IO#fileno` instead of `$/` and `$.` respectively. [Feature #14240]
* Update dependencies in makefiles againKazuhiro NISHIYAMA2020-01-171-0/+1
| | | | patch from https://travis-ci.org/ruby/ruby/jobs/638231960
* Updated dependencies on internal/warnings.hNobuyoshi Nakada2019-12-311-0/+1
| | | | | Needed for `UNALIGNED_MEMBER_ACCESS` using `COMPILER_WARNING_`* macros.
* update dependencies卜部昌平2019-12-261-0/+28
|
* Allow `$10` and more in the Ripper DSLNobuyoshi Nakada2019-11-261-7/+4
|
* Update dependenciesNobuyoshi Nakada2019-11-181-1/+0
|
* Update comment of Ripper.lexYuichiro Kaneko2019-11-131-10/+10
| | | | This is follow up of 1f7cb4bee9.
* Revert "Method reference operator"Nobuyoshi Nakada2019-11-121-1/+0
| | | | | This reverts commit 67c574736912003c377218153f9d3b9c0c96a17b. [Feature #16275]
* Remove unneeded exec bits from some filesDavid Rodríguez2019-11-094-0/+0
| | | | | | | | | | | | | I noticed that some files in rubygems were executable, and I could think of no reason why they should be. In general, I think ruby files should never have the executable bit set unless they include a shebang, so I run the following command over the whole repo: ```bash find . -name '*.rb' -type f -executable -exec bash -c 'grep -L "^#!" $1 || chmod -x $1' _ {} \; ```
* Suppress unused variable warningNobuyoshi Nakada2019-11-071-1/+1
|
* * expand tabs. [ci skip]git2019-10-211-155/+155
| | | | | Tabs were expanded because previously the file did not have any tab indentation. Please update your editor config, and use misc/expand_tabs.rb in the pre-commit hook.
* Look up event ID offsets by token as indexNobuyoshi Nakada2019-10-211-168/+164
|
* Also BDOT2 and BDOT3 are operatorsNobuyoshi Nakada2019-10-201-0/+2
|
* Extend Ripper DSL to set to pseudo variables other than `$$`Nobuyoshi Nakada2019-10-191-4/+6
|
* Changed numbered parameter prefixNobuyoshi Nakada2019-09-241-3/+0
|
* [DOC] Update output of Ripper.sexp [ci skip]Kazuhiro NISHIYAMA2019-09-071-1/+1
|
* Revert "Add pipeline operator [Feature #15799]"Nobuyoshi Nakada2019-08-291-1/+0
| | | | | | | | | | | | | This reverts commits: * d365fd5a024254d7c105a62a015a7ea29ccf3e5d * d780c3662484d6072b3a6945b840049de72c2096 * aa7211836b769231a2a8ef6b6ec2fd0ec882ef29 * 043f010c28e82ea38978bf8ed885416f133b5b75 * bb4dd7c6af05c7821d572e2592ea3d0cc748d81f * 043f010c28e82ea38978bf8ed885416f133b5b75 * f169043d81524b5b529f2c1e9c35437ba5bc3a7a http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/94645
* ext/ripper/lib/ripper/lexer.rb: Consistently use `Array#push`Yusuke Endoh2019-08-071-1/+1
| | | | instead of <<. All the other callsites use `push`.
* ext/ripper/lib/ripper/lexer.rb: fix a wrong delegationYusuke Endoh2019-08-071-1/+1
| | | | The target method name is a typo.
* Include ruby/assert.h in ruby/ruby.h so that assertions can be thereNobuyoshi Nakada2019-07-141-0/+1
|
* Show the parser states in pretty_print tooNobuyoshi Nakada2019-06-271-0/+2
|
* Support Bison 3 in ripperNobuyoshi Nakada2019-06-171-0/+1
|
* Prefer `enum yytokentype` to intNobuyoshi Nakada2019-06-151-2/+2
|
* Add pipeline operator [Feature #15799]Nobuyoshi Nakada2019-06-131-0/+1
|
* Ripper::Lexer: fallback parse error token to the previous oneNobuyoshi Nakada2019-06-121-1/+11
|
* Include stack elements left after errorsNobuyoshi Nakada2019-05-301-1/+1
|
* ripper: Ripper::Lexer#scanNobuyoshi Nakada2019-05-291-4/+29
| | | | | | * ext/ripper/lib/ripper/lexer.rb (Ripper::Lexer#scan): parses the code and returns the result elements including errors. [EXPERIMENTAL]
* Fix typos in Ripper::Lexer#inspect and Ripper::Lexer#pretty_printNobuyoshi Nakada2019-05-281-2/+2
|
* Added #inspect and #pretty_inspect to Ripper::Lexer::ElemNobuyoshi Nakada2019-05-271-1/+16
|
* Ripper: no documents of fallback methodsNobuyoshi Nakada2019-05-221-0/+2
|