pub struct Pipeline {
pub steps: Vec<Composable>,
pub name: Option<String>,
pub description: Option<String>,
}Expand description
Sequential pipeline: execute steps in order, passing state between them.
Fields§
§steps: Vec<Composable>Ordered steps to execute sequentially.
name: Option<String>Name given to the compiled agent (default "pipeline").
description: Option<String>Human-readable description, shown in Debug output.
Implementations§
Source§impl Pipeline
impl Pipeline
Sourcepub fn new(steps: Vec<Composable>) -> Self
pub fn new(steps: Vec<Composable>) -> Self
Create a pipeline from the given steps.
Sourcepub fn builder(name: &str) -> Self
pub fn builder(name: &str) -> Self
Create an empty named pipeline (fluent builder entry point). The name
becomes the compiled SequentialTextAgent’s name.
let etl = Pipeline::builder("etl")
.step(AgentBuilder::new("extract"))
.step(AgentBuilder::new("transform"))
.step(AgentBuilder::new("load"));
assert_eq!(etl.name.as_deref(), Some("etl"));Sourcepub fn step(self, agent: impl Into<Composable>) -> Self
pub fn step(self, agent: impl Into<Composable>) -> Self
Add a sequential step to this pipeline (fluent builder).
Sourcepub fn sub_agent(self, agent: AgentBuilder) -> Self
pub fn sub_agent(self, agent: AgentBuilder) -> Self
Add a sub-agent step (alias for step — matches upstream naming).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Pipeline
impl !RefUnwindSafe for Pipeline
impl Send for Pipeline
impl Sync for Pipeline
impl Unpin for Pipeline
impl !UnwindSafe for Pipeline
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].