| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library fasta.source_library_builder; | 5 library fasta.source_library_builder; |
| 6 | 6 |
| 7 import 'package:kernel/ast.dart' show ProcedureKind, Reference; | 7 import 'package:kernel/ast.dart' show ProcedureKind, Reference; |
| 8 | 8 |
| 9 import '../../base/resolve_relative_uri.dart' show resolveRelativeUri; | 9 import '../../base/resolve_relative_uri.dart' show resolveRelativeUri; |
| 10 | 10 |
| 11 import '../../scanner/token.dart' show Token; | 11 import '../../scanner/token.dart' show Token; |
| 12 | 12 |
| 13 import '../builder/builder.dart' | 13 import '../builder/builder.dart' |
| 14 show | 14 show |
| 15 Builder, | 15 Builder, |
| 16 BuiltinTypeBuilder, |
| 16 ClassBuilder, | 17 ClassBuilder, |
| 17 ConstructorReferenceBuilder, | 18 ConstructorReferenceBuilder, |
| 18 FormalParameterBuilder, | 19 FormalParameterBuilder, |
| 19 FunctionTypeBuilder, | 20 FunctionTypeBuilder, |
| 20 LibraryBuilder, | 21 LibraryBuilder, |
| 21 MemberBuilder, | 22 MemberBuilder, |
| 22 MetadataBuilder, | 23 MetadataBuilder, |
| 23 NamedTypeBuilder, | 24 NamedTypeBuilder, |
| 24 PrefixBuilder, | 25 PrefixBuilder, |
| 25 ProcedureBuilder, | 26 ProcedureBuilder, |
| (...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 515 } | 516 } |
| 516 if (!explicitCoreImport) { | 517 if (!explicitCoreImport) { |
| 517 loader.coreLibrary.exportScope.forEach((String name, Builder member) { | 518 loader.coreLibrary.exportScope.forEach((String name, Builder member) { |
| 518 addToScope(name, member, -1, true); | 519 addToScope(name, member, -1, true); |
| 519 }); | 520 }); |
| 520 } | 521 } |
| 521 exportScope.forEach((String name, Builder member) { | 522 exportScope.forEach((String name, Builder member) { |
| 522 if (member.parent != this) { | 523 if (member.parent != this) { |
| 523 additionalExports ??= <Reference>[]; | 524 additionalExports ??= <Reference>[]; |
| 524 Builder parent = member.parent; | 525 Builder parent = member.parent; |
| 525 if (parent is LibraryBuilder) { | 526 if (parent is LibraryBuilder && member is! BuiltinTypeBuilder) { |
| 526 additionalExports.add(member.target.reference); | 527 additionalExports.add(member.target.reference); |
| 527 } | 528 } |
| 528 } | 529 } |
| 529 }); | 530 }); |
| 530 } | 531 } |
| 531 | 532 |
| 532 @override | 533 @override |
| 533 void addToScope(String name, Builder member, int charOffset, bool isImport) { | 534 void addToScope(String name, Builder member, int charOffset, bool isImport) { |
| 534 Map<String, Builder> map = | 535 Map<String, Builder> map = |
| 535 member.isSetter ? importScope.setters : importScope.local; | 536 member.isSetter ? importScope.setters : importScope.local; |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 675 /// synthesize type variables on the factory matching the class'. | 676 /// synthesize type variables on the factory matching the class'. |
| 676 void addFactoryDeclaration( | 677 void addFactoryDeclaration( |
| 677 ProcedureBuilder procedure, DeclarationBuilder<T> factoryDeclaration) { | 678 ProcedureBuilder procedure, DeclarationBuilder<T> factoryDeclaration) { |
| 678 factoryDeclarations[procedure] = factoryDeclaration; | 679 factoryDeclarations[procedure] = factoryDeclaration; |
| 679 } | 680 } |
| 680 | 681 |
| 681 Scope toScope(Scope parent) { | 682 Scope toScope(Scope parent) { |
| 682 return new Scope(members, setters, parent, name, isModifiable: false); | 683 return new Scope(members, setters, parent, name, isModifiable: false); |
| 683 } | 684 } |
| 684 } | 685 } |
| OLD | NEW |