pub struct ProcedureExecutionGraph {
pub nodes: HashMap<String, ProcedureExecutionNode>,
pub root_nodes: Vec<String>,
pub section_edges: HashMap<String, NodeList>,
pub step_edges: HashMap<String, NodeList>,
}
Expand description
ProcedureExecution graph is a flattened representation of the graph It mirrors the template ProcedureGraph structure, but may contain additional information and potentially additional copies of nodes (if the same steps are executed multiple times)
- Nodes (map of ID => ProcedureNode)
- Root nodes (list of ProcedureStepNodes that have no dependencies)
- Section edges (map of ProcedureSectionNode ID => list of Procedure(Section|Step)Node IDs)
- Step edges (map of ProcedureStepNode ID => list of ProcedureStepNode IDs)
Root nodes can be used to help provide a stable ordering of the node subgraphs. Section edges are used to represent visual grouping/organization of the procedure. Step edges are used to represent the dependencies between the steps.
Fields§
§nodes: HashMap<String, ProcedureExecutionNode>
§root_nodes: Vec<String>
§section_edges: HashMap<String, NodeList>
§step_edges: HashMap<String, NodeList>
Trait Implementations§
Source§impl Clone for ProcedureExecutionGraph
impl Clone for ProcedureExecutionGraph
Source§fn clone(&self) -> ProcedureExecutionGraph
fn clone(&self) -> ProcedureExecutionGraph
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ProcedureExecutionGraph
impl Debug for ProcedureExecutionGraph
Source§impl Default for ProcedureExecutionGraph
impl Default for ProcedureExecutionGraph
Source§impl Message for ProcedureExecutionGraph
impl Message for ProcedureExecutionGraph
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self
.Source§impl PartialEq for ProcedureExecutionGraph
impl PartialEq for ProcedureExecutionGraph
impl StructuralPartialEq for ProcedureExecutionGraph
Auto Trait Implementations§
impl Freeze for ProcedureExecutionGraph
impl RefUnwindSafe for ProcedureExecutionGraph
impl Send for ProcedureExecutionGraph
impl Sync for ProcedureExecutionGraph
impl Unpin for ProcedureExecutionGraph
impl UnwindSafe for ProcedureExecutionGraph
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request