[][src]Struct timely::progress::subgraph::SubgraphBuilder

pub struct SubgraphBuilder<TOuter, TInner> where
    TOuter: Timestamp,
    TInner: Timestamp
{ pub name: String, pub path: Vec<usize>, // some fields omitted }

A builder for interactively initializing a Subgraph.

This collects all the information necessary to get a Subgraph up and running, and is important largely through its build method which actually creates a Subgraph.

Fields

name: String

The name of this subgraph.

path: Vec<usize>

A sequence of integers uniquely identifying the subgraph.

Methods

impl<TOuter, TInner> SubgraphBuilder<TOuter, TInner> where
    TOuter: Timestamp,
    TInner: Timestamp + Refines<TOuter>, 
[src]

pub fn new_input(
    &mut self,
    shared_counts: Rc<RefCell<ChangeBatch<TInner>>>
) -> Target
[src]

Allocates a new input to the subgraph and returns the target to that input in the outer graph.

pub fn new_output(&mut self) -> Source[src]

Allocates a new output from the subgraph and returns the source of that output in the outer graph.

pub fn connect(&mut self, source: Source, target: Target)[src]

Introduces a dependence from the source to the target.

This method does not effect data movement, but rather reveals to the progress tracking infrastructure that messages produced by source should be expected to be consumed at target.

pub fn new_from(
    index: usize,
    path: Vec<usize>,
    logging: Option<Logger>,
    name: &str
) -> SubgraphBuilder<TOuter, TInner>
[src]

Creates a new Subgraph from a channel allocator and "descriptive" indices.

pub fn allocate_child_id(&mut self) -> usize[src]

Allocates a new child identifier, for later use.

pub fn add_child(
    &mut self,
    child: Box<dyn Operate<TInner>>,
    index: usize,
    identifier: usize
)
[src]

Adds a new child to the subgraph.

pub fn build<A: AsWorker>(self, worker: &mut A) -> Subgraph<TOuter, TInner>[src]

Now that initialization is complete, actually build a subgraph.

Auto Trait Implementations

impl<TOuter, TInner> !Send for SubgraphBuilder<TOuter, TInner>

impl<TOuter, TInner> !Sync for SubgraphBuilder<TOuter, TInner>

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]