[−][src]Struct rustc_span::hygiene::HygieneEncodeContext

pub struct HygieneEncodeContext {
    serialized_ctxts: Lock<FxHashSet<SyntaxContext>>,
    latest_ctxts: Lock<FxHashSet<SyntaxContext>>,
    serialized_expns: Lock<FxHashSet<ExpnId>>,
    latest_expns: Lock<FxHashSet<ExpnId>>,
}

Fields

serialized_ctxts: Lock<FxHashSet<SyntaxContext>>

All SyntaxContexts for which we have written SyntaxContextData into crate metadata. This is None after we finish encoding SyntaxContexts, to ensure that we don't accidentally try to encode any more SyntaxContexts

latest_ctxts: Lock<FxHashSet<SyntaxContext>>

The SyntaxContexts that we have serialized (e.g. as a result of encoding Spans) in the most recent 'round' of serializnig. Serializing SyntaxContextData may cause us to serialize more SyntaxContexts, so serialize in a loop until we reach a fixed point.

serialized_expns: Lock<FxHashSet<ExpnId>>latest_expns: Lock<FxHashSet<ExpnId>>

Implementations

impl HygieneEncodeContext[src]

pub fn encode<T, R, F: FnMut(&mut T, u32, &SyntaxContextData) -> Result<(), R>, G: FnMut(&mut T, u32, &ExpnData) -> Result<(), R>>(
    &self,
    encoder: &mut T,
    encode_ctxt: F,
    encode_expn: G
) -> Result<(), R>
[src]

Trait Implementations

impl Default for HygieneEncodeContext[src]

Auto Trait Implementations

impl !RefUnwindSafe for HygieneEncodeContext

impl Send for HygieneEncodeContext

impl !Sync for HygieneEncodeContext

impl Unpin for HygieneEncodeContext

impl UnwindSafe for HygieneEncodeContext

Blanket Implementations

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

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

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

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.