Skip to content

Commit ce3eaff

Browse files
committed
exposing mixin types seems bad
1 parent 8c0a5fc commit ce3eaff

File tree

5 files changed

+20
-27
lines changed

5 files changed

+20
-27
lines changed

lib/src/generator/templates.dart

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ const _visibleTypes = {
5050
Category,
5151
Class,
5252
Constructor,
53-
Constructable,
5453
DefinedElementType,
5554
Documentable,
5655
ElementType,
@@ -63,13 +62,11 @@ const _visibleTypes = {
6362
Library,
6463
LibraryContainer,
6564
Method,
66-
MixedInTypes,
6765
ModelElement,
6866
Package,
6967
// For getters like `isNotEmpty`; perhaps a smell, but currently in use.
7068
String,
7169
TopLevelVariable,
72-
TypeInterfaces,
7370
TypeParameter,
7471
};
7572

lib/src/generator/templates.runtime_renderers.dart

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14009,13 +14009,6 @@ class _Renderer_TopLevelVariable extends RendererBase<TopLevelVariable> {
1400914009
}
1401014010
}
1401114011

14012-
void _render_TypeInterfaces(TypeInterfaces context, List<MustachioNode> ast,
14013-
Template template, StringSink sink,
14014-
{RendererBase<Object> parent}) {
14015-
var renderer = _Renderer_TypeInterfaces(context, parent, template, sink);
14016-
renderer.renderBlock(ast);
14017-
}
14018-
1401914012
class _Renderer_TypeInterfaces extends RendererBase<TypeInterfaces> {
1402014013
static final Map<Type, Object> _propertyMapCache = {};
1402114014
static Map<String, Property<CT_>> propertyMap<CT_ extends TypeInterfaces>() =>
@@ -14074,11 +14067,11 @@ class _Renderer_TypeInterfaces extends RendererBase<TypeInterfaces> {
1407414067
renderVariable: (CT_ c, Property<CT_> self,
1407514068
List<String> remainingNames) =>
1407614069
self.renderSimpleVariable(
14077-
c, remainingNames, 'Iterable<TypeInterfaces>'),
14070+
c, remainingNames, 'Iterable<InheritingContainer>'),
1407814071
renderIterable: (CT_ c, RendererBase<CT_> r,
1407914072
List<MustachioNode> ast, StringSink sink) {
1408014073
return c.publicImplementors.map((e) =>
14081-
_render_TypeInterfaces(e, ast, r.template, sink,
14074+
_render_InheritingContainer(e, ast, r.template, sink,
1408214075
parent: r));
1408314076
},
1408414077
),
@@ -14087,11 +14080,11 @@ class _Renderer_TypeInterfaces extends RendererBase<TypeInterfaces> {
1408714080
renderVariable: (CT_ c, Property<CT_> self,
1408814081
List<String> remainingNames) =>
1408914082
self.renderSimpleVariable(
14090-
c, remainingNames, 'Iterable<TypeInterfaces>'),
14083+
c, remainingNames, 'Iterable<InheritingContainer>'),
1409114084
renderIterable: (CT_ c, RendererBase<CT_> r,
1409214085
List<MustachioNode> ast, StringSink sink) {
1409314086
return c.publicImplementorsSorted.map((e) =>
14094-
_render_TypeInterfaces(e, ast, r.template, sink,
14087+
_render_InheritingContainer(e, ast, r.template, sink,
1409514088
parent: r));
1409614089
},
1409714090
),

lib/src/model/inheriting_container.dart

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -177,13 +177,13 @@ mixin TypeInterfaces on InheritingContainer {
177177
///
178178
/// If this [InheritingContainer] has a private implementor, then that is
179179
/// counted as a proxy for any public implementors of that private container.
180-
Iterable<TypeInterfaces> get publicImplementors {
181-
var result = <TypeInterfaces>{};
182-
var seen = <TypeInterfaces>{};
180+
Iterable<InheritingContainer> get publicImplementors {
181+
var result = <InheritingContainer>{};
182+
var seen = <InheritingContainer>{};
183183

184184
// Recursively adds [implementor] if public, or the implementors of
185185
// [implementor] if not.
186-
void addToResult(TypeInterfaces implementor) {
186+
void addToResult(InheritingContainer implementor) {
187187
if (seen.contains(implementor)) return;
188188
seen.add(implementor);
189189
if (implementor.isPublicAndPackageDocumented) {
@@ -201,9 +201,9 @@ mixin TypeInterfaces on InheritingContainer {
201201
return result;
202202
}
203203

204-
List<TypeInterfaces> _publicImplementorsSorted;
204+
List<InheritingContainer> _publicImplementorsSorted;
205205

206-
Iterable<TypeInterfaces> get publicImplementorsSorted =>
206+
Iterable<InheritingContainer> get publicImplementorsSorted =>
207207
_publicImplementorsSorted ??= publicImplementors.toList()..sort(byName);
208208
}
209209

lib/src/model/package_graph.dart

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ class PackageGraph with CommentReferable, Nameable {
182182
/// is true.
183183
bool allExtensionsAdded = false;
184184

185-
Map<TypeInterfaces, List<TypeInterfaces>> get implementors {
185+
Map<InheritingContainer, List<InheritingContainer>> get implementors {
186186
assert(allImplementorsAdded);
187187
return _implementors;
188188
}
@@ -220,10 +220,12 @@ class PackageGraph with CommentReferable, Nameable {
220220
HashMap<Tuple2<Element, Library>, Set<ModelElement>>();
221221

222222
/// A mapping of the list of classes which implement each class.
223-
final _implementors = LinkedHashMap<TypeInterfaces, List<TypeInterfaces>>(
224-
equals: (TypeInterfaces a, TypeInterfaces b) =>
225-
a.definingContainer == b.definingContainer,
226-
hashCode: (TypeInterfaces clazz) => clazz.definingContainer.hashCode);
223+
final _implementors =
224+
LinkedHashMap<InheritingContainer, List<InheritingContainer>>(
225+
equals: (InheritingContainer a, InheritingContainer b) =>
226+
a.definingContainer == b.definingContainer,
227+
hashCode: (InheritingContainer clazz) =>
228+
clazz.definingContainer.hashCode);
227229

228230
/// A list of extensions that exist in the package graph.
229231
final List<Extension> _extensions = [];

lib/src/model_utils.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,10 +93,11 @@ Iterable<T> filterNonPublic<T extends Privacy>(Iterable<T> privacyItems) {
9393

9494
/// Finds canonical classes for all classes in the iterable, if possible.
9595
/// If a canonical class can not be found, returns the original class.
96-
Iterable<TypeInterfaces> findCanonicalFor(Iterable<TypeInterfaces> containers) {
96+
Iterable<InheritingContainer> findCanonicalFor(
97+
Iterable<InheritingContainer> containers) {
9798
return containers.map((c) =>
9899
c.packageGraph.findCanonicalModelElementFor(c.element)
99-
as TypeInterfaces ??
100+
as InheritingContainer ??
100101
c);
101102
}
102103

0 commit comments

Comments
 (0)