22// for details. All rights reserved. Use of this source code is governed by a
33// BSD-style license that can be found in the LICENSE file.
44
5- // @dart=2.9
6-
75import 'package:analyzer/file_system/file_system.dart' ;
86import 'package:dartdoc/options.dart' ;
97import 'package:dartdoc/src/generator/generator.dart' ;
@@ -19,12 +17,12 @@ import 'package:path/path.dart' as path show Context;
1917/// Configuration options for the Dartdoc's default backend.
2018class DartdocGeneratorBackendOptions implements TemplateOptions {
2119 @override
22- final String relCanonicalPrefix;
20+ final String ? relCanonicalPrefix;
2321
2422 @override
2523 final String toolVersion;
2624
27- final String favicon;
25+ final String ? favicon;
2826
2927 final bool prettyIndexJson;
3028
@@ -50,16 +48,6 @@ class DartdocGeneratorBackendOptions implements TemplateOptions {
5048 customHeaderContent = context.header,
5149 customFooterContent = context.footer,
5250 customInnerFooterText = context.footerText;
53-
54- DartdocGeneratorBackendOptions ._defaults ()
55- : relCanonicalPrefix = null ,
56- toolVersion = null ,
57- favicon = null ,
58- prettyIndexJson = false ,
59- useBaseHref = false ,
60- customHeaderContent = '' ,
61- customFooterContent = '' ,
62- customInnerFooterText = '' ;
6351}
6452
6553class SidebarGenerator <T extends TemplateData > {
@@ -86,10 +74,8 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
8674 final ResourceProvider resourceProvider;
8775 final path.Context _pathContext;
8876
89- DartdocGeneratorBackend (DartdocGeneratorBackendOptions options,
90- this .templates, this .resourceProvider)
91- : options = options ?? DartdocGeneratorBackendOptions ._defaults (),
92- sidebarForLibrary = SidebarGenerator (templates.renderSidebarForLibrary),
77+ DartdocGeneratorBackend (this .options, this .templates, this .resourceProvider)
78+ : sidebarForLibrary = SidebarGenerator (templates.renderSidebarForLibrary),
9379 sidebarForContainer =
9480 SidebarGenerator (templates.renderSidebarForContainer),
9581 _pathContext = resourceProvider.pathContext;
@@ -100,8 +86,9 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
10086 if (! options.useBaseHref) {
10187 content = content.replaceAll (htmlBasePlaceholder, data.htmlBase);
10288 }
89+ var element = data.self;
10390 writer.write (filename, content,
104- element: data.self is Warnable ? data.self : null );
91+ element: element is Warnable ? element : null );
10592 }
10693
10794 @override
@@ -131,23 +118,23 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
131118
132119 @override
133120 void generatePackage (FileWriter writer, PackageGraph graph, Package package) {
134- TemplateData data = PackageTemplateData (options, graph, package);
121+ var data = PackageTemplateData (options, graph, package);
135122 var content = templates.renderIndex (data);
136123 write (writer, package.filePath, data, content);
137124 }
138125
139126 @override
140127 void generateCategory (
141128 FileWriter writer, PackageGraph packageGraph, Category category) {
142- TemplateData data = CategoryTemplateData (options, packageGraph, category);
129+ var data = CategoryTemplateData (options, packageGraph, category);
143130 var content = templates.renderCategory (data);
144131 write (writer, category.filePath, data, content);
145132 }
146133
147134 @override
148135 void generateLibrary (
149136 FileWriter writer, PackageGraph packageGraph, Library lib) {
150- TemplateData data = LibraryTemplateData (
137+ var data = LibraryTemplateData (
151138 options, packageGraph, lib, sidebarForLibrary.getRenderFor);
152139 var content = templates.renderLibrary (data);
153140 write (writer, lib.filePath, data, content);
@@ -156,7 +143,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
156143 @override
157144 void generateClass (
158145 FileWriter writer, PackageGraph packageGraph, Library lib, Class clazz) {
159- TemplateData data = ClassTemplateData (options, packageGraph, lib, clazz,
146+ var data = ClassTemplateData (options, packageGraph, lib, clazz,
160147 sidebarForLibrary.getRenderFor, sidebarForContainer.getRenderFor);
161148 var content = templates.renderClass (data);
162149 write (writer, clazz.filePath, data, content);
@@ -165,21 +152,16 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
165152 @override
166153 void generateExtension (FileWriter writer, PackageGraph packageGraph,
167154 Library lib, Extension extension ) {
168- TemplateData data = ExtensionTemplateData (
169- options,
170- packageGraph,
171- lib,
172- extension ,
173- sidebarForLibrary.getRenderFor,
174- sidebarForContainer.getRenderFor);
155+ var data = ExtensionTemplateData (options, packageGraph, lib, extension ,
156+ sidebarForLibrary.getRenderFor, sidebarForContainer.getRenderFor);
175157 var content = templates.renderExtension (data);
176158 write (writer, extension .filePath, data, content);
177159 }
178160
179161 @override
180162 void generateMixin (
181163 FileWriter writer, PackageGraph packageGraph, Library lib, Mixin mixin ) {
182- TemplateData data = MixinTemplateData (options, packageGraph, lib, mixin ,
164+ var data = MixinTemplateData (options, packageGraph, lib, mixin ,
183165 sidebarForLibrary.getRenderFor, sidebarForContainer.getRenderFor);
184166 var content = templates.renderMixin (data);
185167 write (writer, mixin .filePath, data, content);
@@ -188,16 +170,16 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
188170 @override
189171 void generateConstructor (FileWriter writer, PackageGraph packageGraph,
190172 Library lib, Class clazz, Constructor constructor) {
191- TemplateData data = ConstructorTemplateData (options, packageGraph, lib,
192- clazz, constructor, sidebarForContainer.getRenderFor);
173+ var data = ConstructorTemplateData (options, packageGraph, lib, clazz ,
174+ constructor, sidebarForContainer.getRenderFor);
193175 var content = templates.renderConstructor (data);
194176 write (writer, constructor.filePath, data, content);
195177 }
196178
197179 @override
198180 void generateEnum (
199181 FileWriter writer, PackageGraph packageGraph, Library lib, Enum eNum) {
200- TemplateData data = EnumTemplateData (options, packageGraph, lib, eNum,
182+ var data = EnumTemplateData (options, packageGraph, lib, eNum,
201183 sidebarForLibrary.getRenderFor, sidebarForContainer.getRenderFor);
202184 var content = templates.renderEnum (data);
203185 write (writer, eNum.filePath, data, content);
@@ -206,7 +188,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
206188 @override
207189 void generateFunction (FileWriter writer, PackageGraph packageGraph,
208190 Library lib, ModelFunction function) {
209- TemplateData data = FunctionTemplateData (
191+ var data = FunctionTemplateData (
210192 options, packageGraph, lib, function, sidebarForLibrary.getRenderFor);
211193 var content = templates.renderFunction (data);
212194 write (writer, function.filePath, data, content);
@@ -215,8 +197,8 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
215197 @override
216198 void generateMethod (FileWriter writer, PackageGraph packageGraph, Library lib,
217199 Container clazz, Method method) {
218- TemplateData data = MethodTemplateData (options, packageGraph, lib, clazz,
219- method, sidebarForContainer.getRenderFor);
200+ var data = MethodTemplateData (options, packageGraph, lib, clazz, method ,
201+ sidebarForContainer.getRenderFor);
220202 var content = templates.renderMethod (data);
221203 write (writer, method.filePath, data, content);
222204 }
@@ -229,16 +211,16 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
229211 @override
230212 void generateProperty (FileWriter writer, PackageGraph packageGraph,
231213 Library lib, Container clazz, Field property) {
232- TemplateData data = PropertyTemplateData (options, packageGraph, lib, clazz,
233- property, sidebarForContainer.getRenderFor);
214+ var data = PropertyTemplateData (options, packageGraph, lib, clazz, property ,
215+ sidebarForContainer.getRenderFor);
234216 var content = templates.renderProperty (data);
235217 write (writer, property.filePath, data, content);
236218 }
237219
238220 @override
239221 void generateTopLevelProperty (FileWriter writer, PackageGraph packageGraph,
240222 Library lib, TopLevelVariable property) {
241- TemplateData data = TopLevelPropertyTemplateData (
223+ var data = TopLevelPropertyTemplateData (
242224 options, packageGraph, lib, property, sidebarForLibrary.getRenderFor);
243225 var content = templates.renderTopLevelProperty (data);
244226 write (writer, property.filePath, data, content);
@@ -252,7 +234,7 @@ abstract class DartdocGeneratorBackend implements GeneratorBackend {
252234 @override
253235 void generateTypeDef (FileWriter writer, PackageGraph packageGraph,
254236 Library lib, Typedef typeDef) {
255- TemplateData data = TypedefTemplateData (
237+ var data = TypedefTemplateData (
256238 options, packageGraph, lib, typeDef, sidebarForLibrary.getRenderFor);
257239 var content = templates.renderTypedef (data);
258240 write (writer, typeDef.filePath, data, content);
0 commit comments