# Struct cargo::core::compiler::OutputOptions

source ·

    struct OutputOptions {
        format: MessageFormat,
        color: bool,
        cache_cell: Option<(PathBuf, LazyCell<File>)>,
        show_diagnostics: bool,
        warnings_seen: usize,
        errors_seen: usize,
    }

Expand description

Configuration of the display of messages emitted by the compiler, e.g. diagnostics, warnings, errors, and message caching.

## Fields§

§`format: MessageFormat`

What format we’re emitting from Cargo itself.

§`color: bool`

Whether or not to display messages in color.

§`cache_cell: Option<(PathBuf, LazyCell<File>)>`

Where to write the JSON messages to support playback later if the unit is fresh. The file is created lazily so that in the normal case, lots of empty files are not created. If this is None, the output will not be cached (such as when replaying cached messages).

§`show_diagnostics: bool`

If `true`, display any diagnostics. Other types of JSON messages are processed regardless of the value of this flag.

This is used primarily for cache replay. If you build with `-vv`, the cache will be filled with diagnostics from dependencies. When the cache is replayed without `-vv`, we don’t want to show them.

§`warnings_seen: usize`

Tracks the number of warnings we’ve seen so far.

§`errors_seen: usize`

Tracks the number of errors we’ve seen so far.

## Implementations§

source§

### impl OutputOptions

source

#### fn new(cx: &Context<'_, '_>, unit: &Unit) -> OutputOptions

## Auto Trait Implementations§

§

### impl !RefUnwindSafe for OutputOptions

§

### impl Send for OutputOptions

§

### impl !Sync for OutputOptions

§

### impl Unpin for OutputOptions

§

### impl UnwindSafe for OutputOptions

## Blanket Implementations§

source§

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

source§

#### fn type_id(&self) -> TypeId

Gets the `TypeId` of `self`. Read more
source§

### impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

#### fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

### impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

### impl<T> From<T> for T

const: unstable · source§

#### fn from(t: T) -> T

Returns the argument unchanged.

source§

### impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · 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> Same<T> for T

§

#### type Output = T

Should always be `Self`
source§

### impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

#### type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

### impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
§

### impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

#### fn vzip(self) -> V

## 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: 56 bytes