#[non_exhaustive]pub struct PathStep {
pub node_id: u32,
pub operator: Option<String>,
pub arg_index: Option<u32>,
pub json_pointer: String,
}Expand description
One node along the path from the root of a compiled rule down to the
failing sub-expression. Returned root-to-leaf by
crate::Logic::resolve_node_ids / crate::Error::resolve_path.
#[non_exhaustive] so future fields can be added in 5.x without
breaking downstream — external code reads fields freely but cannot
construct via struct literal. UI tooling that consumes this type
over the wire can roundtrip via the derived Serialize /
Deserialize.
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.node_id: u32Compile-time node id, matching crate::Error::node_ids.
operator: Option<String>Operator name at this node, when one applies. None for plain values
and arrays.
arg_index: Option<u32>Position within the parent node’s argument list. None for the root
step (no parent) and for non-positional contexts.
json_pointer: StringJSONLogic-flavoured pointer from the root to this node — e.g.
/if/0/>/0 for the var slot of the inner > inside an if.
Empty string for the root step.