contains method
Return true if this node or any of its children recursively match the
supplied pattern
Implementation
@override
bool contains(Pattern pattern) {
final name = this.name;
final definition = this.definition;
return leading.contains(pattern) ||
name != null && name.contains(pattern) ||
definition != null && definition.delimiter.contains(pattern) ||
definition != null && definition.value.contains(pattern) ||
trailing.contains(pattern);
}