Enum rustc_codegen_ssa::mir::LocalRef [−][src]
enum LocalRef<'tcx, V> {
Place(PlaceRef<'tcx, V>),
UnsizedPlace(PlaceRef<'tcx, V>),
Operand(Option<OperandRef<'tcx, V>>),
}Variants
Place(PlaceRef<'tcx, V>)UnsizedPlace(PlaceRef<'tcx, V>)Expand description
UnsizedPlace(p): p itself is a thin pointer (indirect place).
*p is the fat pointer that references the actual unsized place.
Every time it is initialized, we have to reallocate the place
and update the fat pointer. That’s the reason why it is indirect.
Operand(Option<OperandRef<'tcx, V>>)Implementations
impl<'a, 'tcx, V: CodegenObject> LocalRef<'tcx, V>[src]
impl<'a, 'tcx, V: CodegenObject> LocalRef<'tcx, V>[src]fn new_operand<Bx: BuilderMethods<'a, 'tcx, Value = V>>(
bx: &mut Bx,
layout: TyAndLayout<'tcx>
) -> LocalRef<'tcx, V>[src]
bx: &mut Bx,
layout: TyAndLayout<'tcx>
) -> LocalRef<'tcx, V>
Auto Trait Implementations
impl<'tcx, V> !RefUnwindSafe for LocalRef<'tcx, V>
impl<'tcx, V> !Send for LocalRef<'tcx, V>
impl<'tcx, V> !Sync for LocalRef<'tcx, V>
impl<'tcx, V> Unpin for LocalRef<'tcx, V> where
V: Unpin,
V: Unpin,