Struct ra_ap_hir_ty::Interner[][src]

pub struct Interner;

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

The type of value that will be produced once folding is done. Typically this is Self, unless Self contains borrowed values, in which case owned values are produced (for example, one can fold over a &T value where T: Fold, in which case you get back a T, not a &T). Read more

Apply the given folder folder to self; binders is the number of binders that are in scope when beginning the folder. Typically binders starts as 0, but is adjusted when we encounter Binders<T> in the IR or other similar constructs. Read more

The interner associated with the type.

Feeds this value into the given Hasher. Read more

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

“Interned” representation of types. In normal user code, Self::InternedType is not referenced. Instead, we refer to Ty<Self>, which wraps this type. Read more

“Interned” representation of lifetimes. In normal user code, Self::InternedLifetime is not referenced. Instead, we refer to Lifetime<Self>, which wraps this type. Read more

“Interned” representation of const expressions. In normal user code, Self::InternedConst is not referenced. Instead, we refer to Const<Self>, which wraps this type. Read more

“Interned” representation of an evaluated const value. Self::InternedConcreteConst is not referenced. Instead, we refer to ConcreteConst<Self>, which wraps this type. Read more

“Interned” representation of a “generic parameter”, which can be either a type or a lifetime. In normal user code, Self::InternedGenericArg is not referenced. Instead, we refer to GenericArg<Self>, which wraps this type. Read more

“Interned” representation of a “goal”. In normal user code, Self::InternedGoal is not referenced. Instead, we refer to Goal<Self>, which wraps this type. Read more

“Interned” representation of a list of goals. In normal user code, Self::InternedGoals is not referenced. Instead, we refer to Goals<Self>, which wraps this type. Read more

“Interned” representation of a “substitution”. In normal user code, Self::InternedSubstitution is not referenced. Instead, we refer to Substitution<Self>, which wraps this type. Read more

“Interned” representation of a “program clause”. In normal user code, Self::InternedProgramClause is not referenced. Instead, we refer to ProgramClause<Self>, which wraps this type. Read more

“Interned” representation of a list of program clauses. In normal user code, Self::InternedProgramClauses is not referenced. Instead, we refer to ProgramClauses<Self>, which wraps this type. Read more

“Interned” representation of a list of quantified where clauses. In normal user code, Self::InternedQuantifiedWhereClauses is not referenced. Instead, we refer to QuantifiedWhereClauses<Self>, which wraps this type. Read more

“Interned” representation of a list of variable kinds. In normal user code, Self::InternedVariableKinds is not referenced. Instead, we refer to VariableKinds<Self>, which wraps this type. Read more

“Interned” representation of a list of variable kinds with universe index. In normal user code, Self::InternedCanonicalVarKinds is not referenced. Instead, we refer to CanonicalVarKinds<Self>, which wraps this type. Read more

“Interned” representation of a list of region constraints. In normal user code, Self::InternedConstraints is not referenced. Instead, we refer to Constraints<Self>, which wraps this type. Read more

“Interned” representation of a list of chalk_ir::Variance. In normal user code, Self::InternedVariances is not referenced. Instead, we refer to Variances<Self>, which wraps this type. Read more

The core “id” type used for trait-ids and the like.

The ID type for ADTs

Representation of identifiers.

Representation of function ABI (e.g. calling convention).

Prints the debug representation of a type-kind-id. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a type-kind-id. Returns None to fallback to the default debug output (e.g., if no info about current program is available from TLS). Read more

Prints the debug representation of a type-kind-id. Returns None to fallback to the default debug output. Read more

Prints the debug representation of an alias. To get good results, this requires inspecting TLS, and is difficult to code without reference to a specific interner (and hence fully known types). Read more

Prints the debug representation of a ProjectionTy. Returns None to fallback to the default debug output. Read more

Prints the debug representation of an OpaqueTy. Returns None to fallback to the default debug output. Read more

Prints the debug representation of an opaque type. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a type. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a lifetime. Returns None to fallback to the default debug output. Read more

Prints the debug representation of an parameter. Returns None to fallback to the default debug output. Read more

Prints the debug representation of an goal. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a list of goals. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a ProgramClauseImplication. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a Substitution. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a SeparatorTraitRef. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a function-def-id. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a const. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a parameter kinds list. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a parameter kinds list, with angle brackets. Returns None to fallback to the default debug output. Read more

Prints the debug representation of an parameter kinds list with universe index. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a ProgramClause. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a ProgramClauses. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a QuantifiedWhereClauses. Returns None to fallback to the default debug output. Read more

Create an “interned” type from ty. This is not normally invoked directly; instead, you invoke TyKind::intern (which will ultimately call this method). Read more

Lookup the TyKind from an interned type.

Create an “interned” lifetime from lifetime. This is not normally invoked directly; instead, you invoke LifetimeData::intern (which will ultimately call this method). Read more

Lookup the LifetimeData that was interned to create a InternedLifetime.

Create an “interned” const from const. This is not normally invoked directly; instead, you invoke ConstData::intern (which will ultimately call this method). Read more

Lookup the ConstData that was interned to create a InternedConst.

Determine whether two concrete const values are equal.

Create an “interned” parameter from data. This is not normally invoked directly; instead, you invoke GenericArgData::intern (which will ultimately call this method). Read more

Lookup the LifetimeData that was interned to create a InternedLifetime.

Create an “interned” goal from data. This is not normally invoked directly; instead, you invoke GoalData::intern (which will ultimately call this method). Read more

Create an “interned” goals from data. This is not normally invoked directly; instead, you invoke GoalsData::intern (which will ultimately call this method). Read more

Lookup the GoalData that was interned to create a InternedGoal.

Lookup the GoalsData that was interned to create a InternedGoals.

Create an “interned” substitution from data. This is not normally invoked directly; instead, you invoke SubstitutionData::intern (which will ultimately call this method). Read more

Lookup the SubstitutionData that was interned to create a InternedSubstitution.

Create an “interned” program clause from data. This is not normally invoked directly; instead, you invoke ProgramClauseData::intern (which will ultimately call this method). Read more

Lookup the ProgramClauseData that was interned to create a ProgramClause.

Create an “interned” program clauses from data. This is not normally invoked directly; instead, you invoke ProgramClauses::from_iter (which will ultimately call this method). Read more

Lookup the ProgramClauseData that was interned to create a ProgramClause.

Create an “interned” quantified where clauses from data. This is not normally invoked directly; instead, you invoke QuantifiedWhereClauses::from_iter (which will ultimately call this method). Read more

Lookup the slice of QuantifiedWhereClause that was interned to create a QuantifiedWhereClauses. Read more

Create an “interned” parameter kinds from data. This is not normally invoked directly; instead, you invoke VariableKinds::from_iter (which will ultimately call this method). Read more

Lookup the slice of VariableKinds that was interned to create a VariableKinds. Read more

Create “interned” variable kinds with universe index from data. This is not normally invoked directly; instead, you invoke CanonicalVarKinds::from_iter (which will ultimately call this method). Read more

Lookup the slice of CanonicalVariableKind that was interned to create a CanonicalVariableKinds. Read more

Create “interned” constraints from data. This is not normally invoked dirctly; instead, you invoke Constraints::from_iter (which will ultimately call this method). Read more

Lookup the slice of Constraint that was interned to create a Constraints. Read more

Prints the debug representation of a closure id. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a Constraints. Returns None to fallback to the default debug output. Read more

Create “interned” variances from data. This is not normally invoked directly; instead, you invoke Variances::from (which will ultimately call this method). Read more

Lookup the slice of Variance that was interned to create a Variances. Read more

Prints the debug representation of a foreign-def-id. Returns None to fallback to the default debug output. Read more

Prints the debug representation of an alias. Returns None to fallback to the default debug output. Read more

Prints the debug representation of a Variances. Returns None to fallback to the default debug output. Read more

This method returns an Ordering between self and other. Read more

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

Restrict a value to a certain interval. Read more

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

This method tests for !=.

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

Gets the variances for the substitution of a fn def

Gets the variances for the substitution of a adt

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.

Compare self to key and return true if they are equal.

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

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.