enum IncrCompSession {
    NotInitialized,
    Active {
        session_directory: PathBuf,
        _lock_file: Lock,
    },
    Finalized {
        session_directory: PathBuf,
    },
    InvalidBecauseOfErrors {
        session_directory: PathBuf,
    },
}
Expand description

Holds data on the current incremental compilation session, if there is one.

Variants§

§

NotInitialized

This is the state the session will be in until the incr. comp. dir is needed.

§

Active

Fields

§session_directory: PathBuf
§_lock_file: Lock

This is the state during which the session directory is private and can be modified. _lock_file is never directly used, but its presence alone has an effect, because the file will unlock when the session is dropped.

§

Finalized

Fields

§session_directory: PathBuf

This is the state after the session directory has been finalized. In this state, the contents of the directory must not be modified any more.

§

InvalidBecauseOfErrors

Fields

§session_directory: PathBuf

This is an error state that is reached when some compilation error has occurred. It indicates that the contents of the session directory must not be used, since they might be invalid.

Trait Implementations§

source§

impl Debug for IncrCompSession

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

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

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

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.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 32 bytes

Size for each variant:

  • NotInitialized: 0 bytes
  • Active: 32 bytes
  • Finalized: 32 bytes
  • InvalidBecauseOfErrors: 32 bytes