Builds the [`VisitNode`] passed to every `Visit` callback for this node. `subtree_metadata` (eager) uses `metadata()` (self + subtree) so the prune gate can reject whole subtrees; `self_metadata`/properties are deferred to `&dyn` accessors so they only cost anything when a visitor actually reads them.
(&self)
| 141 | /// reject whole subtrees; `self_metadata`/properties are deferred to `&dyn` accessors so |
| 142 | /// they only cost anything when a visitor actually reads them. |
| 143 | fn visit_node(&self) -> VisitNode<'_> |
| 144 | where |
| 145 | Self: Sized, |
| 146 | { |
| 147 | VisitNode::new(self.to_span(), Self::NODE_ID, self.metadata(), self) |
| 148 | } |
| 149 | } |
| 150 | |
| 151 | /// Blanket bridge so any [`QueryableNode`] can be held as a `&dyn` in [`VisitNode`]. |
nothing calls this directly
no test coverage detected