Trait std::ops::InPlace [] [src]

pub trait InPlace<Data>: Place<Data> where Data: ?Sized {
    type Owner;
    unsafe fn finalize(self) -> Self::Owner;
Unstable (placement_new_protocol #27779)

Specialization of Place trait supporting in (PLACE) EXPR.

Associated Types

type Owner

Unstable (placement_new_protocol #27779)

Owner is the type of the end value of in (PLACE) EXPR

Note that when in (PLACE) EXPR is solely used for side-effecting an existing data-structure, e.g. Vec::emplace_back, then Owner need not carry any information at all (e.g. it can be the unit type () in that case).

Required Methods

unsafe fn finalize(self) -> Self::Owner

Unstable (placement_new_protocol #27779)

Converts self into the final value, shifting deallocation/cleanup responsibilities (if any remain), over to the returned instance of Owner and forgetting self.