Struct rustc_hir::TypeBinding [−][src]
pub struct TypeBinding<'hir> {
pub hir_id: HirId,
pub ident: Ident,
pub gen_args: &'hir GenericArgs<'hir>,
pub kind: TypeBindingKind<'hir>,
pub span: Span,
}Expand description
Bind a type to an associated type (i.e., A = Foo).
Bindings like A: Debug are represented as a special type A = $::Debug that is understood by the astconv code.
FIXME(alexreg): why have a separate type for the binding case,
wouldn’t it be better to make the ty field an enum like the
following?
enum TypeBindingKind {
Equals(...),
Binding(...),
}Fields
hir_id: HirIdident: Identgen_args: &'hir GenericArgs<'hir>kind: TypeBindingKind<'hir>span: SpanImplementations
Trait Implementations
Auto Trait Implementations
impl<'hir> RefUnwindSafe for TypeBinding<'hir>
impl<'hir> !Send for TypeBinding<'hir>
impl<'hir> !Sync for TypeBinding<'hir>
impl<'hir> Unpin for TypeBinding<'hir>
impl<'hir> UnwindSafe for TypeBinding<'hir>
Blanket Implementations
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: 64 bytes