ast.rb: RubyVM::AST.parse and .of accepts save_script_lines: true
#4581
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Synopsis:
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 toRubyVM::AST.of or .parse, instead of recording all parsed program texts.
RubyVM::AST::Node
instances created withsave_script_lines: true
option respond to
#script_lines
and#source
. The former returnsthe whole original source code as an array of the lines. The latter returns
the code fragment that corresponds to this AST.
Note that RubyVM::AST is just for ruby internal use, so the compatibility
of the methods is never guaranteed.
This changeset is approved by @matz .