visit method
void
visit(
- RadixTreeNode<
T> node, - String prefixAllowed,
- String prefix,
- RadixTreeKVVisitor<
T?> visitor,
Visits the given node of this tree with the given prefix and visitor.
Also, recursively visits the left/right subtrees of this node.
Implementation
void visit(RadixTreeNode<T> node, String prefixAllowed, String prefix,
RadixTreeKVVisitor<T?> visitor) {
if (node.hasValue && prefix.startsWith(prefixAllowed)) {
visitor(prefix, node.value);
}
final prefixLength = prefix.length;
for (final child in node) {
if (prefixAllowed.length <= prefixLength ||
child.prefix[0] == prefixAllowed[prefixLength]) {
visit(child, prefixAllowed, prefix + child.prefix, visitor);
}
}
}