Skip to main content

Site

Trait Site 

Source
pub trait Site: EvalSite + StreamEndpoint {
    // Required method
    fn kind(&self) -> SiteKind;

    // Provided methods
    fn run_fragment(
        &self,
        cx: &mut Cx,
        fragment: &PlacedFragment,
    ) -> Result<Vec<StreamEnvelope>> { ... }
    fn realize_fragment_node(
        &self,
        cx: &mut Cx,
        fragment: &PlacedFragment,
    ) -> Result<EvalReply> { ... }
    fn realize_fragment_node_with_timeout(
        &self,
        cx: &mut Cx,
        fragment: &PlacedFragment,
        timeout: Option<Duration>,
    ) -> Result<EvalReply> { ... }
}
Expand description

An EvalSite that is also a stream endpoint and can realize placed dataflow fragments.

Required Methods§

Source

fn kind(&self) -> SiteKind

Returns the SiteKind of this site.

Provided Methods§

Source

fn run_fragment( &self, cx: &mut Cx, fragment: &PlacedFragment, ) -> Result<Vec<StreamEnvelope>>

Realizes fragment: feeds its input edges, evaluates its node, and emits a result envelope per output edge.

Source

fn realize_fragment_node( &self, cx: &mut Cx, fragment: &PlacedFragment, ) -> Result<EvalReply>

Evaluates the fragment’s node and returns its reply, with no deadline.

Source

fn realize_fragment_node_with_timeout( &self, cx: &mut Cx, fragment: &PlacedFragment, timeout: Option<Duration>, ) -> Result<EvalReply>

Evaluates the fragment’s node and returns its reply, honoring timeout.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§