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: Vec<Stmt>,
);
}Available on crate feature
build only.Required Associated Types§
Sourcetype Port: Clone
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.
type Meta: Default
type InstantiateEnv
Required Methods§
fn update_meta(&self, meta: &Self::Meta)
fn instantiate( &self, env: &mut Self::InstantiateEnv, meta: &mut Self::Meta, graph: DfirGraph, extra_stmts: Vec<Stmt>, )
Implementors§
Source§impl Node for DeployCluster
Available on crate feature deploy only.
impl Node for DeployCluster
Available on crate feature
deploy only.type Port = String
type Meta = HashMap<usize, Vec<TaglessMemberId>>
type InstantiateEnv = Deployment
Source§impl Node for DeployExternal
Available on crate feature deploy only.
impl Node for DeployExternal
Available on crate feature
deploy only.type Port = String
type Meta = HashMap<usize, Vec<TaglessMemberId>>
type InstantiateEnv = Deployment
Source§impl Node for DeployNode
Available on crate feature deploy only.
impl Node for DeployNode
Available on crate feature
deploy only.type Port = String
type Meta = HashMap<usize, Vec<TaglessMemberId>>
type InstantiateEnv = Deployment
Source§impl Node for DockerDeployCluster
Available on crate features docker_deploy and deploy only.
impl Node for DockerDeployCluster
Available on crate features
docker_deploy and deploy only.Source§impl Node for DockerDeployExternal
Available on crate features docker_deploy and deploy only.
impl Node for DockerDeployExternal
Available on crate features
docker_deploy and deploy only.Source§impl Node for DockerDeployProcess
Available on crate features docker_deploy and deploy only.
impl Node for DockerDeployProcess
Available on crate features
docker_deploy and deploy only.Source§impl Node for DockerDeployClusterEcs
Available on crate features ecs_deploy and deploy only.
impl Node for DockerDeployClusterEcs
Available on crate features
ecs_deploy and deploy only.Source§impl Node for DockerDeployExternalEcs
Available on crate features ecs_deploy and deploy only.
impl Node for DockerDeployExternalEcs
Available on crate features
ecs_deploy and deploy only.