summaryrefslogtreecommitdiff
path: root/ast.rb
AgeCommit message (Collapse)Author
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