Skip to main content

Node

Trait Node 

Source
pub trait Node {
    type Port: Clone;
    type Meta: Default;
    type InstantiateEnv;

    // Required methods
    fn next_port(&self) -> Self::Port;
    fn update_meta(&self, meta: &Self::Meta);
    fn instantiate(
        &self,
        env: &mut Self::InstantiateEnv,
        meta: &mut Self::Meta,
        graph: DfirGraph,
        extra_stmts: &[Stmt],
        sidecars: &[Expr],
    );
}
Available on crate feature build only.

Required Associated Types§

Source

type Port: Clone

A logical communication endpoint for this node.

Implementors are free to choose the concrete representation (for example, a handle or identifier), but it must be Clone so that a single logical port can be duplicated and passed to multiple consumers. New ports are allocated via Self::next_port.

Source

type Meta: Default

Source

type InstantiateEnv

Required Methods§

Source

fn next_port(&self) -> Self::Port

Allocates and returns a new port.

Source

fn update_meta(&self, meta: &Self::Meta)

Source

fn instantiate( &self, env: &mut Self::InstantiateEnv, meta: &mut Self::Meta, graph: DfirGraph, extra_stmts: &[Stmt], sidecars: &[Expr], )

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§

Source§

impl Node for DeployCluster

Available on crate feature deploy and (crate features deploy or sim) only.
Source§

impl Node for DeployExternal

Available on crate feature deploy and (crate features deploy or sim) only.
Source§

impl Node for DeployNode

Available on crate feature deploy and (crate features deploy or sim) only.
Source§

impl Node for DockerDeployCluster

Available on crate feature docker_deploy and (crate features deploy or sim) only.
Source§

impl Node for DockerDeployExternal

Available on crate feature docker_deploy and (crate features deploy or sim) only.
Source§

impl Node for DockerDeployProcess

Available on crate feature docker_deploy and (crate features deploy or sim) only.
Source§

impl Node for EcsDeployCluster

Available on crate feature ecs_deploy and (crate features deploy or sim) only.
Source§

impl Node for EcsDeployExternal

Available on crate feature ecs_deploy and (crate features deploy or sim) only.
Source§

impl Node for EcsDeployProcess

Available on crate feature ecs_deploy and (crate features deploy or sim) only.
Source§

impl Node for EmbeddedNode

Source§

impl Node for MaelstromCluster

Available on crate feature maelstrom and (crate features deploy or sim) only.
Source§

impl Node for MaelstromExternal

Available on crate feature maelstrom and (crate features deploy or sim) only.
Source§

impl Node for MaelstromProcess

Available on crate feature maelstrom and (crate features deploy or sim) only.