Class: Prism::ParseResult
| Relationships & Source Files | |
| Namespace Children | |
|
Classes:
| |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Result
|
|
|
Instance Chain:
self,
Result
|
|
| Inherits: |
Prism::Result
|
| Defined in: | lib/prism/parse_result.rb, lib/prism/parse_result/comments.rb, lib/prism/parse_result/errors.rb, lib/prism/parse_result/newlines.rb |
Overview
This is a result specific to the parse and parse_file methods.
Class Method Summary
-
.new(value, comments, magic_comments, data_loc, errors, warnings, source) ⇒ ParseResult
constructor
Create a new parse result object with the given values.
Result - Inherited
| .new | Create a new result object with the given values. |
Instance Attribute Summary
-
#value
readonly
The syntax tree that was parsed from the source code.
Result - Inherited
| #comments | The list of comments that were encountered during parsing. |
| #data_loc | An optional location that represents the location of the __END__ marker and the rest of the content of the file. |
| #errors | The list of errors that were generated during parsing. |
| #failure? | Returns true if there were errors during parsing and false if there were not. |
| #magic_comments | The list of magic comments that were encountered during parsing. |
| #source | A Source instance that represents the source code that was parsed. |
| #success? | Returns true if there were no errors during parsing and false if there were. |
| #warnings | The list of warnings that were generated during parsing. |
Instance Method Summary
-
#attach_comments!
Attach the list of comments to their respective locations in the tree.
-
#deconstruct_keys(keys)
Implement the hash pattern matching interface for
ParseResult. -
#errors_format
Returns a string representation of the syntax tree with the errors displayed inline.
-
#mark_newlines!
Walk the tree and mark nodes that are on a new line, loosely emulating the behavior of CRuby’s
:linetracepoint event.
Result - Inherited
| #code_units_cache | Create a code units cache for the given encoding. |
| #deconstruct_keys | Implement the hash pattern matching interface for |
| #encoding | Returns the encoding of the source code that was parsed. |
Constructor Details
.new(value, comments, magic_comments, data_loc, errors, warnings, source) ⇒ ParseResult
Create a new parse result object with the given values.
Instance Attribute Details
#value (readonly)
The syntax tree that was parsed from the source code.
# File 'lib/prism/parse_result.rb', line 750
attr_reader :value
Instance Method Details
#attach_comments!
Attach the list of comments to their respective locations in the tree.
#deconstruct_keys(keys)
Implement the hash pattern matching interface for ParseResult.
# File 'lib/prism/parse_result.rb', line 759
def deconstruct_keys(keys) super.merge!(value: value) end
#errors_format
Returns a string representation of the syntax tree with the errors displayed inline.
#mark_newlines!
Walk the tree and mark nodes that are on a new line, loosely emulating the behavior of CRuby’s :line tracepoint event.