[][src]Crate chalk_rust_ir

Contains the definition for the "Rust IR" -- this is basically a "lowered" version of the AST, roughly corresponding to [the HIR] in the Rust compiler.

Structs

AliasEqBound

Represents an alias equality bound on e.g. a type or type parameter. Does not know anything about what it's binding.

AssociatedTyDatum

Represents an associated type declaration found inside of a trait:

AssociatedTyDatumBound

Encodes the parts of AssociatedTyDatum where the parameters P0..Pm are in scope (bounds and where_clauses).

AssociatedTyValue

Represents the value of an associated type that is assigned from within some impl.

AssociatedTyValueBound
AssociatedTyValueId

Identifier for an "associated type value" found in some impl.

DefaultImplDatum
DefaultImplDatumBound
ImplDatum
ImplDatumBound
OpaqueTyDatum

Represents the bounds for an impl Trait type.

OpaqueTyDatumBound
StructDatum
StructDatumBound
StructFlags
TraitBound

Represents a trait bound on e.g. a type or type parameter. Does not know anything about what it's binding.

TraitDatum

A rust intermediate representation (rust_ir) of a Trait Definition. For example, given the following rust code:

TraitDatumBound
TraitFlags

Enums

ImplType
InlineBound

An inline bound, e.g. : Foo<K> in impl<K, T: Foo<K>> SomeType<T>.

Polarity
WellKnownTrait

A list of the traits that are "well known" to chalk, which means that the chalk-solve crate has special, hard-coded impls for them.

Traits

Anonymize
IntoWhereClauses
ToParameter

Type Definitions

QuantifiedInlineBound