patternContext property
AstNodeImpl?
patternContext
Returns the context for this pattern.
- Declaration context: PatternVariableDeclarationImpl
- Assignment context: PatternAssignmentImpl
- Matching context: GuardedPatternImpl
Implementation
AstNodeImpl? get patternContext {
for (DartPatternImpl current = this;;) {
final parent = current.parent;
if (parent is PatternVariableDeclarationImpl) {
return parent;
} else if (parent is PatternAssignmentImpl) {
return parent;
} else if (parent is GuardedPatternImpl) {
return parent;
} else if (parent is DartPatternImpl) {
current = parent;
} else {
return null;
}
}
}