Skip to content

Commit db6f707

Browse files
johnniwintherCommit Queue
authored andcommitted
[cfe] Remove ClassDeclarationBuilder
ClassDeclarationBuilder is replaced by SourceDeclarationBuilder which is moved to its own library. Change-Id: I9b9e641e6f8538d0611db1b994b7e0574f189af2 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/438121 Reviewed-by: Chloe Stefantsova <[email protected]> Commit-Queue: Johnni Winther <[email protected]>
1 parent 4916ddb commit db6f707

10 files changed

+35
-44
lines changed

pkg/front_end/lib/src/kernel/kernel_target.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,10 @@ import '../builder/property_builder.dart';
5858
import '../builder/type_builder.dart';
5959
import '../dill/dill_target.dart' show DillTarget;
6060
import '../fragment/constructor/declaration.dart';
61-
import '../source/class_declaration.dart';
6261
import '../source/name_scheme.dart';
6362
import '../source/source_class_builder.dart' show SourceClassBuilder;
6463
import '../source/source_constructor_builder.dart';
64+
import '../source/source_declaration_builder.dart';
6565
import '../source/source_extension_type_declaration_builder.dart';
6666
import '../source/source_library_builder.dart' show SourceLibraryBuilder;
6767
import '../source/source_loader.dart'
@@ -1360,7 +1360,7 @@ class KernelTarget {
13601360
_finishConstructors(extensionTypeDeclaration);
13611361
}
13621362

1363-
void _finishConstructors(ClassDeclarationBuilder classDeclaration) {
1363+
void _finishConstructors(SourceDeclarationBuilder classDeclaration) {
13641364
SourceLibraryBuilder libraryBuilder = classDeclaration.libraryBuilder;
13651365

13661366
/// Quotes below are from [Dart Programming Language Specification, 4th

pkg/front_end/lib/src/source/class_declaration.dart

Lines changed: 0 additions & 20 deletions
This file was deleted.

pkg/front_end/lib/src/source/source_builder_mixins.dart

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,12 @@ import '../builder/factory_builder.dart';
1717
import '../builder/library_builder.dart';
1818
import '../builder/type_builder.dart';
1919
import '../kernel/type_algorithms.dart';
20+
import 'source_declaration_builder.dart';
2021
import 'source_library_builder.dart';
2122
import 'source_loader.dart';
2223
import 'source_member_builder.dart';
2324
import 'source_type_parameter_builder.dart';
2425

25-
abstract class SourceDeclarationBuilder implements IDeclarationBuilder {
26-
void buildScopes(LibraryBuilder coreLibrary);
27-
28-
int computeDefaultTypes(ComputeDefaultTypeContext context);
29-
}
30-
3126
mixin SourceDeclarationBuilderMixin
3227
implements DeclarationBuilderMixin, SourceDeclarationBuilder {
3328
@override

pkg/front_end/lib/src/source/source_class_builder.dart

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,11 @@ import '../kernel/kernel_helper.dart';
4848
import '../kernel/type_algorithms.dart';
4949
import '../kernel/utils.dart' show compareProcedures;
5050
import 'builder_factory.dart';
51-
import 'class_declaration.dart';
5251
import 'name_scheme.dart';
5352
import 'name_space_builder.dart';
5453
import 'nominal_parameter_name_space.dart';
55-
import 'source_builder_mixins.dart';
5654
import 'source_constructor_builder.dart';
55+
import 'source_declaration_builder.dart';
5756
import 'source_factory_builder.dart';
5857
import 'source_library_builder.dart';
5958
import 'source_loader.dart';
@@ -94,10 +93,7 @@ Class initializeClass(
9493
}
9594

9695
class SourceClassBuilder extends ClassBuilderImpl
97-
implements
98-
Comparable<SourceClassBuilder>,
99-
ClassDeclarationBuilder,
100-
SourceDeclarationBuilder {
96+
implements Comparable<SourceClassBuilder>, SourceDeclarationBuilder {
10197
@override
10298
final SourceLibraryBuilder libraryBuilder;
10399

pkg/front_end/lib/src/source/source_compilation_unit.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ import 'name_space_builder.dart';
3939
import 'native_method_registry.dart';
4040
import 'offset_map.dart';
4141
import 'outline_builder.dart';
42-
import 'source_builder_mixins.dart';
42+
import 'source_declaration_builder.dart';
4343
import 'source_library_builder.dart';
4444
import 'source_loader.dart' show SourceLoader;
4545
import 'source_member_builder.dart';
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Copyright (c) 2025, the Dart project authors. Please see the AUTHORS file
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.
4+
5+
import '../builder/declaration_builders.dart';
6+
import '../builder/library_builder.dart';
7+
import '../kernel/type_algorithms.dart';
8+
import 'source_library_builder.dart';
9+
10+
abstract class SourceDeclarationBuilder implements IDeclarationBuilder {
11+
void buildScopes(LibraryBuilder coreLibrary);
12+
13+
int computeDefaultTypes(ComputeDefaultTypeContext context);
14+
15+
int resolveConstructors(SourceLibraryBuilder library);
16+
17+
@override
18+
SourceLibraryBuilder get libraryBuilder;
19+
}

pkg/front_end/lib/src/source/source_extension_builder.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,4 +289,9 @@ class SourceExtensionBuilder extends ExtensionBuilderImpl
289289
isInternalImplementation: isInternalImplementation,
290290
kind: kind));
291291
}
292+
293+
@override
294+
int resolveConstructors(SourceLibraryBuilder library) {
295+
return 0;
296+
}
292297
}

pkg/front_end/lib/src/source/source_extension_type_declaration_builder.dart

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ import '../kernel/body_builder_context.dart';
2929
import '../kernel/hierarchy/hierarchy_builder.dart';
3030
import '../kernel/kernel_helper.dart';
3131
import '../type_inference/type_inference_engine.dart';
32-
import 'class_declaration.dart';
3332
import 'name_scheme.dart';
3433
import 'name_space_builder.dart';
3534
import 'source_builder_mixins.dart';
@@ -43,9 +42,7 @@ import 'source_type_parameter_builder.dart';
4342
class SourceExtensionTypeDeclarationBuilder
4443
extends ExtensionTypeDeclarationBuilderImpl
4544
with SourceDeclarationBuilderMixin
46-
implements
47-
Comparable<SourceExtensionTypeDeclarationBuilder>,
48-
ClassDeclarationBuilder {
45+
implements Comparable<SourceExtensionTypeDeclarationBuilder> {
4946
@override
5047
final SourceLibraryBuilder parent;
5148

pkg/front_end/lib/src/source/source_library_builder.dart

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,10 @@ import '../kernel/utils.dart'
5050
exportDynamicSentinel,
5151
exportNeverSentinel,
5252
unserializableExportName;
53-
import 'class_declaration.dart';
5453
import 'name_scheme.dart';
5554
import 'name_space_builder.dart';
56-
import 'source_builder_mixins.dart';
5755
import 'source_class_builder.dart' show SourceClassBuilder;
56+
import 'source_declaration_builder.dart';
5857
import 'source_extension_builder.dart';
5958
import 'source_extension_type_declaration_builder.dart';
6059
import 'source_factory_builder.dart';
@@ -708,10 +707,10 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
708707
/// return the number of constructors resolved.
709708
int resolveConstructors() {
710709
int count = 0;
711-
Iterator<ClassDeclarationBuilder> iterator =
710+
Iterator<SourceDeclarationBuilder> iterator =
712711
filteredMembersIterator(includeDuplicates: true);
713712
while (iterator.moveNext()) {
714-
ClassDeclarationBuilder builder = iterator.current;
713+
SourceDeclarationBuilder builder = iterator.current;
715714
count += builder.resolveConstructors(this);
716715
}
717716
return count;

pkg/front_end/test/coverage_suite_expected.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -995,7 +995,7 @@ const Map<String, ({int hitCount, int missCount})> _expect = {
995995
),
996996
// 100.0%.
997997
"package:front_end/src/source/source_extension_builder.dart": (
998-
hitCount: 152,
998+
hitCount: 153,
999999
missCount: 0,
10001000
),
10011001
// 100.0%.

0 commit comments

Comments
 (0)