check method
void
check(
- DcqRegistry registry
)
Implementation
@override
void check(
DcqRegistry registry,
) {
registry.addMethodInvocation((node) {
if (node.methodName.name != 'contains') return;
final target = node.target;
if (target == null) return;
String? propertyName;
Expression? mapExpression;
if (target is PrefixedIdentifier) {
propertyName = target.identifier.name;
mapExpression = target.prefix;
} else if (target is PropertyAccess) {
propertyName = target.propertyName.name;
mapExpression = target.target;
}
if (propertyName != 'keys') return;
if (mapExpression == null) return;
final mapType = mapExpression.staticType;
if (mapType is InterfaceType && mapType.element.name == 'Map') {
reportAtNode(node);
}
});
}