[][src]Struct syntax::parse::ParseSess

pub struct ParseSess {
    pub span_diagnostic: Handler,
    pub unstable_features: UnstableFeatures,
    pub config: CrateConfig,
    pub edition: Edition,
    pub missing_fragment_specifiers: Lock<FxHashSet<Span>>,
    pub raw_identifier_spans: Lock<Vec<Span>>,
    pub buffered_lints: Lock<Vec<BufferedEarlyLint>>,
    pub ambiguous_block_expr_parse: Lock<FxHashMap<Span, Span>>,
    pub param_attr_spans: Lock<Vec<Span>>,
    pub let_chains_spans: Lock<Vec<Span>>,
    pub async_closure_spans: Lock<Vec<Span>>,
    // some fields omitted
}

Info about a parsing session.

Fields

span_diagnostic: Handlerunstable_features: UnstableFeaturesconfig: CrateConfigedition: Editionmissing_fragment_specifiers: Lock<FxHashSet<Span>>raw_identifier_spans: Lock<Vec<Span>>

Places where raw identifiers were used. This is used for feature-gating raw identifiers.

buffered_lints: Lock<Vec<BufferedEarlyLint>>ambiguous_block_expr_parse: Lock<FxHashMap<Span, Span>>

Contains the spans of block expressions that could have been incomplete based on the operation token that followed it, but that the parser cannot identify without further analysis.

param_attr_spans: Lock<Vec<Span>>let_chains_spans: Lock<Vec<Span>>async_closure_spans: Lock<Vec<Span>>

Methods

impl ParseSess[src]

pub fn new(file_path_mapping: FilePathMapping) -> Self[src]

pub fn with_span_handler(
    handler: Handler,
    source_map: Lrc<SourceMap>
) -> ParseSess
[src]

pub fn source_map(&self) -> &SourceMap[src]

pub fn buffer_lint<S: Into<MultiSpan>>(
    &self,
    lint_id: BufferedEarlyLintId,
    span: S,
    id: NodeId,
    msg: &str
)
[src]

pub fn expr_parentheses_needed(
    &self,
    err: &mut DiagnosticBuilder,
    span: Span,
    alt_snippet: Option<String>
)
[src]

Extend an error with a suggestion to wrap an expression with parentheses to allow the parser to continue parsing the following operation as part of the same expression.

Auto Trait Implementations

impl Unpin for ParseSess

impl !Sync for ParseSess

impl !Send for ParseSess

impl !RefUnwindSafe for ParseSess

impl !UnwindSafe for ParseSess

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<E> SpecializationError for E[src]

impl<T> Erased for T[src]