Trait chalk_ir::interner::HasInterner [−][src]
Expand description
Implemented by types that have an associated interner (which
are virtually all of the types in chalk-ir, for example).
This lets us map from a type like Ty<I>
to the parameter I
.
It’s particularly useful for writing Fold
impls for generic types like
Binder<T>
, since it allows us to figure out the interner of T
.
Associated Types
Implementations on Foreign Types
type Interner = I
impl<A, B, I> HasInterner for (A, B) where
A: HasInterner<Interner = I>,
B: HasInterner<Interner = I>,
I: Interner,
[src]
impl<A, B, I> HasInterner for (A, B) where
A: HasInterner<Interner = I>,
B: HasInterner<Interner = I>,
I: Interner,
[src]type Interner = I
impl<A, B, C, I> HasInterner for (A, B, C) where
A: HasInterner<Interner = I>,
B: HasInterner<Interner = I>,
C: HasInterner<Interner = I>,
I: Interner,
[src]
impl<A, B, C, I> HasInterner for (A, B, C) where
A: HasInterner<Interner = I>,
B: HasInterner<Interner = I>,
C: HasInterner<Interner = I>,
I: Interner,
[src]type Interner = I
Implementors
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I
type Interner = I