| Index: pkg/front_end/lib/src/fasta/kernel/kernel_interface_type_builder.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/kernel/kernel_interface_type_builder.dart b/pkg/front_end/lib/src/fasta/kernel/kernel_interface_type_builder.dart
|
| deleted file mode 100644
|
| index ffbe6cb2cfbce3a1d75e545a2503c944cb7c11f6..0000000000000000000000000000000000000000
|
| --- a/pkg/front_end/lib/src/fasta/kernel/kernel_interface_type_builder.dart
|
| +++ /dev/null
|
| @@ -1,94 +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_interface_type_builder;
|
| -
|
| -import 'package:kernel/ast.dart' show
|
| - DartType,
|
| - DynamicType,
|
| - Supertype,
|
| - VoidType;
|
| -
|
| -import '../errors.dart' show
|
| - inputError;
|
| -
|
| -import 'kernel_builder.dart' show
|
| - InterfaceTypeBuilder,
|
| - KernelClassBuilder,
|
| - KernelInvalidTypeBuilder,
|
| - KernelTypeBuilder,
|
| - TypeBuilder,
|
| - TypeDeclarationBuilder,
|
| - TypeVariableBuilder;
|
| -
|
| -// TODO(ahe): This isn't really an interface type. Find better name, for
|
| -// example, KernelNamedTypeBuilder.
|
| -class KernelInterfaceTypeBuilder extends InterfaceTypeBuilder<KernelTypeBuilder>
|
| - implements KernelTypeBuilder {
|
| - TypeDeclarationBuilder<KernelTypeBuilder, DartType> builder;
|
| -
|
| - KernelInterfaceTypeBuilder(String name, List<KernelTypeBuilder> arguments)
|
| - : super(name, arguments);
|
| -
|
| - KernelInvalidTypeBuilder buildInvalidType(String name) {
|
| - // TODO(ahe): Report error somewhere.
|
| - print("Type not found: $name");
|
| - return new KernelInvalidTypeBuilder(name, null);
|
| - }
|
| -
|
| - DartType handleMissingType() {
|
| - // TODO(ahe): Fix this.
|
| - print("No type for: $name");
|
| - return const DynamicType();
|
| - }
|
| -
|
| - Supertype handleMissingSuperType() {
|
| - // TODO(ahe): Fix this.
|
| - return inputError(null, null, "No type for: $name");
|
| - }
|
| -
|
| - DartType build() {
|
| - if (name == "void") return const VoidType();
|
| - if (name == "dynamic") return const DynamicType();
|
| - if (builder == null) return handleMissingType();
|
| - return builder.buildType(arguments);
|
| - }
|
| -
|
| - Supertype buildSupertype() {
|
| - if (name == "void") return null;
|
| - if (name == "dynamic") return null;
|
| - if (builder == null) return handleMissingSuperType();
|
| - if (builder is KernelClassBuilder) {
|
| - KernelClassBuilder builder = this.builder;
|
| - return builder.buildSupertype(arguments);
|
| - } else {
|
| - return handleMissingSuperType();
|
| - }
|
| - }
|
| -
|
| - TypeBuilder subst(Map<TypeVariableBuilder, TypeBuilder> substitution) {
|
| - assert(builder != null);
|
| - TypeBuilder result = substitution[builder];
|
| - if (result != null) {
|
| - assert(builder is TypeVariableBuilder);
|
| - return result;
|
| - } else if (arguments != null) {
|
| - List<KernelTypeBuilder> arguments;
|
| - int i = 0;
|
| - for (KernelTypeBuilder argument in this.arguments) {
|
| - KernelTypeBuilder type = argument.subst(substitution);
|
| - if (type != argument) {
|
| - arguments ??= this.arguments.toList();
|
| - arguments[i] = type;
|
| - }
|
| - i++;
|
| - }
|
| - if (arguments != null) {
|
| - return new KernelInterfaceTypeBuilder(name, arguments)
|
| - ..builder = builder;
|
| - }
|
| - }
|
| - return this;
|
| - }
|
| -}
|
|
|