commit | 14be3fb63b25dd524b7c9483dc356540b33c99a3 | [log] [tgz] |
---|---|---|
author | pq <pquitslund@google.com> | Wed May 08 20:43:37 2024 +0000 |
committer | Commit Queue <dart-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed May 08 20:43:37 2024 +0000 |
tree | 6a465e3db05ae401d1aa5248319fd562e4abad66 | |
parent | b64c9ee5e915fe9cae4755edc6cfe32fe03b0aba [diff] |
don't report `one_member_abstracts` on macro classes Completes: https://github.com/dart-lang/linter/issues/4924 Change-Id: I27095ed1dd07c8c9662776d83c5dbfc8fd478e64 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/365900 Commit-Queue: Phil Quitslund <pquitslund@google.com> Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/linter/lib/src/rules/one_member_abstracts.dart b/pkg/linter/lib/src/rules/one_member_abstracts.dart index 692d16d..2039b17 100644 --- a/pkg/linter/lib/src/rules/one_member_abstracts.dart +++ b/pkg/linter/lib/src/rules/one_member_abstracts.dart
@@ -70,6 +70,7 @@ if (node.abstractKeyword == null) return; if (node.extendsClause != null) return; + if (node.macroKeyword != null) return; if (node.isAugmentation) return; var element = node.declaredElement;
diff --git a/pkg/linter/test/rules/one_member_abstracts_test.dart b/pkg/linter/test/rules/one_member_abstracts_test.dart index 1ad6bd2..3bc9610 100644 --- a/pkg/linter/test/rules/one_member_abstracts_test.dart +++ b/pkg/linter/test/rules/one_member_abstracts_test.dart
@@ -17,6 +17,16 @@ @override String get lintRule => 'one_member_abstracts'; + test_macroClass() async { + await assertDiagnostics(r''' +abstract macro class M { + void m(); +} +''', [ + // TODO(pq): add abstract macro compilation error when implemented + ]); + } + test_oneMember_abstract() async { await assertDiagnostics(r''' abstract class C {