Skip to content

Commit 67a5d29

Browse files
committed
Improve display text for libraries
1 parent 3e07e32 commit 67a5d29

11 files changed

+252
-94
lines changed

lib/src/element_type.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,12 @@ abstract class ElementType
6060
/// Name with generics and nullability indication.
6161
String get nameWithGenerics;
6262

63+
@override
64+
String get displayName => throw UnimplementedError();
65+
66+
@override
67+
String get breadcrumbName => throw UnimplementedError();
68+
6369
DartType get instantiatedType;
6470

6571
Iterable<ElementType> get typeArguments;

lib/src/generator/generator_frontend.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class GeneratorFrontEnd implements Generator {
7474

7575
for (var lib in filterNonDocumented(package.libraries)) {
7676
if (!multiplePackages) {
77-
logInfo('Generating docs for library ${lib.name} from '
77+
logInfo('Generating docs for library ${lib.breadcrumbName} from '
7878
'${lib.element.source.uri}...');
7979
}
8080
if (!lib.isAnonymous && !lib.hasDocumentation) {

lib/src/generator/templates.aot_renderers_for_html.dart

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1102,17 +1102,25 @@ String renderLibrary(LibraryTemplateData context0) {
11021102
var context1 = context0.self;
11031103
buffer.writeln();
11041104
buffer.write('''
1105-
<div>''');
1105+
<div>
1106+
''');
11061107
buffer.write(_renderLibrary_partial_source_link_1(context1));
1107-
buffer.write('''<h1><span class="kind-library">''');
1108-
buffer.write(context1.name);
1109-
buffer.write('''</span> ''');
1108+
buffer.writeln();
1109+
buffer.write('''
1110+
<h1>
1111+
<span class="kind-library">''');
1112+
buffer.write(context1.displayName);
1113+
buffer.write('''</span>
1114+
''');
11101115
buffer.writeEscaped(context1.kind.toString());
11111116
buffer.write(' ');
11121117
buffer.write(_renderLibrary_partial_feature_set_2(context1));
11131118
buffer.write(' ');
11141119
buffer.write(_renderLibrary_partial_categorization_3(context1));
1115-
buffer.write('''</h1></div>''');
1120+
buffer.writeln();
1121+
buffer.write('''
1122+
</h1>
1123+
</div>''');
11161124
buffer.writeln();
11171125
var context2 = context0.library;
11181126
buffer.write('\n ');
@@ -3542,7 +3550,7 @@ String _deduplicated_lib_templates_html__head_html(TemplateDataBase context0) {
35423550
<li><a href="''');
35433551
buffer.write(context4.href);
35443552
buffer.write('''">''');
3545-
buffer.writeEscaped(context4.name);
3553+
buffer.writeEscaped(context4.breadcrumbName);
35463554
buffer.write('''</a></li>''');
35473555
}
35483556
var context5 = context0.navLinksWithGenerics;
@@ -3552,7 +3560,7 @@ String _deduplicated_lib_templates_html__head_html(TemplateDataBase context0) {
35523560
<li><a href="''');
35533561
buffer.write(context6.href);
35543562
buffer.write('''">''');
3555-
buffer.writeEscaped(context6.name);
3563+
buffer.writeEscaped(context6.breadcrumbName);
35563564
if (context6.hasGenericParameters == true) {
35573565
buffer.write('''<span class="signature">''');
35583566
buffer.write(context6.genericParameters);

lib/src/generator/templates.runtime_renderers.dart

Lines changed: 134 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -4418,13 +4418,57 @@ class _Renderer_ElementType extends RendererBase<ElementType> {
44184418
..._Renderer_CommentReferable.propertyMap<CT_>(),
44194419
..._Renderer_Nameable.propertyMap<CT_>(),
44204420
..._Renderer_ModelBuilder.propertyMap<CT_>(),
4421+
'breadcrumbName': Property(
4422+
getValue: (CT_ c) => c.breadcrumbName,
4423+
renderVariable:
4424+
(CT_ c, Property<CT_> self, List<String> remainingNames) {
4425+
if (remainingNames.isEmpty) {
4426+
return self.getValue(c).toString();
4427+
}
4428+
var name = remainingNames.first;
4429+
var nextProperty =
4430+
_Renderer_String.propertyMap().getValue(name);
4431+
return nextProperty.renderVariable(
4432+
self.getValue(c) as String,
4433+
nextProperty,
4434+
[...remainingNames.skip(1)]);
4435+
},
4436+
isNullValue: (CT_ c) => false,
4437+
renderValue: (CT_ c, RendererBase<CT_> r,
4438+
List<MustachioNode> ast, StringSink sink) {
4439+
_render_String(c.breadcrumbName, ast, r.template, sink,
4440+
parent: r);
4441+
},
4442+
),
44214443
'canHaveParameters': Property(
44224444
getValue: (CT_ c) => c.canHaveParameters,
44234445
renderVariable: (CT_ c, Property<CT_> self,
44244446
List<String> remainingNames) =>
44254447
self.renderSimpleVariable(c, remainingNames, 'bool'),
44264448
getBool: (CT_ c) => c.canHaveParameters == true,
44274449
),
4450+
'displayName': Property(
4451+
getValue: (CT_ c) => c.displayName,
4452+
renderVariable:
4453+
(CT_ c, Property<CT_> self, List<String> remainingNames) {
4454+
if (remainingNames.isEmpty) {
4455+
return self.getValue(c).toString();
4456+
}
4457+
var name = remainingNames.first;
4458+
var nextProperty =
4459+
_Renderer_String.propertyMap().getValue(name);
4460+
return nextProperty.renderVariable(
4461+
self.getValue(c) as String,
4462+
nextProperty,
4463+
[...remainingNames.skip(1)]);
4464+
},
4465+
isNullValue: (CT_ c) => false,
4466+
renderValue: (CT_ c, RendererBase<CT_> r,
4467+
List<MustachioNode> ast, StringSink sink) {
4468+
_render_String(c.displayName, ast, r.template, sink,
4469+
parent: r);
4470+
},
4471+
),
44284472
'instantiatedType': Property(
44294473
getValue: (CT_ c) => c.instantiatedType,
44304474
renderVariable: (CT_ c, Property<CT_> self,
@@ -8379,6 +8423,28 @@ class _Renderer_Library extends RendererBase<Library> {
83798423
parent: r);
83808424
},
83818425
),
8426+
'breadcrumbName': Property(
8427+
getValue: (CT_ c) => c.breadcrumbName,
8428+
renderVariable:
8429+
(CT_ c, Property<CT_> self, List<String> remainingNames) {
8430+
if (remainingNames.isEmpty) {
8431+
return self.getValue(c).toString();
8432+
}
8433+
var name = remainingNames.first;
8434+
var nextProperty =
8435+
_Renderer_String.propertyMap().getValue(name);
8436+
return nextProperty.renderVariable(
8437+
self.getValue(c) as String,
8438+
nextProperty,
8439+
[...remainingNames.skip(1)]);
8440+
},
8441+
isNullValue: (CT_ c) => false,
8442+
renderValue: (CT_ c, RendererBase<CT_> r,
8443+
List<MustachioNode> ast, StringSink sink) {
8444+
_render_String(c.breadcrumbName, ast, r.template, sink,
8445+
parent: r);
8446+
},
8447+
),
83828448
'characterLocation': Property(
83838449
getValue: (CT_ c) => c.characterLocation,
83848450
renderVariable: (CT_ c, Property<CT_> self,
@@ -8454,6 +8520,28 @@ class _Renderer_Library extends RendererBase<Library> {
84548520
_render_String(c.dirName, ast, r.template, sink, parent: r);
84558521
},
84568522
),
8523+
'displayName': Property(
8524+
getValue: (CT_ c) => c.displayName,
8525+
renderVariable:
8526+
(CT_ c, Property<CT_> self, List<String> remainingNames) {
8527+
if (remainingNames.isEmpty) {
8528+
return self.getValue(c).toString();
8529+
}
8530+
var name = remainingNames.first;
8531+
var nextProperty =
8532+
_Renderer_String.propertyMap().getValue(name);
8533+
return nextProperty.renderVariable(
8534+
self.getValue(c) as String,
8535+
nextProperty,
8536+
[...remainingNames.skip(1)]);
8537+
},
8538+
isNullValue: (CT_ c) => false,
8539+
renderValue: (CT_ c, RendererBase<CT_> r,
8540+
List<MustachioNode> ast, StringSink sink) {
8541+
_render_String(c.displayName, ast, r.template, sink,
8542+
parent: r);
8543+
},
8544+
),
84578545
'element': Property(
84588546
getValue: (CT_ c) => c.element,
84598547
renderVariable: (CT_ c, Property<CT_> self,
@@ -8697,28 +8785,6 @@ class _Renderer_Library extends RendererBase<Library> {
86978785
_render_String(c.name, ast, r.template, sink, parent: r);
86988786
},
86998787
),
8700-
'nameFromPath': Property(
8701-
getValue: (CT_ c) => c.nameFromPath,
8702-
renderVariable:
8703-
(CT_ c, Property<CT_> self, List<String> remainingNames) {
8704-
if (remainingNames.isEmpty) {
8705-
return self.getValue(c).toString();
8706-
}
8707-
var name = remainingNames.first;
8708-
var nextProperty =
8709-
_Renderer_String.propertyMap().getValue(name);
8710-
return nextProperty.renderVariable(
8711-
self.getValue(c) as String,
8712-
nextProperty,
8713-
[...remainingNames.skip(1)]);
8714-
},
8715-
isNullValue: (CT_ c) => false,
8716-
renderValue: (CT_ c, RendererBase<CT_> r,
8717-
List<MustachioNode> ast, StringSink sink) {
8718-
_render_String(c.nameFromPath, ast, r.template, sink,
8719-
parent: r);
8720-
},
8721-
),
87228788
'package': Property(
87238789
getValue: (CT_ c) => c.package,
87248790
renderVariable:
@@ -8776,19 +8842,6 @@ class _Renderer_Library extends RendererBase<Library> {
87768842
parent: r);
87778843
},
87788844
),
8779-
'prefixToLibrary': Property(
8780-
getValue: (CT_ c) => c.prefixToLibrary,
8781-
renderVariable: (CT_ c, Property<CT_> self,
8782-
List<String> remainingNames) =>
8783-
self.renderSimpleVariable(
8784-
c, remainingNames, 'Map<String, Set<Library>>'),
8785-
isNullValue: (CT_ c) => false,
8786-
renderValue: (CT_ c, RendererBase<CT_> r,
8787-
List<MustachioNode> ast, StringSink sink) {
8788-
renderSimple(c.prefixToLibrary, ast, r.template, sink,
8789-
parent: r, getters: _invisibleGetters['Map']!);
8790-
},
8791-
),
87928845
'properties': Property(
87938846
getValue: (CT_ c) => c.properties,
87948847
renderVariable: (CT_ c, Property<CT_> self,
@@ -11647,6 +11700,50 @@ class _Renderer_Nameable extends RendererBase<Nameable> {
1164711700
CT_,
1164811701
() => {
1164911702
..._Renderer_Object.propertyMap<CT_>(),
11703+
'breadcrumbName': Property(
11704+
getValue: (CT_ c) => c.breadcrumbName,
11705+
renderVariable:
11706+
(CT_ c, Property<CT_> self, List<String> remainingNames) {
11707+
if (remainingNames.isEmpty) {
11708+
return self.getValue(c).toString();
11709+
}
11710+
var name = remainingNames.first;
11711+
var nextProperty =
11712+
_Renderer_String.propertyMap().getValue(name);
11713+
return nextProperty.renderVariable(
11714+
self.getValue(c) as String,
11715+
nextProperty,
11716+
[...remainingNames.skip(1)]);
11717+
},
11718+
isNullValue: (CT_ c) => false,
11719+
renderValue: (CT_ c, RendererBase<CT_> r,
11720+
List<MustachioNode> ast, StringSink sink) {
11721+
_render_String(c.breadcrumbName, ast, r.template, sink,
11722+
parent: r);
11723+
},
11724+
),
11725+
'displayName': Property(
11726+
getValue: (CT_ c) => c.displayName,
11727+
renderVariable:
11728+
(CT_ c, Property<CT_> self, List<String> remainingNames) {
11729+
if (remainingNames.isEmpty) {
11730+
return self.getValue(c).toString();
11731+
}
11732+
var name = remainingNames.first;
11733+
var nextProperty =
11734+
_Renderer_String.propertyMap().getValue(name);
11735+
return nextProperty.renderVariable(
11736+
self.getValue(c) as String,
11737+
nextProperty,
11738+
[...remainingNames.skip(1)]);
11739+
},
11740+
isNullValue: (CT_ c) => false,
11741+
renderValue: (CT_ c, RendererBase<CT_> r,
11742+
List<MustachioNode> ast, StringSink sink) {
11743+
_render_String(c.displayName, ast, r.template, sink,
11744+
parent: r);
11745+
},
11746+
),
1165011747
'fullyQualifiedName': Property(
1165111748
getValue: (CT_ c) => c.fullyQualifiedName,
1165211749
renderVariable:
@@ -17002,10 +17099,12 @@ const _invisibleGetters = {
1700217099
'allLibraries',
1700317100
'allLibrariesAdded',
1700417101
'allLocalModelElements',
17102+
'breadcrumbName',
1700517103
'config',
1700617104
'dartCoreObject',
1700717105
'defaultPackage',
1700817106
'defaultPackageName',
17107+
'displayName',
1700917108
'documentedExtensions',
1701017109
'documentedPackages',
1701117110
'extensions',

0 commit comments

Comments
 (0)