Skip to content

Commit b7eea44

Browse files
author
Dart CI
committed
Version 2.17.0-91.0.dev
Merge commit 'ef028410836f30a32b8aa41a1b0d7e3f7c74cb89' into 'dev'
2 parents 32fa7df + ef02841 commit b7eea44

File tree

2 files changed

+14
-32
lines changed

2 files changed

+14
-32
lines changed

pkg/compiler/lib/src/native/enqueue.dart

Lines changed: 13 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -14,33 +14,11 @@ import '../universe/world_impact.dart'
1414
import 'behavior.dart';
1515
import 'resolver.dart' show NativeClassFinder;
1616

17-
/// This could be an abstract class but we use it as a stub for the
18-
/// dart_backend.
19-
class NativeEnqueuer {
20-
/// Called when a [type] has been instantiated natively.
21-
void onInstantiatedType(InterfaceType type) {}
22-
23-
/// Initial entry point to native enqueuer.
24-
WorldImpact processNativeClasses(Iterable<Uri> libraries) =>
25-
const WorldImpact();
26-
27-
/// Registers the [nativeBehavior]. Adds the liveness of its instantiated
28-
/// types to the world.
29-
void registerNativeBehavior(
30-
WorldImpactBuilder impactBuilder, NativeBehavior nativeBehavior, cause) {}
31-
32-
/// Returns whether native classes are being used.
33-
bool get hasInstantiatedNativeClasses => false;
34-
35-
/// Emits a summary information using the [log] function.
36-
void logSummary(void log(String message)) {}
37-
}
38-
39-
abstract class NativeEnqueuerBase implements NativeEnqueuer {
17+
abstract class NativeEnqueuer {
4018
final Set<ClassEntity> _registeredClasses = {};
4119
final Set<ClassEntity> _unusedClasses = {};
4220

43-
@override
21+
/// Returns whether native classes are being used.
4422
bool get hasInstantiatedNativeClasses => !_registeredClasses.isEmpty;
4523

4624
/// Log message reported if all native types are used.
@@ -52,18 +30,21 @@ abstract class NativeEnqueuerBase implements NativeEnqueuer {
5230
final CommonElements _commonElements;
5331

5432
/// Subclasses of [NativeEnqueuerBase] are constructed by the backend.
55-
NativeEnqueuerBase(this._options, this._elementEnvironment,
56-
this._commonElements, this._dartTypes);
33+
NativeEnqueuer(this._options, this._elementEnvironment, this._commonElements,
34+
this._dartTypes);
5735

5836
bool get enableLiveTypeAnalysis => _options.enableNativeLiveTypeAnalysis;
5937

60-
@override
38+
/// Called when a [type] has been instantiated natively.
6139
void onInstantiatedType(InterfaceType type) {
6240
if (_unusedClasses.remove(type.element)) {
6341
_registeredClasses.add(type.element);
6442
}
6543
}
6644

45+
/// Initial entry point to native enqueuer.
46+
WorldImpact processNativeClasses(Iterable<Uri> libraries);
47+
6748
/// Register [classes] as natively instantiated in [impactBuilder].
6849
void _registerTypeUses(
6950
WorldImpactBuilder impactBuilder, Set<ClassEntity> classes, cause) {
@@ -79,7 +60,8 @@ abstract class NativeEnqueuerBase implements NativeEnqueuer {
7960
}
8061
}
8162

82-
@override
63+
/// Registers the [nativeBehavior]. Adds the liveness of its instantiated
64+
/// types to the world.
8365
void registerNativeBehavior(
8466
WorldImpactBuilder impactBuilder, NativeBehavior nativeBehavior, cause) {
8567
_processNativeBehavior(impactBuilder, nativeBehavior, cause);
@@ -169,15 +151,15 @@ abstract class NativeEnqueuerBase implements NativeEnqueuer {
169151
});
170152
}
171153

172-
@override
154+
/// Emits a summary information using the [log] function.
173155
void logSummary(void log(String message)) {
174156
if (_allUsedMessage != null) {
175157
log(_allUsedMessage);
176158
}
177159
}
178160
}
179161

180-
class NativeResolutionEnqueuer extends NativeEnqueuerBase {
162+
class NativeResolutionEnqueuer extends NativeEnqueuer {
181163
final NativeClassFinder _nativeClassFinder;
182164

183165
/// The set of all native classes. Each native class is in [nativeClasses]
@@ -219,7 +201,7 @@ class NativeResolutionEnqueuer extends NativeEnqueuerBase {
219201
}
220202
}
221203

222-
class NativeCodegenEnqueuer extends NativeEnqueuerBase {
204+
class NativeCodegenEnqueuer extends NativeEnqueuer {
223205
final CodeEmitterTask _emitter;
224206
final Iterable<ClassEntity> _nativeClasses;
225207
final NativeData _nativeData;

tools/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,5 +27,5 @@ CHANNEL dev
2727
MAJOR 2
2828
MINOR 17
2929
PATCH 0
30-
PRERELEASE 90
30+
PRERELEASE 91
3131
PRERELEASE_PATCH 0

0 commit comments

Comments
 (0)