Struct chalk_ir::UCanonical[][src]

pub struct UCanonical<T: HasInterner> {
    pub canonical: Canonical<T>,
    pub universes: usize,
}
Expand description

A “universe canonical” value. This is a wrapper around a Canonical, indicating that the universes within have been “renumbered” to start from 0 and collapse unimportant distinctions.

To produce one of these values, use the u_canonicalize method.

Fields

canonical: Canonical<T>

The wrapped Canonical.

universes: usize

The number of universes that have been collapsed.

Implementations

Checks whether the universe canonical value is a trivial substitution (e.g. an identity substitution).

Creates an identity substitution.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Cast a value to type U using CastTo.

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.