check method

  1. @override
void check(
  1. DcqRegistry registry
)

Implementation

@override
void check(
  DcqRegistry registry,
) {
  registry.addMethodInvocation((node) {
    if (node.methodName.name != 'toString') return;
    if (node.argumentList.arguments.isNotEmpty) return;

    final target = node.target;
    if (target == null) return;

    if (!_isDateTime(target.staticType)) return;

    if (_isInIgnoredInvocation(node)) return;

    reportAtNode(node);
  });

  registry.addStringInterpolation((node) {
    if (_isInterpolationInIgnoredInvocation(node)) return;

    for (final element in node.elements) {
      if (element is! InterpolationExpression) continue;
      final type = element.expression.staticType;
      if (_isDateTime(type)) {
        reportAtNode(element);
      }
    }
  });
}