Skip to main content

ConcreteApplierHost

Struct ConcreteApplierHost 

Source
pub struct ConcreteApplierHost<A: Applier + 'static> { /* private fields */ }

Implementations§

Source§

impl<A: Applier + 'static> ConcreteApplierHost<A>

Source

pub fn new(applier: A) -> Self

Source

pub fn borrow_typed(&self) -> ApplierGuard<'_, A>

Source

pub fn try_borrow_typed(&self) -> Result<ApplierGuard<'_, A>, BorrowMutError>

Source

pub fn try_into_inner(self) -> Result<A, (Self, NodeError)>

Returns the applier after all queued nodes have been disposed.

On failure, returns this host with its pending resources and the error, allowing the caller to repair the cause and retry extraction.

use cranpose_core::{ConcreteApplierHost, MemoryApplier};
let host = ConcreteApplierHost::new(MemoryApplier::new());
assert!(host.try_into_inner().is_ok());

Trait Implementations§

Source§

impl<A: Applier + 'static> ApplierHost for ConcreteApplierHost<A>

Source§

fn borrow_dyn(&self) -> ApplierGuard<'_, dyn Applier>

Source§

fn dispose_nodes(&self, disposal: NodeDisposal) -> Result<(), NodeError>

Disposes detached roots, deferring recursive cleanup to the current borrow’s guard. Read more
Source§

fn compact(&self)

Compacts internal storage after commands have been applied.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.