pub struct Edge<E> {
pub source: Uuid,
pub target: Uuid,
pub edge_type: E,
pub direction: EdgeDirection,
pub weight: Option<f32>,
pub created_at: DateTime<Utc>,
pub archived_at: Option<DateTime<Utc>>,
}Expand description
A weighted, typed edge between two nodes
Generic over edge type E to support different relationship types
(e.g., CardEdgeType::Blocks, CardEdgeType::RelatesTo, etc.)
Fields§
§source: UuidSource node identifier
target: UuidTarget node identifier
edge_type: EType of relationship (e.g., Blocks, RelatesTo)
direction: EdgeDirectionDirection of the edge
weight: Option<f32>Optional weight for weighted graph algorithms
created_at: DateTime<Utc>When this edge was created
archived_at: Option<DateTime<Utc>>When this edge was archived (None = active)
Implementations§
Source§impl<E> Edge<E>
impl<E> Edge<E>
Trait Implementations§
Source§impl<'de, E> Deserialize<'de> for Edge<E>where
E: Deserialize<'de>,
impl<'de, E> Deserialize<'de> for Edge<E>where
E: Deserialize<'de>,
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<E> Freeze for Edge<E>where
E: Freeze,
impl<E> RefUnwindSafe for Edge<E>where
E: RefUnwindSafe,
impl<E> Send for Edge<E>where
E: Send,
impl<E> Sync for Edge<E>where
E: Sync,
impl<E> Unpin for Edge<E>where
E: Unpin,
impl<E> UnwindSafe for Edge<E>where
E: UnwindSafe,
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