pub struct RunnableSequence { /* private fields */ }Expand description
A sequence of runnables executed one after another.
The output of each step becomes the input to the next.
§Example
let seq = RunnableSequence::new(vec![
Box::new(RunnablePassthrough),
Box::new(RunnablePassthrough),
]);Implementations§
Trait Implementations§
Source§impl RunnableCore for RunnableSequence
impl RunnableCore for RunnableSequence
Source§fn invoke<'a>(
&'a self,
input: Value,
config: Option<&'a RunnableConfig>,
) -> BoxFuture<'a, Result<Value, SynwireError>>
fn invoke<'a>( &'a self, input: Value, config: Option<&'a RunnableConfig>, ) -> BoxFuture<'a, Result<Value, SynwireError>>
Invoke the runnable with a single input.
Source§fn batch<'a>(
&'a self,
inputs: Vec<Value>,
config: Option<&'a RunnableConfig>,
) -> BoxFuture<'a, Result<Vec<Value>, SynwireError>>
fn batch<'a>( &'a self, inputs: Vec<Value>, config: Option<&'a RunnableConfig>, ) -> BoxFuture<'a, Result<Vec<Value>, SynwireError>>
Invoke on multiple inputs. Default implementation calls
invoke sequentially for each input.Source§fn stream<'a>(
&'a self,
input: Value,
config: Option<&'a RunnableConfig>,
) -> BoxFuture<'a, Result<BoxStream<'a, Result<Value, SynwireError>>, SynwireError>>
fn stream<'a>( &'a self, input: Value, config: Option<&'a RunnableConfig>, ) -> BoxFuture<'a, Result<BoxStream<'a, Result<Value, SynwireError>>, SynwireError>>
Stream results. Default implementation wraps
invoke
as a single-item stream.Auto Trait Implementations§
impl Freeze for RunnableSequence
impl !RefUnwindSafe for RunnableSequence
impl Send for RunnableSequence
impl Sync for RunnableSequence
impl Unpin for RunnableSequence
impl UnsafeUnpin for RunnableSequence
impl !UnwindSafe for RunnableSequence
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