Struct rustc_ap_rustc_session::parse::ParseSess[][src]

pub struct ParseSess {
    pub span_diagnostic: Handler,
    pub unstable_features: UnstableFeatures,
    pub config: CrateConfig,
    pub edition: Edition,
    pub missing_fragment_specifiers: Lock<FxHashMap<Span, NodeId>>,
    pub raw_identifier_spans: Lock<Vec<Span>>,
    pub included_mod_stack: Lock<Vec<PathBuf>>,
    pub buffered_lints: Lock<Vec<BufferedEarlyLint>>,
    pub ambiguous_block_expr_parse: Lock<FxHashMap<Span, Span>>,
    pub gated_spans: GatedSpans,
    pub symbol_gallery: SymbolGallery,
    pub reached_eof: Lock<bool>,
    pub env_depinfo: Lock<FxHashSet<(Symbol, Option<Symbol>)>>,
    pub type_ascription_path_suggestions: Lock<FxHashSet<Span>>,
    pub assume_incomplete_release: bool,
    // some fields omitted

Info about a parsing session.


span_diagnostic: Handlerunstable_features: UnstableFeaturesconfig: CrateConfigedition: Editionmissing_fragment_specifiers: Lock<FxHashMap<Span, NodeId>>raw_identifier_spans: Lock<Vec<Span>>

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

included_mod_stack: Lock<Vec<PathBuf>>

Used to determine and report recursive module inclusions.

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.

gated_spans: GatedSpanssymbol_gallery: SymbolGalleryreached_eof: Lock<bool>

The parser has reached Eof due to an unclosed brace. Used to silence unnecessary errors.

env_depinfo: Lock<FxHashSet<(Symbol, Option<Symbol>)>>

Environment variables accessed during the build and their values when they exist.

type_ascription_path_suggestions: Lock<FxHashSet<Span>>

All the type ascriptions expressions that have had a suggestion for likely path typo.

assume_incomplete_release: bool

Whether cfg(version) should treat the current release as incomplete


impl ParseSess[src]

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

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

pub fn with_silent_emitter() -> Self[src]

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

pub fn clone_source_map(&self) -> Lrc<SourceMap>[src]

pub fn buffer_lint(
    lint: &'static Lint,
    span: impl Into<MultiSpan>,
    node_id: NodeId,
    msg: &str

pub fn buffer_lint_with_diagnostic(
    lint: &'static Lint,
    span: impl Into<MultiSpan>,
    node_id: NodeId,
    msg: &str,
    diagnostic: BuiltinLintDiagnostics

pub fn expr_parentheses_needed(
    err: &mut DiagnosticBuilder<'_>,
    span: Span,
    alt_snippet: Option<String>

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 !RefUnwindSafe for ParseSess

impl !Send for ParseSess

impl !Sync for ParseSess

impl Unpin for ParseSess

impl !UnwindSafe for ParseSess

Blanket Implementations

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

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<'a, T> Captures<'a> for T where
    T: ?Sized

impl<T> Erased for T[src]

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

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 

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

type Error = !

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,