check method
void
check(
- DcqRegistry registry
)
Implementation
@override
void check(DcqRegistry registry) {
registry.addMethodInvocation((node) {
if (node.methodName.name != 'useMemoized') return;
final args = node.argumentList.arguments;
if (args.isEmpty) return;
final firstArg = args.first;
if (firstArg is FunctionExpression) {
final body = firstArg.body;
if (body is ExpressionFunctionBody &&
body.expression is FunctionExpression) {
reportAtNode(node);
} else if (body is BlockFunctionBody) {
final statements = body.block.statements;
if (statements.length == 1) {
final stmt = statements.first;
if (stmt is ReturnStatement &&
stmt.expression is FunctionExpression) {
reportAtNode(node);
}
}
}
}
});
}