pub enum CompiledStep {
Process {
processor: BoxProcessor,
body_contract: Option<BodyType>,
},
Stop,
}Expand description
A compiled pipeline step.
Process is the normal case: a boxed processor plus its optional body
contract. Stop (added in Task 3b) is the Stop EIP marker — run_steps
recognises it and produces PipelineOutcome::Stopped without invoking a
Tower service.
Boundary: CompiledStep is the compile-time representation. At runtime,
run_steps consumes a Vec<CompiledStep> (Stop variants included) and
produces a PipelineOutcome; the wrapping Service<Exchange> impl
translates PipelineOutcome back to Result<Exchange, CamelError>. See
ADR-0024.
Variants§
Process
Stop
Stop EIP marker. run_steps produces PipelineOutcome::Stopped(ex)
without invoking a Tower service. Replaces StopService (Task 7).
Trait Implementations§
Source§impl Clone for CompiledStep
impl Clone for CompiledStep
Source§fn clone(&self) -> CompiledStep
fn clone(&self) -> CompiledStep
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for CompiledStep
impl !Sync for CompiledStep
impl !UnwindSafe for CompiledStep
impl Freeze for CompiledStep
impl Send for CompiledStep
impl Unpin for CompiledStep
impl UnsafeUnpin for CompiledStep
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