Skip to content

Commit 1f06752

Browse files
authored
Tidy up Class class, which is not a supertype of Enum class (#3727)
1 parent 057d0ed commit 1f06752

File tree

2 files changed

+31
-29
lines changed

2 files changed

+31
-29
lines changed

Diff for: lib/src/generator/templates.runtime_renderers.dart

+23-3
Original file line numberDiff line numberDiff line change
@@ -1650,13 +1650,12 @@ class _Renderer_Class extends RendererBase<Class> {
16501650
renderVariable: (CT_ c, Property<CT_> self,
16511651
List<String> remainingNames) =>
16521652
self.renderSimpleVariable(
1653-
c, remainingNames, 'InterfaceElement'),
1653+
c, remainingNames, 'ClassElement'),
16541654
isNullValue: (CT_ c) => false,
16551655
renderValue: (CT_ c, RendererBase<CT_> r,
16561656
List<MustachioNode> ast, StringSink sink) {
16571657
renderSimple(c.element, ast, r.template, sink,
1658-
parent: r,
1659-
getters: _invisibleGetters['InterfaceElement']!);
1658+
parent: r, getters: _invisibleGetters['ClassElement']!);
16601659
},
16611660
),
16621661
'fileName': Property(
@@ -15960,6 +15959,27 @@ const _invisibleGetters = {
1596015959
'lineNumber',
1596115960
'runtimeType'
1596215961
},
15962+
'ClassElement': {
15963+
'augmentation',
15964+
'augmentationTarget',
15965+
'augmented',
15966+
'hasNonFinalField',
15967+
'hashCode',
15968+
'isAbstract',
15969+
'isBase',
15970+
'isConstructable',
15971+
'isDartCoreEnum',
15972+
'isDartCoreObject',
15973+
'isExhaustive',
15974+
'isFinal',
15975+
'isInline',
15976+
'isInterface',
15977+
'isMixinApplication',
15978+
'isMixinClass',
15979+
'isSealed',
15980+
'isValidMixin',
15981+
'runtimeType'
15982+
},
1596315983
'CommentReferable': {
1596415984
'definingCommentReferable',
1596515985
'href',

Diff for: lib/src/model/class.dart

+8-26
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import 'package:analyzer/dart/element/element.dart';
66
import 'package:dartdoc/src/model/model.dart';
77

8-
/// A [Container] defined with a `class` or `enum` declaration.
8+
/// A [Container] defined with a `class` declaration.
99
///
1010
/// Members follow similar naming rules to [Container], with the following
1111
/// additions:
@@ -14,7 +14,7 @@ import 'package:dartdoc/src/model/model.dart';
1414
/// **inherited**: Filtered getters giving only inherited children.
1515
class Class extends InheritingContainer with Constructable, MixedInTypes {
1616
@override
17-
final InterfaceElement element;
17+
final ClassElement element;
1818

1919
@override
2020
late final List<ModelElement> allModelElements = [
@@ -50,16 +50,10 @@ class Class extends InheritingContainer with Constructable, MixedInTypes {
5050
String get fileName => '$name-class.html';
5151

5252
@override
53-
bool get isAbstract => switch (element) {
54-
ClassElement class_ when class_.isAbstract => true,
55-
_ => false,
56-
};
53+
bool get isAbstract => element.isAbstract;
5754

5855
@override
59-
bool get isBase => switch (element) {
60-
ClassElement class_ when class_.isBase && !class_.isSealed => true,
61-
_ => false,
62-
};
56+
bool get isBase => element.isBase && !element.isSealed;
6357

6458
bool get isErrorOrException {
6559
bool isError(InterfaceElement element) =>
@@ -72,28 +66,16 @@ class Class extends InheritingContainer with Constructable, MixedInTypes {
7266
}
7367

7468
@override
75-
bool get isFinal => switch (element) {
76-
ClassElement class_ when class_.isFinal && !class_.isSealed => true,
77-
_ => false,
78-
};
69+
bool get isFinal => element.isFinal && !element.isSealed;
7970

8071
@override
81-
bool get isInterface => switch (element) {
82-
ClassElement class_ when class_.isInterface && !class_.isSealed => true,
83-
_ => false,
84-
};
72+
bool get isInterface => element.isInterface && !element.isSealed;
8573

8674
@override
87-
bool get isMixinClass => switch (element) {
88-
ClassElement class_ when class_.isMixinClass => true,
89-
_ => false,
90-
};
75+
bool get isMixinClass => element.isMixinClass;
9176

9277
@override
93-
bool get isSealed => switch (element) {
94-
ClassElement class_ when class_.isSealed => true,
95-
_ => false,
96-
};
78+
bool get isSealed => element.isSealed;
9779

9880
@override
9981
Kind get kind => Kind.class_;

0 commit comments

Comments
 (0)