Struct lib_ruby_parser::ParserResult [−][src]
#[repr(C)]pub struct ParserResult { pub ast: Option<Box<Node>>, pub tokens: Vec<Token>, pub diagnostics: Vec<Diagnostic>, pub comments: Vec<Comment>, pub magic_comments: Vec<MagicComment>, pub input: DecodedInput, }
Expand description
Combination of all data that Parser
can give you
Fields
ast: Option<Box<Node>>
Abstract Syntax Tree that was constructed from you code.
Contains None
if the code gives no AST nodes
tokens: Vec<Token>
List of tokens returned by a Lexer and consumed by a Parser. Empty unless ParserOptions::record_tokens is set to true.
diagnostics: Vec<Diagnostic>
List of all diagnostics (errors and warings) that have been recorded during lexing and parsing
comments: Vec<Comment>
List of comments extracted from the source code.
magic_comments: Vec<MagicComment>
List of magic comments extracted from the source code.
input: DecodedInput
Input that was used for parsing.
Note: this input is not necessary the same byte array that
you passed to Parser::parse. If encoding of the input is
not UTF-8
or ASCII-8BIT/BINARY
Parser invokes decoder
that usually produces a different sequence of bytes.
Pass this data to Loc::source
, otherwise you’ll get
incorrect source ranges.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ParserResult
impl Send for ParserResult
impl Sync for ParserResult
impl Unpin for ParserResult
impl UnwindSafe for ParserResult