[][src]Struct rustc_ast_lowering::Arena

pub struct Arena<'tcx> {
    pub dropless: DroplessArena,
    drop: DropArena,
    hir_krate: PhantomData<Crate<'tcx>>,
    arm: TypedArena<Arm<'tcx>>,
    asm_operand: TypedArena<InlineAsmOperand<'tcx>>,
    asm_template: TypedArena<InlineAsmTemplatePiece>,
    attribute: TypedArena<Attribute>,
    block: TypedArena<Block<'tcx>>,
    bare_fn_ty: TypedArena<BareFnTy<'tcx>>,
    global_asm: PhantomData<GlobalAsm>,
    generic_arg: TypedArena<GenericArg<'tcx>>,
    generic_args: TypedArena<GenericArgs<'tcx>>,
    generic_bound: TypedArena<GenericBound<'tcx>>,
    generic_param: TypedArena<GenericParam<'tcx>>,
    expr: TypedArena<Expr<'tcx>>,
    field: TypedArena<Field<'tcx>>,
    field_pat: TypedArena<FieldPat<'tcx>>,
    fn_decl: TypedArena<FnDecl<'tcx>>,
    foreign_item: TypedArena<ForeignItem<'tcx>>,
    impl_item_ref: TypedArena<ImplItemRef<'tcx>>,
    inline_asm: PhantomData<InlineAsm<'tcx>>,
    llvm_inline_asm: PhantomData<LlvmInlineAsm<'tcx>>,
    local: TypedArena<Local<'tcx>>,
    macro_def: PhantomData<MacroDef<'tcx>>,
    param: TypedArena<Param<'tcx>>,
    pat: TypedArena<Pat<'tcx>>,
    path: TypedArena<Path<'tcx>>,
    path_segment: TypedArena<PathSegment<'tcx>>,
    poly_trait_ref: TypedArena<PolyTraitRef<'tcx>>,
    qpath: TypedArena<QPath<'tcx>>,
    stmt: TypedArena<Stmt<'tcx>>,
    struct_field: TypedArena<StructField<'tcx>>,
    trait_item_ref: TypedArena<TraitItemRef>,
    ty: TypedArena<Ty<'tcx>>,
    type_binding: TypedArena<TypeBinding<'tcx>>,
    variant: TypedArena<Variant<'tcx>>,
    where_predicate: TypedArena<WherePredicate<'tcx>>,
}

Fields

dropless: DroplessArenadrop: DropArenahir_krate: PhantomData<Crate<'tcx>>arm: TypedArena<Arm<'tcx>>asm_operand: TypedArena<InlineAsmOperand<'tcx>>asm_template: TypedArena<InlineAsmTemplatePiece>attribute: TypedArena<Attribute>block: TypedArena<Block<'tcx>>bare_fn_ty: TypedArena<BareFnTy<'tcx>>global_asm: PhantomData<GlobalAsm>generic_arg: TypedArena<GenericArg<'tcx>>generic_args: TypedArena<GenericArgs<'tcx>>generic_bound: TypedArena<GenericBound<'tcx>>generic_param: TypedArena<GenericParam<'tcx>>expr: TypedArena<Expr<'tcx>>field: TypedArena<Field<'tcx>>field_pat: TypedArena<FieldPat<'tcx>>fn_decl: TypedArena<FnDecl<'tcx>>foreign_item: TypedArena<ForeignItem<'tcx>>impl_item_ref: TypedArena<ImplItemRef<'tcx>>inline_asm: PhantomData<InlineAsm<'tcx>>llvm_inline_asm: PhantomData<LlvmInlineAsm<'tcx>>local: TypedArena<Local<'tcx>>macro_def: PhantomData<MacroDef<'tcx>>param: TypedArena<Param<'tcx>>pat: TypedArena<Pat<'tcx>>path: TypedArena<Path<'tcx>>path_segment: TypedArena<PathSegment<'tcx>>poly_trait_ref: TypedArena<PolyTraitRef<'tcx>>qpath: TypedArena<QPath<'tcx>>stmt: TypedArena<Stmt<'tcx>>struct_field: TypedArena<StructField<'tcx>>trait_item_ref: TypedArena<TraitItemRef>ty: TypedArena<Ty<'tcx>>type_binding: TypedArena<TypeBinding<'tcx>>variant: TypedArena<Variant<'tcx>>where_predicate: TypedArena<WherePredicate<'tcx>>

Implementations

impl<'tcx> Arena<'tcx>[src]

pub fn alloc<T: ArenaAllocatable<'tcx, U>, U>(&self, value: T) -> &mut T[src]

pub fn alloc_slice<T: Copy>(&self, value: &[T]) -> &mut [T][src]

pub fn alloc_from_iter<'a, T: ArenaAllocatable<'tcx, U>, U>(
    &'a self,
    iter: impl IntoIterator<Item = T>
) -> &'a mut [T]
[src]

Trait Implementations

impl<'tcx> Default for Arena<'tcx>[src]

Auto Trait Implementations

impl<'tcx> !RefUnwindSafe for Arena<'tcx>

impl<'tcx> !Send for Arena<'tcx>

impl<'tcx> !Sync for Arena<'tcx>

impl<'tcx> Unpin for Arena<'tcx>

impl<'tcx> !UnwindSafe for Arena<'tcx>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.