mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 02:57:35 +00:00
[cfe] Remove exports from internal libraries
Change-Id: Ief854e97f5cd3c8a04137ec6682f8193946abcac Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/213770 Reviewed-by: Jens Johansen <jensj@google.com> Commit-Queue: Johnni Winther <johnniwinther@google.com>
This commit is contained in:
parent
d45095c4d7
commit
3fd4283295
|
@ -18,7 +18,7 @@ import '../kernel/class_hierarchy_builder.dart' show ClassMember;
|
|||
import '../kernel/constructor_tearoff_lowering.dart';
|
||||
import '../kernel/expression_generator_helper.dart'
|
||||
show ExpressionGeneratorHelper;
|
||||
import '../kernel/kernel_builder.dart'
|
||||
import '../kernel/utils.dart'
|
||||
show isRedirectingGenerativeConstructorImplementation;
|
||||
import '../kernel/kernel_helper.dart' show SynthesizedFunctionNode;
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
// BSD-style license that can be found in the LICENSE file.
|
||||
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/core_types.dart';
|
||||
import 'package:kernel/type_algebra.dart';
|
||||
|
||||
import '../dill/dill_member_builder.dart';
|
||||
|
@ -11,7 +12,6 @@ import '../kernel/class_hierarchy_builder.dart';
|
|||
import '../kernel/constructor_tearoff_lowering.dart';
|
||||
import '../kernel/forest.dart';
|
||||
import '../kernel/internal_ast.dart';
|
||||
import '../kernel/kernel_api.dart';
|
||||
import '../kernel/kernel_helper.dart';
|
||||
import '../kernel/redirecting_factory_body.dart'
|
||||
show getRedirectingFactoryBody, RedirectingFactoryBody;
|
||||
|
|
|
@ -17,7 +17,7 @@ import '../fasta_codes.dart' show messageInternalProblemAlreadyInitialized;
|
|||
|
||||
import '../kernel/body_builder.dart' show BodyBuilder;
|
||||
import '../kernel/class_hierarchy_builder.dart';
|
||||
import '../kernel/kernel_builder.dart' show ImplicitFieldType;
|
||||
import '../kernel/implicit_field_type.dart';
|
||||
import '../kernel/kernel_helper.dart';
|
||||
import '../kernel/late_lowering.dart' as late_lowering;
|
||||
import '../kernel/member_covariance.dart';
|
||||
|
|
|
@ -8,7 +8,7 @@ import 'package:_fe_analyzer_shared/src/messages/severity.dart' show Severity;
|
|||
|
||||
import 'package:kernel/ast.dart' show Library, Nullability;
|
||||
|
||||
import '../combinator.dart' show Combinator;
|
||||
import '../combinator.dart' show CombinatorBuilder;
|
||||
|
||||
import '../problems.dart' show internalProblem, unsupported;
|
||||
|
||||
|
@ -76,8 +76,8 @@ abstract class LibraryBuilder implements ModifierBuilder {
|
|||
|
||||
Builder? addBuilder(String? name, Builder declaration, int charOffset);
|
||||
|
||||
void addExporter(
|
||||
LibraryBuilder exporter, List<Combinator>? combinators, int charOffset);
|
||||
void addExporter(LibraryBuilder exporter,
|
||||
List<CombinatorBuilder>? combinators, int charOffset);
|
||||
|
||||
/// Add a problem with a severity determined by the severity of the message.
|
||||
///
|
||||
|
@ -242,8 +242,8 @@ abstract class LibraryBuilderImpl extends ModifierBuilderImpl
|
|||
}
|
||||
|
||||
@override
|
||||
void addExporter(
|
||||
LibraryBuilder exporter, List<Combinator>? combinators, int charOffset) {
|
||||
void addExporter(LibraryBuilder exporter,
|
||||
List<CombinatorBuilder>? combinators, int charOffset) {
|
||||
exporters.add(new Export(exporter, this, combinators, charOffset));
|
||||
}
|
||||
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
// BSD-style license that can be found in the LICENSE file.
|
||||
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/type_algebra.dart';
|
||||
|
||||
import '../kernel/class_hierarchy_builder.dart';
|
||||
import '../kernel/kernel_api.dart';
|
||||
import '../kernel/member_covariance.dart';
|
||||
|
||||
import '../loader.dart' show Loader;
|
||||
|
|
|
@ -2,19 +2,17 @@
|
|||
// 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.
|
||||
|
||||
library fasta.combinator;
|
||||
|
||||
class Combinator {
|
||||
class CombinatorBuilder {
|
||||
final bool isShow;
|
||||
|
||||
final Set<String> names;
|
||||
|
||||
Combinator(this.isShow, this.names, int charOffset, Uri fileUri);
|
||||
CombinatorBuilder(this.isShow, this.names, int charOffset, Uri fileUri);
|
||||
|
||||
Combinator.show(Iterable<String> names, int charOffset, Uri fileUri)
|
||||
CombinatorBuilder.show(Iterable<String> names, int charOffset, Uri fileUri)
|
||||
: this(true, new Set<String>.from(names), charOffset, fileUri);
|
||||
|
||||
Combinator.hide(Iterable<String> names, int charOffset, Uri fileUri)
|
||||
CombinatorBuilder.hide(Iterable<String> names, int charOffset, Uri fileUri)
|
||||
: this(false, new Set<String>.from(names), charOffset, fileUri);
|
||||
|
||||
bool get isHide => !isShow;
|
||||
|
|
|
@ -14,7 +14,7 @@ import '../builder/library_builder.dart';
|
|||
import '../kernel/class_hierarchy_builder.dart'
|
||||
show ClassHierarchyBuilder, ClassMember;
|
||||
import '../kernel/member_covariance.dart';
|
||||
import '../kernel/kernel_builder.dart'
|
||||
import '../kernel/utils.dart'
|
||||
show isRedirectingGenerativeConstructorImplementation;
|
||||
|
||||
import '../modifier.dart'
|
||||
|
|
|
@ -7,7 +7,7 @@ library fasta.export;
|
|||
import 'builder/builder.dart';
|
||||
import 'builder/library_builder.dart';
|
||||
|
||||
import 'combinator.dart' show Combinator;
|
||||
import 'combinator.dart' show CombinatorBuilder;
|
||||
import 'fasta_codes.dart';
|
||||
|
||||
class Export {
|
||||
|
@ -17,7 +17,7 @@ class Export {
|
|||
/// The library being exported.
|
||||
LibraryBuilder exported;
|
||||
|
||||
final List<Combinator>? combinators;
|
||||
final List<CombinatorBuilder>? combinators;
|
||||
|
||||
final int charOffset;
|
||||
|
||||
|
@ -27,7 +27,7 @@ class Export {
|
|||
|
||||
bool addToExportScope(String name, Builder member) {
|
||||
if (combinators != null) {
|
||||
for (Combinator combinator in combinators!) {
|
||||
for (CombinatorBuilder combinator in combinators!) {
|
||||
if (combinator.isShow && !combinator.names.contains(name)) return false;
|
||||
if (combinator.isHide && combinator.names.contains(name)) return false;
|
||||
}
|
||||
|
|
|
@ -10,9 +10,9 @@ import 'builder/builder.dart';
|
|||
import 'builder/library_builder.dart';
|
||||
import 'builder/prefix_builder.dart';
|
||||
|
||||
import 'kernel/kernel_builder.dart' show toKernelCombinators;
|
||||
import 'kernel/utils.dart' show toKernelCombinators;
|
||||
|
||||
import 'combinator.dart' show Combinator;
|
||||
import 'combinator.dart' show CombinatorBuilder;
|
||||
|
||||
import 'configuration.dart' show Configuration;
|
||||
|
||||
|
@ -31,7 +31,7 @@ class Import {
|
|||
|
||||
final String? prefix;
|
||||
|
||||
final List<Combinator>? combinators;
|
||||
final List<CombinatorBuilder>? combinators;
|
||||
|
||||
final List<Configuration>? configurations;
|
||||
|
||||
|
@ -73,7 +73,7 @@ class Import {
|
|||
}
|
||||
imported!.exportScope.forEach((String name, Builder member) {
|
||||
if (combinators != null) {
|
||||
for (Combinator combinator in combinators!) {
|
||||
for (CombinatorBuilder combinator in combinators!) {
|
||||
if (combinator.isShow && !combinator.names.contains(name)) return;
|
||||
if (combinator.isHide && combinator.names.contains(name)) return;
|
||||
}
|
||||
|
@ -94,7 +94,7 @@ PrefixBuilder? createPrefixBuilder(
|
|||
String? prefix,
|
||||
SourceLibraryBuilder importer,
|
||||
LibraryBuilder? imported,
|
||||
List<Combinator>? combinators,
|
||||
List<CombinatorBuilder>? combinators,
|
||||
bool deferred,
|
||||
int charOffset,
|
||||
int prefixCharOffset,
|
||||
|
|
|
@ -95,7 +95,7 @@ import 'builder/type_declaration_builder.dart' show TypeDeclarationBuilder;
|
|||
|
||||
import 'builder_graph.dart' show BuilderGraph;
|
||||
|
||||
import 'combinator.dart' show Combinator;
|
||||
import 'combinator.dart' show CombinatorBuilder;
|
||||
|
||||
import 'compiler_context.dart' show CompilerContext;
|
||||
|
||||
|
@ -123,7 +123,7 @@ import 'util/textual_outline.dart' show textualOutline;
|
|||
|
||||
import 'hybrid_file_system.dart' show HybridFileSystem;
|
||||
|
||||
import 'kernel/kernel_builder.dart' show ClassHierarchyBuilder;
|
||||
import 'kernel/class_hierarchy_builder.dart' show ClassHierarchyBuilder;
|
||||
|
||||
import 'kernel/internal_ast.dart' show VariableDeclarationImpl;
|
||||
|
||||
|
@ -2007,16 +2007,16 @@ class IncrementalCompiler implements IncrementalKernelGenerator {
|
|||
in libraryBuilder.library.dependencies) {
|
||||
if (!dependency.isImport) continue;
|
||||
|
||||
List<Combinator>? combinators;
|
||||
List<CombinatorBuilder>? combinators;
|
||||
|
||||
for (kernel.Combinator combinator in dependency.combinators) {
|
||||
combinators ??= <Combinator>[];
|
||||
combinators ??= <CombinatorBuilder>[];
|
||||
|
||||
combinators.add(combinator.isShow
|
||||
? new Combinator.show(combinator.names, combinator.fileOffset,
|
||||
libraryBuilder.fileUri)
|
||||
: new Combinator.hide(combinator.names, combinator.fileOffset,
|
||||
libraryBuilder.fileUri));
|
||||
? new CombinatorBuilder.show(combinator.names,
|
||||
combinator.fileOffset, libraryBuilder.fileUri)
|
||||
: new CombinatorBuilder.hide(combinator.names,
|
||||
combinator.fileOffset, libraryBuilder.fileUri));
|
||||
}
|
||||
|
||||
debugLibrary.addImport(
|
||||
|
|
|
@ -29,7 +29,8 @@ import 'package:_fe_analyzer_shared/src/parser/quote.dart'
|
|||
unescapeFirstStringPart,
|
||||
unescapeLastStringPart,
|
||||
unescapeString;
|
||||
|
||||
import 'package:_fe_analyzer_shared/src/parser/stack_listener.dart'
|
||||
show FixedNullableList, GrowableList, NullValue, ParserRecovery;
|
||||
import 'package:_fe_analyzer_shared/src/parser/value_kind.dart';
|
||||
|
||||
import 'package:_fe_analyzer_shared/src/scanner/scanner.dart' show Token;
|
||||
|
@ -39,6 +40,12 @@ import 'package:_fe_analyzer_shared/src/scanner/token_impl.dart'
|
|||
import 'package:_fe_analyzer_shared/src/util/link.dart';
|
||||
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/class_hierarchy.dart';
|
||||
import 'package:kernel/clone.dart';
|
||||
import 'package:kernel/core_types.dart';
|
||||
import 'package:kernel/src/bounds_checks.dart' hide calculateBounds;
|
||||
import 'package:kernel/transformations/flags.dart';
|
||||
import 'package:kernel/type_algebra.dart';
|
||||
import 'package:kernel/type_environment.dart';
|
||||
|
||||
import '../builder/builder.dart';
|
||||
|
@ -101,59 +108,35 @@ import '../problems.dart'
|
|||
import '../scope.dart';
|
||||
|
||||
import '../source/diet_parser.dart';
|
||||
|
||||
import '../source/scope_listener.dart'
|
||||
show
|
||||
FixedNullableList,
|
||||
GrowableList,
|
||||
JumpTargetKind,
|
||||
NullValue,
|
||||
ParserRecovery,
|
||||
ScopeListener;
|
||||
|
||||
import '../source/scope_listener.dart' show JumpTargetKind, ScopeListener;
|
||||
import '../source/source_library_builder.dart' show SourceLibraryBuilder;
|
||||
|
||||
import '../source/stack_listener_impl.dart' show offsetForToken;
|
||||
|
||||
import '../source/value_kinds.dart';
|
||||
|
||||
import '../type_inference/type_inferrer.dart'
|
||||
show TypeInferrer, InferredFunctionBody;
|
||||
|
||||
import '../type_inference/type_schema.dart' show UnknownType;
|
||||
|
||||
import '../util/helpers.dart' show DelayedActionPerformer;
|
||||
|
||||
import 'collections.dart';
|
||||
|
||||
import 'constness.dart' show Constness;
|
||||
|
||||
import 'constructor_tearoff_lowering.dart';
|
||||
|
||||
import 'expression_generator.dart';
|
||||
|
||||
import 'expression_generator_helper.dart';
|
||||
|
||||
import 'forest.dart' show Forest;
|
||||
|
||||
import 'implicit_type_argument.dart' show ImplicitTypeArgument;
|
||||
|
||||
import 'internal_ast.dart';
|
||||
import 'kernel_variable_builder.dart';
|
||||
import 'load_library_builder.dart';
|
||||
import 'redirecting_factory_body.dart'
|
||||
show
|
||||
RedirectingFactoryBody,
|
||||
RedirectionTarget,
|
||||
getRedirectingFactoryBody,
|
||||
getRedirectionTarget;
|
||||
|
||||
import 'type_algorithms.dart' show calculateBounds;
|
||||
|
||||
import 'kernel_api.dart';
|
||||
|
||||
import 'kernel_ast_api.dart';
|
||||
|
||||
import 'internal_ast.dart';
|
||||
|
||||
import 'kernel_builder.dart';
|
||||
import 'utils.dart';
|
||||
|
||||
// TODO(ahe): Remove this and ensure all nodes have a location.
|
||||
const int noLocation = TreeNode.noOffset;
|
||||
|
|
|
@ -11,6 +11,7 @@ import 'package:_fe_analyzer_shared/src/parser/parser.dart'
|
|||
import 'package:_fe_analyzer_shared/src/scanner/token.dart' show Token;
|
||||
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/text/ast_to_text.dart';
|
||||
import 'package:kernel/type_algebra.dart';
|
||||
|
||||
import '../builder/builder.dart';
|
||||
|
@ -67,12 +68,12 @@ import 'expression_generator_helper.dart';
|
|||
|
||||
import 'forest.dart';
|
||||
|
||||
import 'kernel_api.dart' show NameSystem, printNodeOn, printQualifiedNameOn;
|
||||
|
||||
import 'kernel_builder.dart' show LoadLibraryBuilder;
|
||||
|
||||
import 'internal_ast.dart';
|
||||
|
||||
import 'load_library_builder.dart';
|
||||
|
||||
import 'utils.dart';
|
||||
|
||||
/// A generator represents a subexpression for which we can't yet build an
|
||||
/// expression because we don't yet know the context in which it's used.
|
||||
///
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
library fasta.expression_generator_helper;
|
||||
|
||||
import 'package:_fe_analyzer_shared/src/scanner/token.dart' show Token;
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/type_algebra.dart';
|
||||
import 'package:kernel/type_environment.dart';
|
||||
|
||||
|
@ -24,25 +25,6 @@ import '../type_inference/inference_helper.dart' show InferenceHelper;
|
|||
import 'constness.dart' show Constness;
|
||||
import 'forest.dart' show Forest;
|
||||
import 'internal_ast.dart';
|
||||
import 'kernel_ast_api.dart'
|
||||
show
|
||||
Arguments,
|
||||
Constructor,
|
||||
DartType,
|
||||
Expression,
|
||||
FunctionNode,
|
||||
Initializer,
|
||||
InterfaceType,
|
||||
Library,
|
||||
Member,
|
||||
Name,
|
||||
Procedure,
|
||||
StaticGet,
|
||||
TreeNode,
|
||||
TypeParameter,
|
||||
TypeParameterType,
|
||||
Typedef,
|
||||
VariableDeclaration;
|
||||
|
||||
/// Alias for Expression | Generator
|
||||
typedef Expression_Generator = dynamic;
|
||||
|
|
|
@ -1,50 +0,0 @@
|
|||
// Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file
|
||||
// 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.
|
||||
|
||||
/// This library exports all API from Kernel that can be used throughout fasta.
|
||||
library fasta.kernel_api;
|
||||
|
||||
export 'package:kernel/type_algebra.dart' show Substitution, substitute;
|
||||
|
||||
export 'package:kernel/class_hierarchy.dart' show ClassHierarchy;
|
||||
|
||||
export 'package:kernel/clone.dart' show CloneVisitorNotMembers;
|
||||
|
||||
export 'package:kernel/core_types.dart' show CoreTypes;
|
||||
|
||||
export 'package:kernel/transformations/flags.dart' show TransformerFlag;
|
||||
|
||||
export 'package:kernel/text/ast_to_text.dart' show NameSystem;
|
||||
|
||||
export 'package:kernel/type_environment.dart' show TypeEnvironment;
|
||||
|
||||
export 'package:kernel/src/bounds_checks.dart' show instantiateToBounds;
|
||||
|
||||
import 'package:kernel/text/ast_to_text.dart' show NameSystem, Printer;
|
||||
|
||||
import 'package:kernel/ast.dart' show Class, Member, Node;
|
||||
|
||||
void printNodeOn(Node? node, StringSink sink, {NameSystem? syntheticNames}) {
|
||||
if (node == null) {
|
||||
sink.write("null");
|
||||
} else {
|
||||
syntheticNames ??= new NameSystem();
|
||||
new Printer(sink, syntheticNames: syntheticNames).writeNode(node);
|
||||
}
|
||||
}
|
||||
|
||||
void printQualifiedNameOn(Member? member, StringSink sink) {
|
||||
if (member == null) {
|
||||
sink.write("null");
|
||||
} else {
|
||||
sink.write(member.enclosingLibrary.importUri);
|
||||
sink.write("::");
|
||||
Class? cls = member.enclosingClass;
|
||||
if (cls != null) {
|
||||
sink.write(cls.name);
|
||||
sink.write("::");
|
||||
}
|
||||
sink.write(member.name.text);
|
||||
}
|
||||
}
|
|
@ -1,98 +0,0 @@
|
|||
// Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file
|
||||
// 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.
|
||||
|
||||
/// This library exports all API from Kernel's ast.dart that can be used
|
||||
/// throughout fasta.
|
||||
library fasta.kernel_ast_api;
|
||||
|
||||
export 'package:kernel/ast.dart'
|
||||
show
|
||||
Arguments,
|
||||
AsExpression,
|
||||
AssertStatement,
|
||||
AsyncMarker,
|
||||
Block,
|
||||
BreakStatement,
|
||||
Catch,
|
||||
CheckLibraryIsLoaded,
|
||||
Class,
|
||||
Component,
|
||||
Constructor,
|
||||
ConstructorInvocation,
|
||||
ContinueSwitchStatement,
|
||||
DartType,
|
||||
DynamicType,
|
||||
EmptyStatement,
|
||||
Expression,
|
||||
ExpressionStatement,
|
||||
Field,
|
||||
ForInStatement,
|
||||
FunctionDeclaration,
|
||||
FunctionExpression,
|
||||
FunctionNode,
|
||||
FunctionType,
|
||||
Initializer,
|
||||
InterfaceType,
|
||||
InvalidExpression,
|
||||
InvalidType,
|
||||
IsExpression,
|
||||
LabeledStatement,
|
||||
Let,
|
||||
Library,
|
||||
LibraryDependency,
|
||||
LibraryPart,
|
||||
ListLiteral,
|
||||
LocalInitializer,
|
||||
Location,
|
||||
MapLiteralEntry,
|
||||
MapLiteral,
|
||||
Member,
|
||||
Name,
|
||||
NamedExpression,
|
||||
NamedType,
|
||||
Node,
|
||||
NullLiteral,
|
||||
Procedure,
|
||||
ProcedureKind,
|
||||
Rethrow,
|
||||
ReturnStatement,
|
||||
Statement,
|
||||
StaticGet,
|
||||
StaticInvocation,
|
||||
StaticSet,
|
||||
StringConcatenation,
|
||||
SuperInitializer,
|
||||
SuperMethodInvocation,
|
||||
SuperPropertySet,
|
||||
SwitchCase,
|
||||
ThisExpression,
|
||||
TreeNode,
|
||||
TypeParameter,
|
||||
TypeParameterType,
|
||||
Typedef,
|
||||
TypedefType,
|
||||
VariableDeclaration,
|
||||
VariableGet,
|
||||
VariableSet,
|
||||
VoidType,
|
||||
setParents;
|
||||
|
||||
export 'internal_ast.dart'
|
||||
show
|
||||
ArgumentsImpl,
|
||||
Cascade,
|
||||
DeferredCheck,
|
||||
FactoryConstructorInvocation,
|
||||
FunctionDeclarationImpl,
|
||||
InvalidSuperInitializerJudgment,
|
||||
LoadLibraryTearOff,
|
||||
NamedFunctionExpressionJudgment,
|
||||
NullAwareMethodInvocation,
|
||||
NullAwarePropertyGet,
|
||||
ReturnStatementImpl,
|
||||
ShadowInvalidFieldInitializer,
|
||||
ShadowInvalidInitializer,
|
||||
ShadowLargeIntLiteral,
|
||||
VariableDeclarationImpl,
|
||||
VariableGetImpl;
|
|
@ -1,53 +0,0 @@
|
|||
// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
|
||||
// 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.
|
||||
|
||||
library fasta.kernel_builder;
|
||||
|
||||
import 'package:kernel/ast.dart'
|
||||
show
|
||||
Combinator,
|
||||
Constructor,
|
||||
Initializer,
|
||||
Procedure,
|
||||
RedirectingInitializer;
|
||||
|
||||
import '../combinator.dart' as fasta;
|
||||
|
||||
export 'class_hierarchy_builder.dart'
|
||||
show ClassHierarchyBuilder, ClassMember, DelayedCheck;
|
||||
|
||||
export 'implicit_field_type.dart' show ImplicitFieldType;
|
||||
|
||||
export 'kernel_variable_builder.dart' show VariableBuilderImpl;
|
||||
|
||||
export 'load_library_builder.dart' show LoadLibraryBuilder;
|
||||
|
||||
int compareProcedures(Procedure a, Procedure b) {
|
||||
int i = "${a.fileUri}".compareTo("${b.fileUri}");
|
||||
if (i != 0) return i;
|
||||
return a.fileOffset.compareTo(b.fileOffset);
|
||||
}
|
||||
|
||||
bool isRedirectingGenerativeConstructorImplementation(Constructor constructor) {
|
||||
List<Initializer> initializers = constructor.initializers;
|
||||
return initializers.length == 1 &&
|
||||
initializers.single is RedirectingInitializer;
|
||||
}
|
||||
|
||||
List<Combinator>? toKernelCombinators(
|
||||
List<fasta.Combinator>? fastaCombinators) {
|
||||
if (fastaCombinators == null) {
|
||||
// Note: it's safe to return null here as Kernel's LibraryDependency will
|
||||
// convert null to an empty list.
|
||||
return null;
|
||||
}
|
||||
|
||||
return new List<Combinator>.generate(fastaCombinators.length, (int i) {
|
||||
fasta.Combinator combinator = fastaCombinators[i];
|
||||
List<String> nameList = combinator.names.toList();
|
||||
return combinator.isShow
|
||||
? new Combinator.show(nameList)
|
||||
: new Combinator.hide(nameList);
|
||||
}, growable: true);
|
||||
}
|
|
@ -37,8 +37,6 @@ import '../fasta_codes.dart'
|
|||
|
||||
import '../kernel/utils.dart';
|
||||
|
||||
export 'package:kernel/ast.dart' show Variance;
|
||||
|
||||
/// Initial value for "variance" that is to be computed by the compiler.
|
||||
const int pendingVariance = -1;
|
||||
|
||||
|
|
|
@ -10,25 +10,10 @@ import 'package:_fe_analyzer_shared/src/scanner/scanner.dart' show Token;
|
|||
import 'package:_fe_analyzer_shared/src/scanner/token.dart'
|
||||
show SyntheticToken, TokenType;
|
||||
|
||||
import 'package:kernel/clone.dart' show CloneVisitorWithMembers;
|
||||
|
||||
import 'package:kernel/ast.dart'
|
||||
show
|
||||
Class,
|
||||
Component,
|
||||
DartType,
|
||||
Library,
|
||||
Procedure,
|
||||
Supertype,
|
||||
TreeNode,
|
||||
TypeParameter,
|
||||
TypeParameterType,
|
||||
dummyDartType,
|
||||
dummyUri;
|
||||
|
||||
import 'package:kernel/binary/ast_to_binary.dart' show BinaryPrinter;
|
||||
|
||||
import 'package:kernel/text/ast_to_text.dart' show Printer;
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/clone.dart';
|
||||
import 'package:kernel/binary/ast_to_binary.dart';
|
||||
import 'package:kernel/text/ast_to_text.dart';
|
||||
|
||||
import '../builder/fixed_type_builder.dart';
|
||||
import '../builder/formal_parameter_builder.dart';
|
||||
|
@ -42,6 +27,30 @@ import '../identifiers.dart';
|
|||
import '../source/source_library_builder.dart';
|
||||
import 'body_builder.dart';
|
||||
|
||||
void printNodeOn(Node? node, StringSink sink, {NameSystem? syntheticNames}) {
|
||||
if (node == null) {
|
||||
sink.write("null");
|
||||
} else {
|
||||
syntheticNames ??= new NameSystem();
|
||||
new Printer(sink, syntheticNames: syntheticNames).writeNode(node);
|
||||
}
|
||||
}
|
||||
|
||||
void printQualifiedNameOn(Member? member, StringSink sink) {
|
||||
if (member == null) {
|
||||
sink.write("null");
|
||||
} else {
|
||||
sink.write(member.enclosingLibrary.importUri);
|
||||
sink.write("::");
|
||||
Class? cls = member.enclosingClass;
|
||||
if (cls != null) {
|
||||
sink.write(cls.name);
|
||||
sink.write("::");
|
||||
}
|
||||
sink.write(member.name.text);
|
||||
}
|
||||
}
|
||||
|
||||
/// Print the given [component]. Do nothing if it is `null`. If the
|
||||
/// [libraryFilter] is provided, then only libraries that satisfy it are
|
||||
/// printed.
|
||||
|
@ -161,9 +170,39 @@ class ByteSink implements Sink<List<int>> {
|
|||
void close() {}
|
||||
}
|
||||
|
||||
int compareProcedures(Procedure a, Procedure b) {
|
||||
int i = "${a.fileUri}".compareTo("${b.fileUri}");
|
||||
if (i != 0) return i;
|
||||
return a.fileOffset.compareTo(b.fileOffset);
|
||||
}
|
||||
|
||||
bool isRedirectingGenerativeConstructorImplementation(Constructor constructor) {
|
||||
List<Initializer> initializers = constructor.initializers;
|
||||
return initializers.length == 1 &&
|
||||
initializers.single is RedirectingInitializer;
|
||||
}
|
||||
|
||||
List<Combinator>? toKernelCombinators(
|
||||
List<CombinatorBuilder>? fastaCombinators) {
|
||||
if (fastaCombinators == null) {
|
||||
// Note: it's safe to return null here as Kernel's LibraryDependency will
|
||||
// convert null to an empty list.
|
||||
return null;
|
||||
}
|
||||
|
||||
return new List<Combinator>.generate(fastaCombinators.length, (int i) {
|
||||
CombinatorBuilder combinator = fastaCombinators[i];
|
||||
List<String> nameList = combinator.names.toList();
|
||||
return combinator.isShow
|
||||
? new Combinator.show(nameList)
|
||||
: new Combinator.hide(nameList);
|
||||
}, growable: true);
|
||||
}
|
||||
|
||||
final Token dummyToken = new SyntheticToken(TokenType.AT, -1);
|
||||
final Identifier dummyIdentifier = new Identifier(dummyToken);
|
||||
final Combinator dummyCombinator = new Combinator(false, {}, -1, dummyUri);
|
||||
final CombinatorBuilder dummyCombinator =
|
||||
new CombinatorBuilder(false, {}, -1, dummyUri);
|
||||
final MetadataBuilder dummyMetadataBuilder = new MetadataBuilder(dummyToken);
|
||||
final TypeBuilder dummyTypeBuilder =
|
||||
new FixedTypeBuilder(dummyDartType, dummyUri, -1);
|
||||
|
|
|
@ -41,7 +41,7 @@ import '../builder/type_builder.dart';
|
|||
import '../builder/type_variable_builder.dart';
|
||||
import '../builder/unresolved_type.dart';
|
||||
|
||||
import '../combinator.dart' show Combinator;
|
||||
import '../combinator.dart' show CombinatorBuilder;
|
||||
|
||||
import '../configuration.dart' show Configuration;
|
||||
|
||||
|
@ -182,7 +182,7 @@ class OutlineBuilder extends StackListenerImpl {
|
|||
if (names is ParserRecovery) {
|
||||
push(names);
|
||||
} else {
|
||||
push(new Combinator.hide(names as Iterable<String>,
|
||||
push(new CombinatorBuilder.hide(names as Iterable<String>,
|
||||
hideKeyword.charOffset, libraryBuilder.fileUri));
|
||||
}
|
||||
}
|
||||
|
@ -194,7 +194,7 @@ class OutlineBuilder extends StackListenerImpl {
|
|||
if (names is ParserRecovery) {
|
||||
push(names);
|
||||
} else {
|
||||
push(new Combinator.show(names as Iterable<String>,
|
||||
push(new CombinatorBuilder.show(names as Iterable<String>,
|
||||
showKeyword.charOffset, libraryBuilder.fileUri));
|
||||
}
|
||||
}
|
||||
|
@ -202,7 +202,7 @@ class OutlineBuilder extends StackListenerImpl {
|
|||
@override
|
||||
void endCombinators(int count) {
|
||||
debugEvent("Combinators");
|
||||
push(const FixedNullableList<Combinator>()
|
||||
push(const FixedNullableList<CombinatorBuilder>()
|
||||
.popNonNullable(stack, count, dummyCombinator) ??
|
||||
NullValue.Combinators);
|
||||
}
|
||||
|
@ -210,7 +210,7 @@ class OutlineBuilder extends StackListenerImpl {
|
|||
@override
|
||||
void endExport(Token exportKeyword, Token semicolon) {
|
||||
debugEvent("Export");
|
||||
List<Combinator>? combinators = pop() as List<Combinator>?;
|
||||
List<CombinatorBuilder>? combinators = pop() as List<CombinatorBuilder>?;
|
||||
List<Configuration>? configurations = pop() as List<Configuration>?;
|
||||
int uriOffset = popCharOffset();
|
||||
String uri = pop() as String;
|
||||
|
@ -235,7 +235,7 @@ class OutlineBuilder extends StackListenerImpl {
|
|||
@override
|
||||
void endImport(Token importKeyword, Token? semicolon) {
|
||||
debugEvent("EndImport");
|
||||
List<Combinator>? combinators = pop() as List<Combinator>?;
|
||||
List<CombinatorBuilder>? combinators = pop() as List<CombinatorBuilder>?;
|
||||
bool isDeferred = pop() as bool;
|
||||
int prefixOffset = popCharOffset();
|
||||
Object? prefix = pop(NullValue.Prefix);
|
||||
|
|
|
@ -15,9 +15,6 @@ import '../scope.dart' show Scope;
|
|||
import 'stack_listener_impl.dart';
|
||||
import 'value_kinds.dart';
|
||||
|
||||
export 'package:_fe_analyzer_shared/src/parser/stack_listener.dart'
|
||||
show FixedNullableList, GrowableList, NullValue, ParserRecovery;
|
||||
|
||||
enum JumpTargetKind {
|
||||
Break,
|
||||
Continue,
|
||||
|
|
|
@ -37,11 +37,10 @@ import '../dill/dill_member_builder.dart';
|
|||
import '../fasta_codes.dart';
|
||||
|
||||
import '../kernel/combined_member_signature.dart';
|
||||
import '../kernel/kernel_builder.dart' show compareProcedures;
|
||||
import '../kernel/kernel_target.dart' show KernelTarget;
|
||||
import '../kernel/redirecting_factory_body.dart' show redirectingName;
|
||||
import '../kernel/type_algorithms.dart'
|
||||
show Variance, computeTypeVariableBuilderVariance;
|
||||
import '../kernel/type_algorithms.dart' show computeTypeVariableBuilderVariance;
|
||||
import '../kernel/utils.dart' show compareProcedures;
|
||||
|
||||
import '../names.dart' show equalsName, noSuchMethodName;
|
||||
|
||||
|
|
|
@ -67,7 +67,7 @@ import '../builder/type_variable_builder.dart';
|
|||
import '../builder/unresolved_type.dart';
|
||||
import '../builder/void_type_declaration_builder.dart';
|
||||
|
||||
import '../combinator.dart' show Combinator;
|
||||
import '../combinator.dart' show CombinatorBuilder;
|
||||
|
||||
import '../configuration.dart' show Configuration;
|
||||
|
||||
|
@ -82,16 +82,9 @@ import '../identifiers.dart' show QualifiedName, flattenName;
|
|||
import '../import.dart' show Import;
|
||||
|
||||
import '../kernel/class_hierarchy_builder.dart';
|
||||
|
||||
import '../kernel/implicit_field_type.dart';
|
||||
import '../kernel/internal_ast.dart';
|
||||
|
||||
import '../kernel/kernel_builder.dart'
|
||||
show
|
||||
ImplicitFieldType,
|
||||
LoadLibraryBuilder,
|
||||
compareProcedures,
|
||||
toKernelCombinators;
|
||||
|
||||
import '../kernel/load_library_builder.dart';
|
||||
import '../kernel/type_algorithms.dart'
|
||||
show
|
||||
NonSimplicityIssue,
|
||||
|
@ -102,6 +95,7 @@ import '../kernel/type_algorithms.dart'
|
|||
getNonSimplicityIssuesForDeclaration,
|
||||
getNonSimplicityIssuesForTypeVariables,
|
||||
pendingVariance;
|
||||
import '../kernel/utils.dart' show compareProcedures, toKernelCombinators;
|
||||
|
||||
import '../modifier.dart'
|
||||
show
|
||||
|
@ -652,7 +646,7 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
|
|||
List<MetadataBuilder>? metadata,
|
||||
String uri,
|
||||
List<Configuration>? configurations,
|
||||
List<Combinator>? combinators,
|
||||
List<CombinatorBuilder>? combinators,
|
||||
int charOffset,
|
||||
int uriOffset) {
|
||||
if (configurations != null) {
|
||||
|
@ -697,7 +691,7 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
|
|||
String uri,
|
||||
List<Configuration>? configurations,
|
||||
String? prefix,
|
||||
List<Combinator>? combinators,
|
||||
List<CombinatorBuilder>? combinators,
|
||||
bool deferred,
|
||||
int charOffset,
|
||||
int prefixCharOffset,
|
||||
|
|
|
@ -94,8 +94,7 @@ import '../export.dart' show Export;
|
|||
import '../fasta_codes.dart';
|
||||
|
||||
import '../kernel/body_builder.dart' show BodyBuilder;
|
||||
import '../kernel/kernel_builder.dart'
|
||||
show ClassHierarchyBuilder, ClassMember, DelayedCheck;
|
||||
import '../kernel/class_hierarchy_builder.dart';
|
||||
import '../kernel/kernel_helper.dart'
|
||||
show SynthesizedFunctionNode, TypeDependency;
|
||||
import '../kernel/kernel_target.dart' show KernelTarget;
|
||||
|
|
|
@ -17,9 +17,9 @@ import '../../base/instrumentation.dart' show Instrumentation;
|
|||
import '../builder/constructor_builder.dart';
|
||||
|
||||
import '../kernel/forest.dart';
|
||||
import '../kernel/implicit_field_type.dart';
|
||||
import '../kernel/internal_ast.dart';
|
||||
import '../kernel/kernel_builder.dart'
|
||||
show ClassHierarchyBuilder, ImplicitFieldType;
|
||||
import '../kernel/class_hierarchy_builder.dart' show ClassHierarchyBuilder;
|
||||
import '../kernel/kernel_helper.dart';
|
||||
|
||||
import '../source/source_library_builder.dart' show SourceLibraryBuilder;
|
||||
|
|
|
@ -7,8 +7,9 @@ library front_end.kernel_generator_impl;
|
|||
|
||||
import 'package:_fe_analyzer_shared/src/messages/severity.dart' show Severity;
|
||||
|
||||
import 'package:kernel/kernel.dart'
|
||||
show CanonicalName, Component, NonNullableByDefaultCompiledMode;
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/class_hierarchy.dart';
|
||||
import 'package:kernel/core_types.dart';
|
||||
|
||||
import 'base/nnbd_mode.dart';
|
||||
|
||||
|
@ -22,8 +23,6 @@ import 'fasta/dill/dill_target.dart' show DillTarget;
|
|||
|
||||
import 'fasta/fasta_codes.dart' show LocatedMessage;
|
||||
|
||||
import 'fasta/kernel/kernel_api.dart';
|
||||
|
||||
import 'fasta/kernel/kernel_target.dart' show KernelTarget;
|
||||
|
||||
import 'fasta/kernel/utils.dart' show printComponentText, serializeComponent;
|
||||
|
|
|
@ -6,12 +6,12 @@ import 'dart:io' show Directory, Platform;
|
|||
import 'package:_fe_analyzer_shared/src/testing/features.dart';
|
||||
import 'package:_fe_analyzer_shared/src/testing/id.dart';
|
||||
import 'package:_fe_analyzer_shared/src/testing/id_testing.dart';
|
||||
import 'package:front_end/src/fasta/kernel/kernel_api.dart';
|
||||
import 'package:front_end/src/testing/id_testing_helper.dart';
|
||||
import 'package:front_end/src/testing/id_testing_utils.dart';
|
||||
import 'package:front_end/src/fasta/kernel/class_hierarchy_builder.dart';
|
||||
import 'package:front_end/src/testing/id_extractor.dart';
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/core_types.dart';
|
||||
|
||||
void main(List<String> args) async {
|
||||
Directory dataDir = new Directory.fromUri(Platform.script.resolve('data'));
|
||||
|
|
|
@ -25,15 +25,16 @@ import 'package:front_end/src/fasta/incremental_compiler.dart'
|
|||
show IncrementalCompiler;
|
||||
import 'package:front_end/src/fasta/kernel/constant_evaluator.dart' as constants
|
||||
show EvaluationMode, transformLibraries, ErrorReporter;
|
||||
import 'package:front_end/src/fasta/kernel/kernel_api.dart';
|
||||
|
||||
import 'package:front_end/src/fasta/kernel/kernel_target.dart';
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/binary/ast_from_binary.dart';
|
||||
import 'package:kernel/core_types.dart';
|
||||
import 'package:kernel/class_hierarchy.dart';
|
||||
import 'package:kernel/target/changed_structure_notifier.dart';
|
||||
|
||||
import 'package:kernel/target/targets.dart'
|
||||
show ConstantsBackend, DiagnosticReporter, Target, TargetFlags;
|
||||
import 'package:kernel/type_environment.dart';
|
||||
|
||||
import "package:vm/target/flutter.dart" show FlutterTarget;
|
||||
|
||||
|
|
|
@ -46,8 +46,7 @@ import 'package:front_end/src/fasta/compiler_context.dart' show CompilerContext;
|
|||
|
||||
import 'package:front_end/src/fasta/dill/dill_target.dart' show DillTarget;
|
||||
|
||||
import 'package:front_end/src/fasta/kernel/kernel_builder.dart'
|
||||
show LoadLibraryBuilder;
|
||||
import 'package:front_end/src/fasta/kernel/load_library_builder.dart';
|
||||
|
||||
import 'package:front_end/src/fasta/kernel/kernel_target.dart'
|
||||
show KernelTarget;
|
||||
|
|
|
@ -67,7 +67,7 @@ import 'package:front_end/src/fasta/incremental_compiler.dart'
|
|||
import 'package:front_end/src/fasta/kernel/class_hierarchy_builder.dart'
|
||||
show ClassHierarchyNode;
|
||||
|
||||
import 'package:front_end/src/fasta/kernel/kernel_builder.dart'
|
||||
import 'package:front_end/src/fasta/kernel/class_hierarchy_builder.dart'
|
||||
show ClassHierarchyBuilder;
|
||||
|
||||
import 'package:front_end/src/fasta/kernel/kernel_target.dart'
|
||||
|
|
|
@ -31,7 +31,7 @@ import "package:front_end/src/fasta/dill/dill_loader.dart" show DillLoader;
|
|||
|
||||
import "package:front_end/src/fasta/dill/dill_target.dart" show DillTarget;
|
||||
|
||||
import "package:front_end/src/fasta/kernel/kernel_builder.dart"
|
||||
import "package:front_end/src/fasta/kernel/class_hierarchy_builder.dart"
|
||||
show ClassHierarchyBuilder;
|
||||
|
||||
import "package:front_end/src/fasta/ticker.dart" show Ticker;
|
||||
|
|
|
@ -22,7 +22,7 @@ import "package:front_end/src/fasta/dill/dill_loader.dart" show DillLoader;
|
|||
|
||||
import "package:front_end/src/fasta/dill/dill_target.dart" show DillTarget;
|
||||
|
||||
import "package:front_end/src/fasta/kernel/kernel_builder.dart"
|
||||
import "package:front_end/src/fasta/kernel/class_hierarchy_builder.dart"
|
||||
show ClassHierarchyBuilder;
|
||||
|
||||
import "package:front_end/src/fasta/ticker.dart" show Ticker;
|
||||
|
|
|
@ -31,7 +31,7 @@ import "package:front_end/src/fasta/dill/dill_loader.dart" show DillLoader;
|
|||
|
||||
import "package:front_end/src/fasta/dill/dill_target.dart" show DillTarget;
|
||||
|
||||
import "package:front_end/src/fasta/kernel/kernel_builder.dart"
|
||||
import "package:front_end/src/fasta/kernel/class_hierarchy_builder.dart"
|
||||
show ClassHierarchyBuilder;
|
||||
|
||||
import "package:front_end/src/fasta/ticker.dart" show Ticker;
|
||||
|
|
|
@ -36,7 +36,7 @@ import "package:front_end/src/fasta/dill/dill_loader.dart" show DillLoader;
|
|||
|
||||
import "package:front_end/src/fasta/dill/dill_target.dart" show DillTarget;
|
||||
|
||||
import "package:front_end/src/fasta/kernel/kernel_builder.dart"
|
||||
import "package:front_end/src/fasta/kernel/class_hierarchy_builder.dart"
|
||||
show ClassHierarchyBuilder;
|
||||
|
||||
import "package:front_end/src/fasta/ticker.dart" show Ticker;
|
||||
|
|
|
@ -10,11 +10,13 @@ import 'package:_fe_analyzer_shared/src/testing/id.dart';
|
|||
import 'package:_fe_analyzer_shared/src/testing/id_testing.dart';
|
||||
import 'package:front_end/src/api_prototype/experimental_flags.dart';
|
||||
import 'package:front_end/src/fasta/kernel/class_hierarchy_builder.dart';
|
||||
import 'package:front_end/src/fasta/kernel/kernel_api.dart';
|
||||
import 'package:front_end/src/testing/id_extractor.dart';
|
||||
import 'package:front_end/src/testing/id_testing_helper.dart';
|
||||
import 'package:front_end/src/testing/id_testing_utils.dart';
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/class_hierarchy.dart';
|
||||
import 'package:kernel/core_types.dart';
|
||||
import 'package:kernel/type_algebra.dart';
|
||||
|
||||
const String cfeFromBuilderMarker = 'cfe:builder';
|
||||
|
||||
|
|
|
@ -18,21 +18,7 @@ front_end/lib/src/api_prototype/terminal_color_support/Exports: Fail
|
|||
front_end/lib/src/fasta/fasta_codes/Exports: Fail
|
||||
front_end/lib/src/fasta/incremental_compiler/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/kernel/body_builder/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/kernel/constant_evaluator/ExplicitType: Pass
|
||||
front_end/lib/src/fasta/kernel/kernel_api/Exports: Fail
|
||||
front_end/lib/src/fasta/kernel/kernel_ast_api/Exports: Fail
|
||||
front_end/lib/src/fasta/kernel/kernel_builder/Exports: Fail
|
||||
front_end/lib/src/fasta/kernel/type_algorithms/Exports: Fail
|
||||
front_end/lib/src/fasta/messages/Exports: Fail
|
||||
front_end/lib/src/fasta/parser/Exports: Fail
|
||||
front_end/lib/src/fasta/parser/parser/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/scanner/abstract_scanner/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/scanner/Exports: Fail
|
||||
front_end/lib/src/fasta/scanner/recover/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/scanner/string_scanner/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/scanner/token/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/scanner/utf8_bytes_scanner/ImportsTwice: Fail
|
||||
front_end/lib/src/fasta/source/scope_listener/Exports: Fail
|
||||
front_end/lib/src/fasta/source/value_kinds/ImportsTwice: Fail
|
||||
front_end/lib/src/testing/id_testing_helper/Exports: Fail
|
||||
kernel/lib/ast/Exports: Fail
|
||||
|
|
|
@ -5,11 +5,13 @@
|
|||
import 'package:front_end/src/api_prototype/front_end.dart';
|
||||
import 'package:front_end/src/api_unstable/ddc.dart';
|
||||
import 'package:front_end/src/compute_platform_binaries_location.dart';
|
||||
import 'package:front_end/src/fasta/kernel/kernel_api.dart';
|
||||
import 'package:front_end/src/kernel_generator_impl.dart';
|
||||
import 'package:kernel/ast.dart';
|
||||
import 'package:kernel/class_hierarchy.dart';
|
||||
import 'package:kernel/core_types.dart';
|
||||
import 'package:kernel/src/printer.dart';
|
||||
import 'package:kernel/target/targets.dart';
|
||||
import 'package:kernel/type_algebra.dart';
|
||||
import 'package:kernel/type_environment.dart';
|
||||
import 'package:vm/target/vm.dart';
|
||||
|
||||
|
|
|
@ -834,16 +834,16 @@ class DocTestIncrementalCompiler extends IncrementalCompiler {
|
|||
in libraryBuilder.library.dependencies) {
|
||||
if (!dependency.isImport) continue;
|
||||
|
||||
List<Combinator>? combinators;
|
||||
List<CombinatorBuilder>? combinators;
|
||||
|
||||
for (kernel.Combinator combinator in dependency.combinators) {
|
||||
combinators ??= <Combinator>[];
|
||||
combinators ??= <CombinatorBuilder>[];
|
||||
|
||||
combinators.add(combinator.isShow
|
||||
? new Combinator.show(combinator.names, combinator.fileOffset,
|
||||
libraryBuilder.fileUri)
|
||||
: new Combinator.hide(combinator.names, combinator.fileOffset,
|
||||
libraryBuilder.fileUri));
|
||||
? new CombinatorBuilder.show(combinator.names,
|
||||
combinator.fileOffset, libraryBuilder.fileUri)
|
||||
: new CombinatorBuilder.hide(combinator.names,
|
||||
combinator.fileOffset, libraryBuilder.fileUri));
|
||||
}
|
||||
|
||||
dartDocTestLibrary.addImport(
|
||||
|
|
Loading…
Reference in a new issue