| Index: pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart b/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| index fb6a5a4ef7f37dcdca362dcacc87031029d4a77b..a6a7025b81494406dca3730d700699a02226f3fd 100644
|
| --- a/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| +++ b/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| @@ -4,55 +4,58 @@
|
|
|
| library fasta.kernel_class_builder;
|
|
|
| -import 'package:kernel/ast.dart' show
|
| - Class,
|
| - DartType,
|
| - Expression,
|
| - ExpressionStatement,
|
| - Field,
|
| - InterfaceType,
|
| - ListLiteral,
|
| - Member,
|
| - Name,
|
| - StaticGet,
|
| - StringLiteral,
|
| - Supertype,
|
| - Throw;
|
| +import 'package:kernel/ast.dart'
|
| + show
|
| + Class,
|
| + DartType,
|
| + Expression,
|
| + ExpressionStatement,
|
| + Field,
|
| + InterfaceType,
|
| + ListLiteral,
|
| + Member,
|
| + Name,
|
| + StaticGet,
|
| + StringLiteral,
|
| + Supertype,
|
| + Throw;
|
|
|
| -import '../errors.dart' show
|
| - internalError;
|
| +import '../errors.dart' show internalError;
|
|
|
| -import '../messages.dart' show
|
| - warning;
|
| +import '../messages.dart' show warning;
|
|
|
| -import 'kernel_builder.dart' show
|
| - Builder,
|
| - ClassBuilder,
|
| - ConstructorReferenceBuilder,
|
| - KernelLibraryBuilder,
|
| - KernelProcedureBuilder,
|
| - KernelTypeBuilder,
|
| - LibraryBuilder,
|
| - MetadataBuilder,
|
| - ProcedureBuilder,
|
| - TypeVariableBuilder,
|
| - computeDefaultTypeArguments;
|
| +import 'kernel_builder.dart'
|
| + show
|
| + Builder,
|
| + ClassBuilder,
|
| + ConstructorReferenceBuilder,
|
| + KernelLibraryBuilder,
|
| + KernelProcedureBuilder,
|
| + KernelTypeBuilder,
|
| + LibraryBuilder,
|
| + MetadataBuilder,
|
| + ProcedureBuilder,
|
| + TypeVariableBuilder,
|
| + computeDefaultTypeArguments;
|
|
|
| -import '../dill/dill_member_builder.dart' show
|
| - DillMemberBuilder;
|
| +import '../dill/dill_member_builder.dart' show DillMemberBuilder;
|
|
|
| -import 'redirecting_factory_body.dart' show
|
| - RedirectingFactoryBody;
|
| +import 'redirecting_factory_body.dart' show RedirectingFactoryBody;
|
|
|
| abstract class KernelClassBuilder
|
| extends ClassBuilder<KernelTypeBuilder, InterfaceType> {
|
| KernelClassBuilder(
|
| - List<MetadataBuilder> metadata, int modifiers,
|
| - String name, List<TypeVariableBuilder> typeVariables,
|
| - KernelTypeBuilder supertype, List<KernelTypeBuilder> interfaces,
|
| - Map<String, Builder> members, LibraryBuilder parent, int charOffset)
|
| + List<MetadataBuilder> metadata,
|
| + int modifiers,
|
| + String name,
|
| + List<TypeVariableBuilder> typeVariables,
|
| + KernelTypeBuilder supertype,
|
| + List<KernelTypeBuilder> interfaces,
|
| + Map<String, Builder> members,
|
| + LibraryBuilder parent,
|
| + int charOffset)
|
| : super(metadata, modifiers, name, typeVariables, supertype, interfaces,
|
| - members, parent, charOffset);
|
| + members, parent, charOffset);
|
|
|
| Class get cls;
|
|
|
| @@ -62,7 +65,8 @@ abstract class KernelClassBuilder
|
| InterfaceType buildTypesWithBuiltArguments(List<DartType> arguments) {
|
| return arguments == null
|
| ? cls.rawType
|
| - : new InterfaceType(cls,
|
| + : new InterfaceType(
|
| + cls,
|
| // TODO(ahe): Not sure what to do if `arguments.length !=
|
| // cls.typeParameters.length`.
|
| computeDefaultTypeArguments(cls.typeParameters, arguments));
|
| @@ -136,8 +140,8 @@ abstract class KernelClassBuilder
|
| return count;
|
| }
|
|
|
| - void addRedirectingConstructor(KernelProcedureBuilder constructor,
|
| - KernelLibraryBuilder library) {
|
| + void addRedirectingConstructor(
|
| + KernelProcedureBuilder constructor, KernelLibraryBuilder library) {
|
| // Add a new synthetic field to this class for representing factory
|
| // constructors. This is used to support resolving such constructors in
|
| // source code.
|
| @@ -154,15 +158,16 @@ abstract class KernelClassBuilder
|
| members.putIfAbsent("_redirecting#", () {
|
| ListLiteral literal = new ListLiteral(<Expression>[]);
|
| Name name = new Name("_redirecting#", library.library);
|
| - Field field = new Field(name, isStatic: true,
|
| - initializer: literal, fileUri: cls.fileUri)
|
| - ..fileOffset = cls.fileOffset;
|
| + Field field = new Field(name,
|
| + isStatic: true,
|
| + initializer: literal,
|
| + fileUri: cls.fileUri)..fileOffset = cls.fileOffset;
|
| cls.addMember(field);
|
| return new DillMemberBuilder(field, this);
|
| });
|
| Field field = constructorsField.target;
|
| ListLiteral literal = field.initializer;
|
| - literal.expressions.add(
|
| - new StaticGet(constructor.target)..parent = literal);
|
| + literal.expressions
|
| + .add(new StaticGet(constructor.target)..parent = literal);
|
| }
|
| }
|
|
|