| // Copyright (c) 2022, 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. |
| |
| import 'package:kernel/ast.dart'; |
| |
| import '../source/source_library_builder.dart'; |
| import 'library_builder.dart'; |
| import 'named_type_builder.dart'; |
| import 'nullability_builder.dart'; |
| import 'type_builder.dart'; |
| |
| class OmittedTypeBuilder extends TypeBuilder { |
| const OmittedTypeBuilder(); |
| |
| @override |
| DartType build(LibraryBuilder library, TypeUse typeUse) { |
| throw new UnsupportedError('$runtimeType.build'); |
| } |
| |
| @override |
| DartType buildAliased(LibraryBuilder library, TypeUse typeUse) { |
| throw new UnsupportedError('$runtimeType.buildAliased'); |
| } |
| |
| @override |
| Supertype? buildMixedInType(LibraryBuilder library) { |
| throw new UnsupportedError('$runtimeType.buildMixedInType'); |
| } |
| |
| @override |
| Supertype? buildSupertype(LibraryBuilder library) { |
| throw new UnsupportedError('$runtimeType.buildSupertype'); |
| } |
| |
| @override |
| int? get charOffset => null; |
| |
| @override |
| TypeBuilder clone( |
| List<NamedTypeBuilder> newTypes, |
| SourceLibraryBuilder contextLibrary, |
| TypeParameterScopeBuilder contextDeclaration) { |
| return this; |
| } |
| |
| @override |
| String get debugName => 'OmittedTypeBuilder'; |
| |
| @override |
| Uri? get fileUri => null; |
| |
| @override |
| bool get isVoidType => false; |
| |
| @override |
| Object? get name => null; |
| |
| @override |
| NullabilityBuilder get nullabilityBuilder => |
| const NullabilityBuilder.omitted(); |
| |
| @override |
| StringBuffer printOn(StringBuffer buffer) => buffer; |
| |
| @override |
| TypeBuilder withNullabilityBuilder(NullabilityBuilder nullabilityBuilder) { |
| return this; |
| } |
| } |