pub fn walk<W>(
walker: &mut W,
graph: &SchemaGraph,
ty: &SchemaType,
value: &SchemaValue,
) -> Result<<W as SchemaWalker>::Output, WalkerError<<W as SchemaWalker>::Error>>where
W: SchemaWalker,Expand description
Drive a walker over (graph, ty, value).
SchemaType::Refhops are resolved againstgraph.defsbefore handing the body to the walker.- A reference cycle (the same
TypeIdre-entered while still on the stack) is reported viaWalkerError::RefCycleso walkers do not recurse forever on ill-formed graphs. - A dangling reference (the named id is not present in
graph.defs) is reported viaWalkerError::DanglingRef. - Any error produced by the walker itself is bubbled up unchanged via
WalkerError::Walker.