check method

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

Implementation

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

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

    if (alignmentArg == null) {
      reportAtNode(node);
      return;
    }

    final value = alignmentArg.expression;
    if (value is PrefixedIdentifier &&
        value.prefix.name == 'Alignment' &&
        value.identifier.name == 'center') {
      reportAtNode(node);
    }
  });
}