visitConstantPattern method

  1. @override
void visitConstantPattern(
  1. ConstantPattern node
)
override

Implementation

@override
void visitConstantPattern(ConstantPattern node) {
  final expression = node.expression;
  if (expression.isDotShorthand) return;
  if (expression is! PrefixedIdentifier) return;

  final declaredType = switch (node.parent) {
    GuardedPattern(:final pattern) => pattern.matchedValueType,
    LogicalOrPattern(parent: GuardedPattern(:final pattern)) =>
      pattern.matchedValueType,
    _ => null,
  };
  if (declaredType == null) return;

  _checkAndReport(expression: expression, declaredType: declaredType);
}