@@ -7,7 +7,6 @@ import 'package:analyzer/dart/element/type.dart';
7
7
import 'package:dartdoc/src/element_type.dart' ;
8
8
import 'package:dartdoc/src/model/comment_referable.dart' ;
9
9
import 'package:dartdoc/src/model/model.dart' ;
10
- import 'package:dartdoc/src/render/typedef_renderer.dart' ;
11
10
12
11
abstract class Typedef extends ModelElement
13
12
with TypeParameters , Categorization
@@ -28,11 +27,10 @@ abstract class Typedef extends ModelElement
28
27
String get nameWithGenerics => '$name ${super .genericParameters }' ;
29
28
30
29
@override
31
- String get genericParameters => _renderer. renderGenericParameters ( this );
30
+ String get genericParameters => _renderTypeParameters ( );
32
31
33
32
@override
34
- String get linkedGenericParameters =>
35
- _renderer.renderLinkedGenericParameters (this );
33
+ String get linkedGenericParameters => _renderTypeParameters (isLinked: true );
36
34
37
35
@override
38
36
String get filePath => '${library .dirName }/${fileStructure .fileName }' ;
@@ -67,8 +65,6 @@ abstract class Typedef extends ModelElement
67
65
.map ((f) => getModelFor (f, library) as TypeParameter )
68
66
.toList (growable: false );
69
67
70
- TypedefRenderer get _renderer => const TypedefRendererHtml ();
71
-
72
68
@override
73
69
Iterable <CommentReferable > get referenceParents => [definingLibrary];
74
70
@@ -78,6 +74,24 @@ abstract class Typedef extends ModelElement
78
74
79
75
@override
80
76
Map <String , CommentReferable > get referenceChildren => _referenceChildren;
77
+
78
+ /// Render the the generic type parameters of this typedef.
79
+ String _renderTypeParameters ({bool isLinked = false }) {
80
+ if (typeParameters.isEmpty) {
81
+ return '' ;
82
+ }
83
+
84
+ final buffer = StringBuffer ('<<wbr><span class="type-parameter">' );
85
+ buffer.writeAll (
86
+ typeParameters.map ((t) => [
87
+ ...t.annotations.map ((a) => a.linkedNameWithParameters),
88
+ isLinked ? t.linkedName : t.name,
89
+ ].join (' ' )),
90
+ '</span>, <span class="type-parameter">' );
91
+ buffer.write ('</span>>' );
92
+
93
+ return buffer.toString ();
94
+ }
81
95
}
82
96
83
97
/// A typedef referring to a non-function typedef that is nevertheless not
0 commit comments