check method

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

Implementation

@override
void check(
  DcqRegistry registry,
) {
  registry.addInstanceCreationExpression((node) {
    if (node.constructorName.type.name.lexeme != 'Padding') return;

    final childArg = node.argumentList.arguments
        .whereType<NamedExpression>()
        .where((arg) => arg.name.label.name == 'child')
        .firstOrNull;

    if (childArg == null) return;

    final childExpr = childArg.expression;
    if (childExpr is! InstanceCreationExpression) return;

    if (childExpr.constructorName.type.name.lexeme != 'Container') return;

    reportAtNode(node);
  });
}