pub enum NodeKind {
Source(Box<dyn Source>),
Transform(Vec<CompiledStage>),
Tee {
capacity: usize,
fanout: Option<usize>,
},
Merge,
Join(JoinNode),
Sink(Box<dyn Sink>),
}Expand description
A typed topology node.
Variants§
Source(Box<dyn Source>)
A data source (0 in, 1 out).
Transform(Vec<CompiledStage>)
Transform stages applied per page (1 in, 1 out).
Tee
Fan-out: clone each page to every downstream edge (1 in, N out).
Fields
Merge
Fan-in: forward pages from all inputs in arrival order (N in, 1 out).
Join(JoinNode)
Hash-join two upstreams by key (2 in, 1 out).
Sink(Box<dyn Sink>)
A data sink (1 in, 0 out).
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for NodeKind
impl !UnwindSafe for NodeKind
impl Freeze for NodeKind
impl Send for NodeKind
impl Sync for NodeKind
impl Unpin for NodeKind
impl UnsafeUnpin for NodeKind
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request