pub struct TransformNodeAdapter<TN, Input, Output, Error, Action>where
TN: TransformNode<Input, Output, Error>,
Input: Clone + Send + Sync + 'static,
Output: Clone + Send + Sync + 'static,
Error: Error + Send + Sync + 'static,
Action: ActionType + Default + Send + Sync + 'static,{ /* private fields */ }
Expand description
Adapter to convert a TransformNode to a LifecycleNode
Implementations§
Source§impl<TN, Input, Output, Error, Action> TransformNodeAdapter<TN, Input, Output, Error, Action>
impl<TN, Input, Output, Error, Action> TransformNodeAdapter<TN, Input, Output, Error, Action>
Trait Implementations§
Source§impl<TN, Input, Output, Error, Action> Debug for TransformNodeAdapter<TN, Input, Output, Error, Action>
impl<TN, Input, Output, Error, Action> Debug for TransformNodeAdapter<TN, Input, Output, Error, Action>
Source§impl<TN, Input, Output, Error, Action> LifecycleNode<TransformContext<Input>, Action> for TransformNodeAdapter<TN, Input, Output, Error, Action>
impl<TN, Input, Output, Error, Action> LifecycleNode<TransformContext<Input>, Action> for TransformNodeAdapter<TN, Input, Output, Error, Action>
Source§type PrepOutput = Input
type PrepOutput = Input
Output type from the preparation phase
Source§type ExecOutput = Output
type ExecOutput = Output
Output type from the execution phase
Source§fn prep<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 mut TransformContext<Input>,
) -> Pin<Box<dyn Future<Output = Result<Self::PrepOutput, FloxideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn prep<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 mut TransformContext<Input>,
) -> Pin<Box<dyn Future<Output = Result<Self::PrepOutput, FloxideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Preparation phase - perform setup and validation
Source§fn exec<'life0, 'async_trait>(
&'life0 self,
prep_result: Self::PrepOutput,
) -> Pin<Box<dyn Future<Output = Result<Self::ExecOutput, FloxideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn exec<'life0, 'async_trait>(
&'life0 self,
prep_result: Self::PrepOutput,
) -> Pin<Box<dyn Future<Output = Result<Self::ExecOutput, FloxideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Execution phase - perform the main work
Source§fn post<'life0, 'life1, 'async_trait>(
&'life0 self,
_prep_result: Self::PrepOutput,
exec_result: Self::ExecOutput,
_ctx: &'life1 mut TransformContext<Input>,
) -> Pin<Box<dyn Future<Output = Result<Action, FloxideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn post<'life0, 'life1, 'async_trait>(
&'life0 self,
_prep_result: Self::PrepOutput,
exec_result: Self::ExecOutput,
_ctx: &'life1 mut TransformContext<Input>,
) -> Pin<Box<dyn Future<Output = Result<Action, FloxideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Post-execution phase - determine the next action and update context
Auto Trait Implementations§
impl<TN, Input, Output, Error, Action> Freeze for TransformNodeAdapter<TN, Input, Output, Error, Action>where
TN: Freeze,
impl<TN, Input, Output, Error, Action> RefUnwindSafe for TransformNodeAdapter<TN, Input, Output, Error, Action>where
TN: RefUnwindSafe,
Input: RefUnwindSafe,
Output: RefUnwindSafe,
Error: RefUnwindSafe,
Action: RefUnwindSafe,
impl<TN, Input, Output, Error, Action> Send for TransformNodeAdapter<TN, Input, Output, Error, Action>
impl<TN, Input, Output, Error, Action> Sync for TransformNodeAdapter<TN, Input, Output, Error, Action>
impl<TN, Input, Output, Error, Action> Unpin for TransformNodeAdapter<TN, Input, Output, Error, Action>
impl<TN, Input, Output, Error, Action> UnwindSafe for TransformNodeAdapter<TN, Input, Output, Error, Action>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more