@@ -8,8 +8,6 @@ import 'package:dartdoc/src/generator/generator_frontend.dart';
8
8
import 'package:dartdoc/src/generator/generator_utils.dart' as generator_util;
9
9
import 'package:dartdoc/src/generator/template_data.dart' ;
10
10
import 'package:dartdoc/src/generator/templates.dart' ;
11
- import 'package:dartdoc/src/generator/templates.runtime_renderers.dart' ;
12
- import 'package:dartdoc/src/mustachio/renderer_base.dart' ;
13
11
import 'package:dartdoc/src/warnings.dart' ;
14
12
import 'package:path/path.dart' as path show Context;
15
13
@@ -60,16 +58,15 @@ class DartdocGeneratorBackendOptions implements TemplateOptions {
60
58
}
61
59
62
60
class SidebarGenerator <T extends TemplateData > {
63
- final Template template;
64
- final RenderFunction <T > renderFunction;
61
+ final String Function (T context) renderFunction;
65
62
final Map <Documentable , String > _renderCache = {};
66
63
67
- SidebarGenerator (this .template, this . renderFunction);
64
+ SidebarGenerator (this .renderFunction);
68
65
69
66
// Retrieve the render for a specific key, or generate it using the given
70
67
// template data if you need.
71
68
String getRenderFor (Documentable key, T templateData) {
72
- return _renderCache[key] ?? = renderFunction (templateData, template );
69
+ return _renderCache[key] ?? = renderFunction (templateData);
73
70
}
74
71
}
75
72
@@ -86,10 +83,9 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
86
83
DartdocGeneratorBackend (
87
84
DartdocGeneratorBackendOptions options, this .templates, this ._pathContext)
88
85
: options = options ?? DartdocGeneratorBackendOptions ._defaults (),
89
- sidebarForLibrary = SidebarGenerator (
90
- templates.sidebarLibraryTemplate, renderSidebarForLibrary),
91
- sidebarForContainer = SidebarGenerator (
92
- templates.sidebarContainerTemplate, renderSidebarForContainer);
86
+ sidebarForLibrary = SidebarGenerator (templates.renderSidebarForLibrary),
87
+ sidebarForContainer =
88
+ SidebarGenerator (templates.renderSidebarForContainer);
93
89
94
90
/// Helper method to bind template data and emit the content to the writer.
95
91
void write (
@@ -129,15 +125,15 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
129
125
@override
130
126
void generatePackage (FileWriter writer, PackageGraph graph, Package package) {
131
127
TemplateData data = PackageTemplateData (options, graph, package);
132
- var content = renderIndex (data, templates.indexTemplate );
128
+ var content = templates. renderIndex (data);
133
129
write (writer, package.filePath, data, content);
134
130
}
135
131
136
132
@override
137
133
void generateCategory (
138
134
FileWriter writer, PackageGraph packageGraph, Category category) {
139
135
TemplateData data = CategoryTemplateData (options, packageGraph, category);
140
- var content = renderCategory (data, templates.categoryTemplate );
136
+ var content = templates. renderCategory (data);
141
137
write (writer, category.filePath, data, content);
142
138
}
143
139
@@ -146,7 +142,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
146
142
FileWriter writer, PackageGraph packageGraph, Library lib) {
147
143
TemplateData data = LibraryTemplateData (
148
144
options, packageGraph, lib, sidebarForLibrary.getRenderFor);
149
- var content = renderLibrary (data, templates.libraryTemplate );
145
+ var content = templates. renderLibrary (data);
150
146
write (writer, lib.filePath, data, content);
151
147
}
152
148
@@ -155,7 +151,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
155
151
FileWriter writer, PackageGraph packageGraph, Library lib, Class clazz) {
156
152
TemplateData data = ClassTemplateData (options, packageGraph, lib, clazz,
157
153
sidebarForLibrary.getRenderFor, sidebarForContainer.getRenderFor);
158
- var content = renderClass (data, templates.classTemplate );
154
+ var content = templates. renderClass (data);
159
155
write (writer, clazz.filePath, data, content);
160
156
}
161
157
@@ -169,7 +165,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
169
165
extension ,
170
166
sidebarForLibrary.getRenderFor,
171
167
sidebarForContainer.getRenderFor);
172
- var content = renderExtension (data, templates.extensionTemplate );
168
+ var content = templates. renderExtension (data);
173
169
write (writer, extension .filePath, data, content);
174
170
}
175
171
@@ -178,7 +174,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
178
174
FileWriter writer, PackageGraph packageGraph, Library lib, Mixin mixin ) {
179
175
TemplateData data = MixinTemplateData (options, packageGraph, lib, mixin ,
180
176
sidebarForLibrary.getRenderFor, sidebarForContainer.getRenderFor);
181
- var content = renderMixin (data, templates.mixinTemplate );
177
+ var content = templates. renderMixin (data);
182
178
write (writer, mixin .filePath, data, content);
183
179
}
184
180
@@ -187,7 +183,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
187
183
Library lib, Class clazz, Constructor constructor) {
188
184
TemplateData data = ConstructorTemplateData (options, packageGraph, lib,
189
185
clazz, constructor, sidebarForContainer.getRenderFor);
190
- var content = renderConstructor (data, templates.constructorTemplate );
186
+ var content = templates. renderConstructor (data);
191
187
write (writer, constructor.filePath, data, content);
192
188
}
193
189
@@ -196,7 +192,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
196
192
FileWriter writer, PackageGraph packageGraph, Library lib, Enum eNum) {
197
193
TemplateData data = EnumTemplateData (options, packageGraph, lib, eNum,
198
194
sidebarForLibrary.getRenderFor, sidebarForContainer.getRenderFor);
199
- var content = renderEnum (data, templates.enumTemplate );
195
+ var content = templates. renderEnum (data);
200
196
write (writer, eNum.filePath, data, content);
201
197
}
202
198
@@ -205,7 +201,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
205
201
Library lib, ModelFunction function) {
206
202
TemplateData data = FunctionTemplateData (
207
203
options, packageGraph, lib, function, sidebarForLibrary.getRenderFor);
208
- var content = renderFunction (data, templates.functionTemplate );
204
+ var content = templates. renderFunction (data);
209
205
write (writer, function.filePath, data, content);
210
206
}
211
207
@@ -214,7 +210,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
214
210
Container clazz, Method method) {
215
211
TemplateData data = MethodTemplateData (options, packageGraph, lib, clazz,
216
212
method, sidebarForContainer.getRenderFor);
217
- var content = renderMethod (data, templates.methodTemplate );
213
+ var content = templates. renderMethod (data);
218
214
write (writer, method.filePath, data, content);
219
215
}
220
216
@@ -228,7 +224,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
228
224
Library lib, Container clazz, Field property) {
229
225
TemplateData data = PropertyTemplateData (options, packageGraph, lib, clazz,
230
226
property, sidebarForContainer.getRenderFor);
231
- var content = renderProperty (data, templates.propertyTemplate );
227
+ var content = templates. renderProperty (data);
232
228
write (writer, property.filePath, data, content);
233
229
}
234
230
@@ -237,8 +233,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
237
233
Library lib, TopLevelVariable property) {
238
234
TemplateData data = TopLevelPropertyTemplateData (
239
235
options, packageGraph, lib, property, sidebarForLibrary.getRenderFor);
240
- var content =
241
- renderTopLevelProperty (data, templates.topLevelPropertyTemplate);
236
+ var content = templates.renderTopLevelProperty (data);
242
237
write (writer, property.filePath, data, content);
243
238
}
244
239
@@ -252,7 +247,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
252
247
Library lib, Typedef typeDef) {
253
248
TemplateData data = TypedefTemplateData (
254
249
options, packageGraph, lib, typeDef, sidebarForLibrary.getRenderFor);
255
- var content = renderTypedef (data, templates.typeDefTemplate );
250
+ var content = templates. renderTypedef (data);
256
251
write (writer, typeDef.filePath, data, content);
257
252
}
258
253
0 commit comments