Struct rustc_middle::arena::Arena[−][src]

pub struct Arena<'tcx> {
Show fields pub dropless: DroplessArena, drop: DropArena, layouts: TypedArena<Layout>, adt_def: TypedArena<AdtDef>, steal_mir: TypedArena<Steal<Body<'tcx>>>, mir: TypedArena<Body<'tcx>>, steal_promoted: TypedArena<Steal<IndexVec<Promoted, Body<'tcx>>>>, promoted: TypedArena<IndexVec<Promoted, Body<'tcx>>>, typeck_results: TypedArena<TypeckResults<'tcx>>, borrowck_result: TypedArena<BorrowCheckResult<'tcx>>, unsafety_check_result: TypedArena<UnsafetyCheckResult>, code_region: TypedArena<CodeRegion>, const_allocs: TypedArena<Allocation>, mir_keys: PhantomData<DefIdSet>, region_scope_tree: TypedArena<ScopeTree>, dropck_outlives: TypedArena<Canonical<'tcx, QueryResponse<'tcx, DropckOutlivesResult<'tcx>>>>, normalize_projection_ty: TypedArena<Canonical<'tcx, QueryResponse<'tcx, NormalizationResult<'tcx>>>>, implied_outlives_bounds: TypedArena<Canonical<'tcx, QueryResponse<'tcx, Vec<OutlivesBound<'tcx>>>>>, type_op_subtype: TypedArena<Canonical<'tcx, QueryResponse<'tcx, ()>>>, type_op_normalize_poly_fn_sig: TypedArena<Canonical<'tcx, QueryResponse<'tcx, PolyFnSig<'tcx>>>>, type_op_normalize_fn_sig: TypedArena<Canonical<'tcx, QueryResponse<'tcx, FnSig<'tcx>>>>, type_op_normalize_predicate: TypedArena<Canonical<'tcx, QueryResponse<'tcx, Predicate<'tcx>>>>, type_op_normalize_ty: TypedArena<Canonical<'tcx, QueryResponse<'tcx, Ty<'tcx>>>>, all_traits: PhantomData<Vec<DefId>>, privacy_access_levels: PhantomData<AccessLevels>, foreign_module: PhantomData<ForeignModule>, foreign_modules: PhantomData<Vec<ForeignModule>>, upvars_mentioned: TypedArena<FxIndexMap<HirId, Upvar>>, object_safety_violations: TypedArena<ObjectSafetyViolation>, codegen_unit: TypedArena<CodegenUnit<'tcx>>, attribute: TypedArena<Attribute>, name_set: TypedArena<FxHashSet<Symbol>>, hir_id_set: TypedArena<HirIdSet>, tys: TypedArena<TyS<'tcx>>, predicates: TypedArena<PredicateInner<'tcx>>, indexed_hir: PhantomData<IndexedHir<'tcx>>, hir_definitions: PhantomData<Definitions>, hir_owner: TypedArena<Owner<'tcx>>, hir_owner_nodes: TypedArena<OwnerNodes<'tcx>>, asm_template: TypedArena<InlineAsmTemplatePiece>, span: TypedArena<Span>, used_trait_imports: TypedArena<FxHashSet<LocalDefId>>,
}

Fields

dropless: DroplessArenadrop: DropArenalayouts: TypedArena<Layout>adt_def: TypedArena<AdtDef>steal_mir: TypedArena<Steal<Body<'tcx>>>mir: TypedArena<Body<'tcx>>steal_promoted: TypedArena<Steal<IndexVec<Promoted, Body<'tcx>>>>promoted: TypedArena<IndexVec<Promoted, Body<'tcx>>>typeck_results: TypedArena<TypeckResults<'tcx>>borrowck_result: TypedArena<BorrowCheckResult<'tcx>>unsafety_check_result: TypedArena<UnsafetyCheckResult>code_region: TypedArena<CodeRegion>const_allocs: TypedArena<Allocation>mir_keys: PhantomData<DefIdSet>region_scope_tree: TypedArena<ScopeTree>dropck_outlives: TypedArena<Canonical<'tcx, QueryResponse<'tcx, DropckOutlivesResult<'tcx>>>>normalize_projection_ty: TypedArena<Canonical<'tcx, QueryResponse<'tcx, NormalizationResult<'tcx>>>>implied_outlives_bounds: TypedArena<Canonical<'tcx, QueryResponse<'tcx, Vec<OutlivesBound<'tcx>>>>>type_op_subtype: TypedArena<Canonical<'tcx, QueryResponse<'tcx, ()>>>type_op_normalize_poly_fn_sig: TypedArena<Canonical<'tcx, QueryResponse<'tcx, PolyFnSig<'tcx>>>>type_op_normalize_fn_sig: TypedArena<Canonical<'tcx, QueryResponse<'tcx, FnSig<'tcx>>>>type_op_normalize_predicate: TypedArena<Canonical<'tcx, QueryResponse<'tcx, Predicate<'tcx>>>>type_op_normalize_ty: TypedArena<Canonical<'tcx, QueryResponse<'tcx, Ty<'tcx>>>>all_traits: PhantomData<Vec<DefId>>privacy_access_levels: PhantomData<AccessLevels>foreign_module: PhantomData<ForeignModule>foreign_modules: PhantomData<Vec<ForeignModule>>upvars_mentioned: TypedArena<FxIndexMap<HirId, Upvar>>object_safety_violations: TypedArena<ObjectSafetyViolation>codegen_unit: TypedArena<CodegenUnit<'tcx>>attribute: TypedArena<Attribute>name_set: TypedArena<FxHashSet<Symbol>>hir_id_set: TypedArena<HirIdSet>tys: TypedArena<TyS<'tcx>>predicates: TypedArena<PredicateInner<'tcx>>indexed_hir: PhantomData<IndexedHir<'tcx>>hir_definitions: PhantomData<Definitions>hir_owner: TypedArena<Owner<'tcx>>hir_owner_nodes: TypedArena<OwnerNodes<'tcx>>asm_template: TypedArena<InlineAsmTemplatePiece>span: TypedArena<Span>used_trait_imports: TypedArena<FxHashSet<LocalDefId>>

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]ⓘ

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
[src]

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

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
[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> MaybeResult<T> for T[src]

type Error = !

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.

impl<T> WithConstness for T[src]