nodes property

Iterable<InspectNode> get nodes

Every node, depth-first, root included.

Implementation

Iterable<InspectNode> get nodes sync* {
  Iterable<InspectNode> walk(InspectNode node) sync* {
    yield node;
    for (var child in node.children) {
      yield* walk(child);
    }
  }

  if (root case var root?) yield* walk(root);
}