Module supercow::ext [] [src]

Miscellaneous things used to integrate other code with Supercow, but which are not of interest to most client developers.

Structs

BoxedStorage

Causes the OWNED or SHARED value of a Supercow to be stored in a Box.

InlineStorage

Causes the OWNED or SHARED value of a Supercow to be stored inline.

TwoStepArc

Wrapper providing a TwoStepShared implementation.

TwoStepRc

Wrapper providing a TwoStepShared implementation.

Constants

MAX_INTERNAL_BORROW_DISPLACEMENT

The maximum displacement (relative to the start of the object) that a reference pointing into self from an instance of SafeBorrow may have.

Traits

ConstDeref

Marker trait indicating a Deref-like which always returns the same reference.

OwnedStorage

Describes how an OWNED or SHARED value is stored in a Supercow.

PointerFirstRef

Marker trait identifying a pointer type which begins with an absolute address and contains no other address-dependent information.

PtrRead

Read trait corresponding to PtrWrite.

PtrWrite

Optionally stores a pointer to a value.

SafeBorrow

Extension of Borrow used to allow Supercow::to_mut() to work safely.

SharedFrom

Like std::convert::From, but without the blanket implementations that cause problems for supercow_features!.

TwoStepShared

Trait for ConstDeref implementations which can be constructed in a two-step process.