#[non_exhaustive]pub struct NodeView<'s> {
pub id: Option<usize>,
pub dummy_of: Option<(usize, usize)>,
pub x: usize,
pub y: usize,
pub width: usize,
pub height: usize,
pub kind: NodeKind,
pub label: &'s str,
pub content: NodeKindTag,
pub payload: Option<&'s str>,
}Expand description
One node of the scene.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.id: Option<usize>Graph id — None for dummies: their raw ids are synthetic and
backend-specific, so the scene never exposes them. Dummies
carry dummy_of instead.
dummy_of: Option<(usize, usize)>Backend-stable dummy identity: the owning edge’s INPUT index
(the style-callback / EdgeView::input_index convention) and
the level the dummy occupies — the same pair
HitResult::Dummy reports.
None for real nodes.
x: usizeLeft edge, in cells.
y: usizeTop edge, in rows.
width: usizeWidth in cells (including brackets/padding).
height: usizeHeight in rows.
kind: NodeKindReal-vs-dummy dichotomy.
label: &'s strLabel text (empty for dummies).
content: NodeKindTagDeclared content kind (simple / boxed / custom).
payload: Option<&'s str>Custom-node payload — the data half of the template/data
pair, rejoined by the scene (“geometry and keyed content meet
again here”). None when the node declared no custom content.