Skip to content

Commit 753ec34

Browse files
johnniwintherCommit Queue
authored andcommitted
[cfe] Create SourceConstructorBuilder from ConstructorDeclaration
This is a step toward supporting synthetic declaration to be created together with fragment-based declarations. A ConstructorReferences object is added to split the references for constructors and their tear-off from the creation of the AST nodes, enabling moving the creation of AST nodes for constructors to buildOutlineNodes. Change-Id: I0af9a6a51107092026c2dfd2031093f74c02e101 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/435122 Reviewed-by: Chloe Stefantsova <[email protected]> Commit-Queue: Johnni Winther <[email protected]>
1 parent b2c7d08 commit 753ec34

19 files changed

+579
-627
lines changed

pkg/front_end/lib/src/builder/library_builder.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import '../base/problems.dart' show internalProblem;
2525
import '../base/scope.dart';
2626
import '../fragment/fragment.dart';
2727
import '../kernel/body_builder_context.dart';
28+
import '../source/name_scheme.dart';
2829
import '../source/offset_map.dart';
2930
import '../source/outline_builder.dart';
3031
import '../source/source_class_builder.dart';
@@ -336,6 +337,8 @@ abstract class LibraryBuilder implements Builder, ProblemReporting {
336337
/// Returns the [Library] built by this builder.
337338
Library get library;
338339

340+
LibraryName get libraryName;
341+
339342
@override
340343
Uri get fileUri;
341344

pkg/front_end/lib/src/dill/dill_library_builder.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import '../codes/cfe_codes.dart'
2424
show LocatedMessage, Message, Severity, noLength, templateUnspecified;
2525
import '../kernel/constructor_tearoff_lowering.dart';
2626
import '../kernel/utils.dart';
27+
import '../source/name_scheme.dart';
2728
import 'dill_class_builder.dart' show DillClassBuilder;
2829
import 'dill_extension_builder.dart';
2930
import 'dill_extension_type_declaration_builder.dart';
@@ -104,6 +105,9 @@ class DillLibraryBuilder extends LibraryBuilderImpl {
104105
@override
105106
final Library library;
106107

108+
@override
109+
late final LibraryName libraryName = new LibraryName(library.reference);
110+
107111
@override
108112
DillLoader loader;
109113

pkg/front_end/lib/src/dill/dill_member_builder.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,6 @@ class DillConstructorBuilder extends DillMemberBuilder
336336
Constructor get invokeTarget => constructor;
337337

338338
@override
339-
// Coverage-ignore(suite): Not run.
340339
Reference get invokeTargetReference => constructor.reference;
341340

342341
@override

0 commit comments

Comments
 (0)