run method

  1. @override
void run(
  1. CustomLintResolver resolver,
  2. ErrorReporter reporter,
  3. CustomLintContext context
)
override

Emits lints for a given file.

run will only be invoked with files respecting filesToAnalyze

Implementation

@override
void run(
  CustomLintResolver resolver,
  ErrorReporter reporter,
  CustomLintContext context,
) {
  context.registry.addFunctionDeclaration((node) {
    if (isDirectlyAnnotatedByText(node, shortName, longName)) {
      node.functionExpression.body.accept(
        _UnawaitedFutureVisitor(reporter: reporter, code: code),
      );
    }
  });
  context.registry.addFunctionExpression((node) {
    final paramElement = node.staticParameterElement;
    if (paramElement != null && _checker.hasAnnotationOf(paramElement)) {
      node.body.accept(
        _UnawaitedFutureVisitor(reporter: reporter, code: code),
      );
    }
  });
}