pub trait ArenaAllocatable<'tcx, C = IsNotCopy>: Sized {
    // Required methods
    fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self;
    fn allocate_from_iter<'a>(
        arena: &'a Arena<'tcx>,
        iter: impl IntoIterator<Item = Self>
    ) -> &'a mut [Self];
}

Required Methods§

source

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

Implementations on Foreign Types§

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Vec<DefId>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for DocLinkResMap

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for InlineAsmTemplatePiece

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Steal<(ResolverAstLowering, Lrc<Crate>)>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Features

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for FnAbi<'tcx, Ty<'tcx>>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Steal<IndexVec<Promoted, Body<'tcx>>>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for FxIndexMap<HirId, Upvar>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Steal<Body<'tcx>>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Attribute

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for BitSet<u32>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for FxIndexSet<Symbol>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for (Span, Place<'tcx>)

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Steal<(Crate, AttrVec)>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for DefIdSet

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for IndexVec<FieldIdx, Symbol>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for HirIdSet

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Arc<OutputFilenames>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for StrippedCfgItem

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for FxHashMap<DefId, EarlyBinder<Ty<'tcx>>>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Vec<ForeignModule>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for IndexVec<Promoted, Body<'tcx>>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Steal<Thir<'tcx>>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for LayoutS

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for UnordSet<LocalDefId>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ForeignModule

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for FxIndexSet<ItemLocalId>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for UnordSet<Symbol>

source§

fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self

source§

fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = Self> ) -> &'a mut [Self]

Implementors§

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ImplSource<'tcx, ()>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ObjectSafetyViolation

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, ()>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, DropckOutlivesResult<'tcx>>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, NormalizationResult<'tcx>>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, Clause<'tcx>>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, Ty<'tcx>>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, FnSig<'tcx>>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, Vec<OutlivesBound<'tcx>>>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Canonical<'tcx, QueryResponse<'tcx, PolyFnSig<'tcx>>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for QueryRegionConstraints<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ModChild

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for EffectiveVisibilities

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ScopeTree

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for CodeRegion

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Allocation

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for CodegenUnit<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for BorrowCheckResult<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for UnsafetyCheckResult

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for Body<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for CandidateStep<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for DropckConstraint<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for MethodAutoderefBadTy<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ExternalConstraintsData<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for PredefinedOpaquesData<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for AdtDefData

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ConstData<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ResolverGlobalCtxt

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for WithCachedTypeInfo<PredicateKind<'tcx>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for WithCachedTypeInfo<TyKind<'tcx>>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for TypeckResults<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for DepKindStruct<'tcx>

source§

impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for RegisteredTools

source§

impl<'tcx, T: Copy> ArenaAllocatable<'tcx, IsCopy> for T