Skip to content

Commit

Permalink
Version 3.2.0-156.0.dev
Browse files Browse the repository at this point in the history
Merge 10da52b into dev
  • Loading branch information
Dart CI committed Sep 13, 2023
2 parents 39b3d8e + 10da52b commit b679f33
Show file tree
Hide file tree
Showing 57 changed files with 1,408 additions and 1,427 deletions.
14 changes: 7 additions & 7 deletions DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -142,15 +142,15 @@ vars = {
#
# For more details, see https://github.com/dart-lang/sdk/issues/30164.
"dart_style_rev": "2956b1a705953f880a5dae9d3a0969df0fc45e99", # disable rev_sdk_deps.dart
"dartdoc_rev": "f5750f502fdbb887c93cd29aca1e573a92342c53",
"ecosystem_rev": "2e6c3ecc5f43327e615d912c19c2169d1ff5a227",
"dartdoc_rev": "dd28f4ce4135c019c9943ef6c27e10cdcfe6760c",
"ecosystem_rev": "e96fbdbf1135a9e41ef66eb23e6c35f41e0e05b7",
"ffi_rev": "d36e05af55293bcc511d6b3a99ea4b8cb69f6323",
"file_rev": "a18ad1ce88eaeb5a11a13ef8fc25d1e78b546c59",
"fixnum_rev": "87ed0658f32f992dc7360b77513eadfa7056aa9d",
"flute_rev": "f42b09f77132210499ec8ed819a60c260af03db6",
"glob_rev": "9c1996f9f9326d776fe151f292912113b8b64aa3",
"html_rev": "a1b193e95f13c995e7f7200ce0d363de5952e383",
"http_rev": "7fb6fd686f6ce60af300be71a84defcc336d272e",
"http_rev": "de1921405c93f864ba1a6f646f664b16fa060a28",
"http_multi_server_rev": "9d62ea396d7d282592edf994378f67fcde982ce8",
"http_parser_rev": "d2d03e7dfa3b7a99515b16f827650d6e210799b5",
"intl_rev": "5d65e3808ce40e6282e40881492607df4e35669f",
Expand All @@ -163,7 +163,7 @@ vars = {
"material_color_utilities_rev": "799b6ba2f3f1c28c67cc7e0b4f18e0c7d7f3c03e",
"mime_rev": "37ef637c35896e289fdd37c0ea4680df4ab9f543",
"mockito_rev": "412c0beb51a12ed4a8833db7f542558ab92c0c65",
"native_rev": "a2dfedc35960711eb24cb04dcb906793d2222295",
"native_rev": "a2dfedc35960711eb24cb04dcb906793d2222295", # https://github.com/dart-lang/native/issues/130
"package_config_rev": "ae7ad83de97aba507fd05e97cc372bc6695c1759",
"path_rev": "96d9183ad4f9e48109fa8d4b8269cf75f13922dd",
"pool_rev": "a5bee3540a2b5b3a3c34038667e7cd7bb514dc62",
Expand All @@ -180,17 +180,17 @@ vars = {
"string_scanner_rev": "da9142cf9809e7e1364144b8193ec60d87f0a4b8",
"sync_http_rev": "8233f74cd8a87707c13beceb59b56bca41b52966",
"term_glyph_rev": "1b28285a7e818b8e87c4d2119d968c5b36d73c7a",
"test_rev": "27dcae11f6630c0d980f521cf372e962d286e9d3",
"test_rev": "64494959ecdb2e777711487a1fb86555c0c20570",
"test_descriptor_rev": "030193dfdfbf85930eae8536909c546151da9e9c",
"test_process_rev": "2a6ee23fc2550fa466105819f5335fcfbab14035",
"test_reflective_loader_rev": "45c57d62fb08471681cd0b0a1c3b131bf0122929",
"tools_rev": "2c8cbd63b96d94ef4fbc0c7df6fd5eff65fc9a85",
"tools_rev": "fa01f9bad86b48757a96c6790fcd0812bf27def0",
"typed_data_rev": "80e8943524a627f7ff421ace824f38105983e89a",
"usage_rev": "7b12d510b5abde8a216437b8430ccfd02273625c",
"vector_math_rev": "d54af8a2b8b8d935a475a4da6ea5a1b343f29562",
"watcher_rev": "1aed03e2a8005f45083fdb38cbd4b684cd23082f",
"web_socket_channel_rev": "af945f1ad3ac4193ed70b4ebfbdcba3b9f0198bc",
"webdev_rev": "9487a4595f84891b1a01eb6fe998a7b1277dd2d4",
"webdev_rev": "6b21ecf0256dc6ae9d7434b9332cf3c626253474",
"webdriver_rev": "21976d657e6505ad113f714bd104420aee23faac",
"webkit_inspection_protocol_rev": "39a3c297ff573635e7936b015ce4f3466e4739d6",
"yaml_rev": "ae001879aa377afee2e70cf11b8716d6cc3e2658",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3450,18 +3450,20 @@ WarningCode.DEPRECATED_MIXIN_FUNCTION:
The fix is to remove `Function` from where it's referenced.
WarningCode.DEPRECATED_NEW_IN_COMMENT_REFERENCE:
status: hasFix
WarningCode.DOC_DIRECTIVE_HAS_EXTRA_ARGUMENTS:
status: needsEvaluation
WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_BRACE:
status: needsEvaluation
WarningCode.DOC_DIRECTIVE_MISSING_ONE_ARGUMENT:
status: noFix
WarningCode.DOC_DIRECTIVE_MISSING_THREE_ARGUMENTS:
status: noFix
WarningCode.DOC_DIRECTIVE_MISSING_TWO_ARGUMENTS:
status: noFix
WarningCode.DOC_IMPORT_CANNOT_BE_DEFERRED:
status: needsFix
WarningCode.DOC_IMPORT_CANNOT_HAVE_CONFIGURATIONS:
status: needsFix
WarningCode.DOC_YOUTUBE_DIRECTIVE_MISSING_HEIGHT:
status: needsEvaluation
WarningCode.DOC_YOUTUBE_DIRECTIVE_MISSING_URL:
status: needsEvaluation
WarningCode.DOC_YOUTUBE_DIRECTIVE_MISSING_WIDTH:
status: needsEvaluation
WarningCode.DUPLICATE_EXPORT:
status: needsFix
notes: |-
Expand Down
109 changes: 79 additions & 30 deletions pkg/analyzer/lib/dart/ast/doc_comment.dart
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,97 @@ import 'package:meta/meta.dart';
/// Documentation directives are declared with `{@` at the start of a line of a
/// documentation comment, followed the name of a doc directive, arguments, and
/// finally a right curly brace (`}`).
///
/// Arguments are separated from the directive name, and from each other, by
/// whitespace. There are two types of arguments: positional and named. Named
/// arguments are written as `NAME=VALUE`, without any internal whitespace.
/// Named arguments can be optional.
@experimental
sealed class DocDirective {
final class DocDirective {
/// The offset of the starting text, '@docImport'.
final int offset;
final int end;
final int nameOffset;
final int nameEnd;

final DocDirectiveName name;

final List<DocDirectiveArgument> positionalArguments;
final List<DocDirectiveNamedArgument> namedArguments;

DocDirective({
required this.offset,
required this.end,
required this.nameOffset,
required this.nameEnd,
required this.name,
required this.positionalArguments,
required this.namedArguments,
});
}

/// An argument in a doc directive. See [DocDirective] for their syntax.
@experimental
sealed class DocDirectiveArgument {
/// The offset of the start of the argument, from the beginning of the
/// compilation unit.
final int offset;

/// The offset just after the end of the argument, from the beginning of the
/// compilation unit.
final int end;

/// The value of the argument.
final String value;

DocDirectiveArgument({
required this.offset,
required this.end,
required this.value,
});
}

enum DocDirectiveName {
/// The name of a [DocDirective] declaring an embedded video with HTML video
/// controls.
///
/// This directive has three required arguments: the width, the height, and
/// the URL. A named 'id' argument can also be given. For example:
///
/// `{@animation 600 400 https://www.example.com/example.mp4 id=video1}`
animation,

/// The name of a [DocDirective] declaring an embedded YouTube video.
///
/// This directive has three required arguments: the width, the height, and
/// the URL. For example:
///
/// `{@youtube 600 400 https://www.youtube.com/watch?v=abc123}`
youtube;
}

/// A named argument in a doc directive. See [DocDirective] for their syntax.
@experimental
final class DocDirectiveNamedArgument extends DocDirectiveArgument {
/// The name of the argument.
final String name;

DocDirectiveNamedArgument({
required super.offset,
required super.end,
required this.name,
required super.value,
});
}

/// A positional argument in a doc directive. See [DocDirective] for their
/// syntax.
@experimental
final class DocDirectivePositionalArgument extends DocDirectiveArgument {
DocDirectivePositionalArgument({
required super.offset,
required super.end,
required super.value,
});
}

Expand Down Expand Up @@ -84,32 +162,3 @@ final class MdCodeBlockLine {

MdCodeBlockLine({required this.offset, required this.length});
}

/// A [DocDirective] declaring an embedded YouTube video.
///
/// This directive has three required arguments: the width, the height, and the
/// URL. For example:
///
/// `{@youtube 600 400 https://www.youtube.com/watch?v=abc123}`
@experimental
final class YouTubeDocDirective extends DocDirective {
final int? widthOffset;
final int? widthEnd;
final int? heightOffset;
final int? heightEnd;
final int? urlOffset;
final int? urlEnd;

YouTubeDocDirective({
required super.offset,
required super.end,
required super.nameOffset,
required super.nameEnd,
required this.widthOffset,
required this.widthEnd,
required this.heightOffset,
required this.heightEnd,
required this.urlOffset,
required this.urlEnd,
});
}
3 changes: 3 additions & 0 deletions pkg/analyzer/lib/dart/element/element.dart
Original file line number Diff line number Diff line change
Expand Up @@ -1288,6 +1288,9 @@ abstract class ExtensionTypeElement implements InterfaceElement {
@override
AugmentedExtensionTypeElement? get augmented;

/// The primary constructor of this extension.
ConstructorElement get primaryConstructor;

/// The representation of this extension.
FieldElement get representation;

Expand Down
Loading

0 comments on commit b679f33

Please sign in to comment.