pub struct EdgeDefinition {
pub edge_type: EdgeType,
pub source: String,
pub target: Option<String>,
pub targets: Option<Vec<String>>,
pub router_name: Option<String>,
pub conditional_targets: Option<HashMap<String, String>>,
pub default_target: Option<String>,
pub sources: Option<Vec<String>>,
}Expand description
EdgeDefinition - Serializable edge structure
Fields§
§edge_type: EdgeTypeEdge type
source: StringSource node name
target: Option<String>Target node name (for fixed edges)
targets: Option<Vec<String>>Multiple targets (for fan-out edges)
router_name: Option<String>Router name (for conditional edges)
conditional_targets: Option<HashMap<String, String>>Conditional targets mapping (route -> target)
default_target: Option<String>Default target for conditional edges
sources: Option<Vec<String>>Source nodes for fan-in edges
Implementations§
Source§impl EdgeDefinition
impl EdgeDefinition
Sourcepub fn conditional(
source: impl Into<String>,
router_name: impl Into<String>,
targets: HashMap<String, String>,
default_target: Option<String>,
) -> Self
pub fn conditional( source: impl Into<String>, router_name: impl Into<String>, targets: HashMap<String, String>, default_target: Option<String>, ) -> Self
Create a conditional edge
Trait Implementations§
Source§impl Clone for EdgeDefinition
impl Clone for EdgeDefinition
Source§fn clone(&self) -> EdgeDefinition
fn clone(&self) -> EdgeDefinition
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 EdgeDefinition
impl Debug for EdgeDefinition
Source§impl<'de> Deserialize<'de> for EdgeDefinition
impl<'de> Deserialize<'de> for EdgeDefinition
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for EdgeDefinition
impl RefUnwindSafe for EdgeDefinition
impl Send for EdgeDefinition
impl Sync for EdgeDefinition
impl Unpin for EdgeDefinition
impl UnsafeUnpin for EdgeDefinition
impl UnwindSafe for EdgeDefinition
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