Skip to content

Migrate the renderers to NNBD #2816

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Sep 28, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions lib/src/model/language_feature.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:dartdoc/src/render/language_feature_renderer.dart';

const Map<String, String> _featureDescriptions = {
Expand All @@ -18,11 +16,11 @@ const Map<String, String> _featureUrls = {
/// the user that the documentation should be specially interpreted.
class LanguageFeature {
/// The description of this language feature.
String get featureDescription => _featureDescriptions[name];
String? get featureDescription => _featureDescriptions[name];

/// A URL containing more information about this feature or `null` if there
/// is none.
String /*?*/ get featureUrl => _featureUrls[name];
String? get featureUrl => _featureUrls[name];

/// The rendered label for this language feature.
String get featureLabel => _featureRenderer.renderLanguageFeatureLabel(this);
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/category_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:dartdoc/src/model/category.dart';

/// A renderer for a [Category].
Expand Down
16 changes: 6 additions & 10 deletions lib/src/render/documentation_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,13 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:html/parser.dart' show parse;
import 'package:markdown/markdown.dart' as md;
import 'package:meta/meta.dart';

abstract class DocumentationRenderer {
DocumentationRenderResult render(
List<md.Node> nodes, {
@required bool processFullDocs,
required bool processFullDocs,
});
}

Expand All @@ -21,7 +18,7 @@ class DocumentationRendererHtml implements DocumentationRenderer {
@override
DocumentationRenderResult render(
List<md.Node> nodes, {
@required bool processFullDocs,
required bool processFullDocs,
}) {
if (nodes.isEmpty) {
return DocumentationRenderResult.empty;
Expand Down Expand Up @@ -51,11 +48,10 @@ class DocumentationRendererHtml implements DocumentationRenderer {
if (processFullDocs) {
// `trim` fixes an issue with line ending differences between Mac and
// Windows.
asHtml = asHtmlDocument.body.innerHtml?.trim();
asHtml = (asHtmlDocument.body?.innerHtml ?? '').trim();
}
var asOneLiner = asHtmlDocument.body.children.isEmpty
? ''
: asHtmlDocument.body.children.first.innerHtml;
var children = asHtmlDocument.body?.children ?? [];
var asOneLiner = children.isEmpty ? '' : children.first.innerHtml;

return DocumentationRenderResult(asHtml: asHtml, asOneLiner: asOneLiner);
}
Expand All @@ -68,5 +64,5 @@ class DocumentationRenderResult {
final String asOneLiner;

const DocumentationRenderResult(
{@required this.asHtml, @required this.asOneLiner});
{required this.asHtml, required this.asOneLiner});
}
2 changes: 0 additions & 2 deletions lib/src/render/enum_field_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:dartdoc/src/model/enum.dart';

abstract class EnumFieldRenderer {
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/feature_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'dart:convert';

import 'package:dartdoc/src/model/annotation.dart';
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/language_feature_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:dartdoc/src/model/language_feature.dart';

/// A renderer for a [LanguageFeature].
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/model_element_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:dartdoc/src/model/feature.dart';
import 'package:dartdoc/src/model/model_element.dart';

Expand Down
15 changes: 5 additions & 10 deletions lib/src/render/parameter_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,10 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'dart:convert';

import 'package:analyzer/dart/element/type.dart';
import 'package:dartdoc/src/element_type.dart';
import 'package:dartdoc/src/model/parameter.dart';
import 'package:meta/meta.dart' as meta;

/// Render HTML in an extended vertical format using <ol> tag.
class ParameterRendererHtmlList extends ParameterRendererHtml {
Expand Down Expand Up @@ -136,7 +132,7 @@ abstract class ParameterRenderer {

void _renderLinkedParameterSublist(
List<Parameter> parameters, StringBuffer output,
{@meta.required bool trailingComma,
{required bool trailingComma,
String openBracket = '',
String closeBracket = '',
bool showMetadata = true,
Expand Down Expand Up @@ -164,8 +160,8 @@ abstract class ParameterRenderer {

String _renderParam(
Parameter param, {
@meta.required String prefix,
@meta.required String suffix,
required String prefix,
required String suffix,
bool showMetadata = true,
bool showNames = true,
}) {
Expand Down Expand Up @@ -195,8 +191,7 @@ abstract class ParameterRenderer {
buf.write(typeName(returnTypeName));
if (showNames) {
buf.write(' ${parameterName(param.name)}');
} else if (paramModelType.isTypedef ||
paramModelType.type is FunctionType) {
} else {
buf.write(' ${parameterName(paramModelType.name)}');
}
if (!paramModelType.isTypedef && paramModelType is DefinedElementType) {
Expand All @@ -208,7 +203,7 @@ abstract class ParameterRenderer {
buf.write(')');
buf.write(paramModelType.nullabilitySuffix);
}
if (!paramModelType.isTypedef && paramModelType.type is FunctionType) {
if (!paramModelType.isTypedef) {
buf.write('(');
buf.write(renderLinkedParams(paramModelType.parameters,
showMetadata: showMetadata, showNames: showNames));
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/source_code_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'dart:convert';

/// Renderer for source code snippets extracted from source files.
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/template_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

abstract class LayoutRenderer {
String composeLayoutTitle(String name, String kind, bool isDeprecated);
}
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/type_parameters_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:dartdoc/src/model/type_parameter.dart';

abstract class TypeParametersRenderer {
Expand Down
2 changes: 0 additions & 2 deletions lib/src/render/typedef_renderer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// @dart=2.9

import 'package:dartdoc/src/model/type_parameter.dart';
import 'package:dartdoc/src/model/typedef.dart';

Expand Down