Skip to main content

GraphBlueprint

Struct GraphBlueprint 

Source
pub struct GraphBlueprint<S: Shape> { /* private fields */ }

Implementations§

Source§

impl<S: Shape> GraphBlueprint<S>

Source

pub fn shape(&self) -> S

Source

pub fn stage_count(&self) -> usize

Source

pub fn edge_count(&self) -> usize

Source

pub fn segments(&self) -> &[FusedSegment]

Source

pub fn attributes(&self) -> &Attributes

Source

pub fn with_attributes(self, attributes: Attributes) -> Self

Source

pub fn add_attributes(self, attributes: Attributes) -> Self

Source

pub fn named(self, name: impl Into<String>) -> Self

Source§

impl<In, Out> GraphBlueprint<FlowShape<In, Out>>
where In: Clone + Send + 'static, Out: Send + 'static,

Source

pub fn run_with_input<I>(&self, input: I) -> StreamResult<Vec<Out>>
where I: IntoIterator<Item = In>,

Source

pub fn run_with_input_report<I>( &self, input: I, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<Out>>
where I: IntoIterator<Item = In>,

Source

pub fn run_count_with_input<I>(&self, input: I) -> StreamResult<usize>
where I: IntoIterator<Item = In>,

Source

pub fn run_count_with_input_report<I>( &self, input: I, config: FusedExecutionConfig, ) -> StreamResult<FusedTerminalReport<usize>>
where I: IntoIterator<Item = In>,

Source

pub fn run_fold_with_input<I, Acc, F>( &self, input: I, zero: Acc, fold: F, ) -> StreamResult<Acc>
where I: IntoIterator<Item = In>, F: FnMut(Acc, Out) -> Acc,

Source

pub fn run_fold_with_input_report<I, Acc, F>( &self, input: I, zero: Acc, fold: F, config: FusedExecutionConfig, ) -> StreamResult<FusedTerminalReport<Acc>>
where I: IntoIterator<Item = In>, F: FnMut(Acc, Out) -> Acc,

Source§

impl<T> GraphBlueprint<FlowShape<T, T>>
where T: Send + 'static,

Source

pub fn run_typed_linear_with_input<I>(&self, input: I) -> StreamResult<Vec<T>>
where I: IntoIterator<Item = T>,

Source

pub fn run_typed_linear_with_input_report<I>( &self, input: I, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<T>>
where I: IntoIterator<Item = T>,

Source

pub fn run_typed_linear_count_with_input<I>( &self, input: I, ) -> StreamResult<usize>
where I: IntoIterator<Item = T>,

Source

pub fn run_typed_linear_count_with_input_report<I>( &self, input: I, config: FusedExecutionConfig, ) -> StreamResult<FusedTerminalReport<usize>>
where I: IntoIterator<Item = T>,

Source

pub fn run_typed_linear_fold_with_input<I, Acc, F>( &self, input: I, zero: Acc, fold: F, ) -> StreamResult<Acc>
where I: IntoIterator<Item = T>, F: FnMut(Acc, T) -> Acc,

Source

pub fn run_typed_linear_fold_with_input_report<I, Acc, F>( &self, input: I, zero: Acc, fold: F, config: FusedExecutionConfig, ) -> StreamResult<FusedTerminalReport<Acc>>
where I: IntoIterator<Item = T>, F: FnMut(Acc, T) -> Acc,

Source

pub fn run_async_boundary_count_with_input_report<I>( &self, input: I, config: AsyncBoundaryExecutionConfig, ) -> StreamResult<FusedTerminalReport<usize>>
where I: IntoIterator<Item = T> + Send, I::IntoIter: Send + 'static,

Runs the internal async-boundary count path.

The graph is still runtime-validated through the typed-linear plan, then split at AsyncBoundary stages and connected with bounded handoff. The concrete boundary executor is intentionally private so Datum does not expose multiple public runtime backends.

Source§

impl<T> GraphBlueprint<FanInShape<T, T>>
where T: Clone + Send + 'static,

Source

pub fn run_fan_in(&self, inputs: Vec<Vec<T>>) -> StreamResult<Vec<T>>

Source

pub fn run_fan_in_report( &self, inputs: Vec<Vec<T>>, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<T>>

Source

pub fn run_concat(&self, inputs: Vec<Vec<T>>) -> StreamResult<Vec<T>>

Source

pub fn run_concat_report( &self, inputs: Vec<Vec<T>>, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<T>>

Source

pub fn run_or_else( &self, primary: Vec<T>, secondary: Vec<T>, ) -> StreamResult<Vec<T>>

Source

pub fn run_or_else_report( &self, primary: Vec<T>, secondary: Vec<T>, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<T>>

Source

pub fn run_or_else_secondary_first( &self, primary: Vec<T>, secondary: Vec<T>, ) -> StreamResult<Vec<T>>

Source

pub fn run_or_else_secondary_first_report( &self, primary: Vec<T>, secondary: Vec<T>, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<T>>

Source

pub fn run_or_else_secondary_closed_first( &self, secondary: Vec<T>, ) -> StreamResult<Vec<T>>

Source

pub fn run_interleave( &self, inputs: Vec<Vec<T>>, segment_size: usize, eager_close: bool, ) -> StreamResult<Vec<T>>

Source

pub fn run_interleave_report( &self, inputs: Vec<Vec<T>>, segment_size: usize, eager_close: bool, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<T>>

Source§

impl<T> GraphBlueprint<MergePreferredShape<T>>
where T: Clone + Send + 'static,

Source

pub fn run_merge_preferred( &self, preferred: Vec<T>, secondary_inputs: Vec<Vec<T>>, ) -> StreamResult<Vec<T>>

Source

pub fn run_merge_preferred_report( &self, preferred: Vec<T>, secondary_inputs: Vec<Vec<T>>, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<T>>

Source§

impl<Left, Right> GraphBlueprint<ZipShape<Left, Right>>
where Left: Clone + Send + 'static, Right: Clone + Send + 'static,

Source

pub fn run_zip( &self, left: Vec<Left>, right: Vec<Right>, ) -> StreamResult<Vec<(Left, Right)>>

Source

pub fn run_zip_report( &self, left: Vec<Left>, right: Vec<Right>, config: FusedExecutionConfig, ) -> StreamResult<FusedExecutionReport<(Left, Right)>>

Trait Implementations§

Source§

impl<S: Shape + Clone> Clone for GraphBlueprint<S>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<S: Shape + Debug> Debug for GraphBlueprint<S>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<S: Shape> Graph for GraphBlueprint<S>

Source§

type Shape = S

Source§

fn shape(&self) -> Self::Shape

Auto Trait Implementations§

§

impl<S> !RefUnwindSafe for GraphBlueprint<S>

§

impl<S> !UnwindSafe for GraphBlueprint<S>

§

impl<S> Freeze for GraphBlueprint<S>
where S: Freeze,

§

impl<S> Send for GraphBlueprint<S>

§

impl<S> Sync for GraphBlueprint<S>

§

impl<S> Unpin for GraphBlueprint<S>
where S: Unpin,

§

impl<S> UnsafeUnpin for GraphBlueprint<S>
where S: UnsafeUnpin,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Message for T
where T: Any + Send + 'static,

Source§

fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>

Convert a BoxedMessage to this concrete type
Source§

fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>

Convert this message to a BoxedMessage
Source§

impl<T> OutputMessage for T
where T: Message + Clone,

Source§

impl<T> State for T
where T: Any + Send + 'static,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more