fluidattacks_blends_domain/syntax/edge.rs
1//! Syntax edge: per-layer optional marks.
2
3use crate::{Ast, Cfg};
4
5/// A link between two syntax nodes, marked by which layer(s) it belongs to.
6#[derive(Clone, Copy, PartialEq, Eq, Debug, Default)]
7#[non_exhaustive]
8pub struct SyntaxEdge {
9 /// Present when this edge carries an AST (parent/child) link.
10 pub ast: Option<Ast>,
11 /// Present when this edge carries a CFG (control-flow) link.
12 pub cfg: Option<Cfg>,
13}