summaryrefslogtreecommitdiff
path: root/ast.rb
AgeCommit message (Collapse)Author
2021-08-20ast.c: Rename "save_script_lines" to "keep_script_lines"Yusuke Endoh
... as per ko1's preference. He is preparing to extend this feature to ISeq for his new debugger. He prefers "keep" to "save" for this wording. This API is internal and not included in any released version, so I change it in advance.
2021-06-21Experimentally expose RubyVM::AST::Node#node_idYusuke Endoh
Now ISeq#to_a includes the node_id list for each bytecode instruction. I want a way to retrieve the AST::Node instance corresponding to an instruction for a research purpose including TypeProf-based LSP server.
2021-06-18ast.rb: RubyVM::AST.parse and .of accepts `save_script_lines: true`Yusuke Endoh
This option makes the parser keep the original source as an array of the original code lines. This feature exploits the mechanism of `SCRIPT_LINES__` but records only the specified code that is passed to RubyVM::AST.of or .parse, instead of recording all parsed program texts. Notes: Merged: https://github.com/ruby/ruby/pull/4581
2021-06-06ast.rb: reduce nestingNobuyoshi Nakada
2020-06-24Fix RubyVM::AbstractSyntaxTree documentMasataka Pocke Kuwabara
RubyVM::AbstractSyntaxTree is a module actually, but the document says "class". Notes: Merged: https://github.com/ruby/ruby/pull/3251
2020-06-19[Feature #16254] Use `Primitive.func` styleNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3165
2020-06-19[Feature #16254] Use `__builtin.func` styleNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3165
2020-01-03Fix variable name and add more example [ci skip]Kazuhiro NISHIYAMA
2020-01-03Fix example of node.type [ci skip]Kazuhiro NISHIYAMA
``` % docker run -it --rm rubylang/all-ruby env ALL_RUBY_SINCE=ruby-2.6 ./all-ruby -e 'root = RubyVM::AbstractSyntaxTree.parse("x = 1 + 2") p [root, root.type] call = root.children[2] p [call, call.type] ' ruby-2.6.0 [#<RubyVM::AbstractSyntaxTree::Node:SCOPE@1:0-1:9>, :SCOPE] [#<RubyVM::AbstractSyntaxTree::Node:LASGN@1:0-1:9>, :LASGN] ... ruby-2.7.0 [#<RubyVM::AbstractSyntaxTree::Node:SCOPE@1:0-1:9>, :SCOPE] [#<RubyVM::AbstractSyntaxTree::Node:LASGN@1:0-1:9>, :LASGN] ```
2019-12-14Improve highlighting in RubyVM::AbstractSyntaxTree docs when using `ri`Benoit Daloze
2019-12-14Clarify in the documentation that RubyVM::AbstractSyntaxTree is not stable APIBenoit Daloze
* See [Feature #14844].
2019-11-08fix line break code (fix to LF)Koichi Sasada
2019-11-08use builtin for RubyVM::AbstractSyntaxTree.Koichi Sasada
Define RubyVM::AbstractSyntaxTree in ast.rb with __builtin functions. Notes: Merged: https://github.com/ruby/ruby/pull/2655