blob: 7bca389f751f03fe72fbe42627623dd03a9707ba [file] [log] [blame]
# Copyright (c) 2019, 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.md file.
# Compile an application, change a file, but don't change the outline.
# Extensions and exports.
type: newworld
worlds:
- entry: main.dart
experiments: alternative-invalidation-strategy
sources:
main.dart: |
// @dart=2.9
import "lib1.dart";
import "lib1.dart" as l1;
import "lib2.dart";
import "lib2.dart" as l2;
class Class {}
extension Extension on Class {
void method() {}
}
main() {
Class a = new Class();
a.method();
a.method2();
lib1();
}
lib1.dart: |
// @dart=2.9
export "main.dart";
import "main.dart";
import "main.dart" as m;
extension Extension2 on Class {
void method2() {}
}
lib1() {
Class a = new Class();
a.method();
a.method2();
}
lib2.dart: |
// @dart=2.9
import "lib1.dart";
import "lib1.dart" as l1;
extension Extension3 on Class {
void method3() {}
}
lib2() {
Class a = new Class();
a.method();
a.method2();
}
expectedLibraryCount: 3
- entry: main.dart
experiments: alternative-invalidation-strategy
worldType: updated
expectInitializeFromDill: false
invalidate:
- main.dart
sources:
main.dart: |
// @dart=2.9
import "lib1.dart";
import "lib1.dart" as l1;
import "lib2.dart";
import "lib2.dart" as l2;
class Class {}
extension Extension on Class {
void method() {}
}
main() {
Class a = new Class();
a.method();
a.method2();
lib1();
print("Done");
}
expectedLibraryCount: 3
expectsRebuildBodiesOnly: true
- entry: main.dart
experiments: alternative-invalidation-strategy
worldType: updated
expectInitializeFromDill: false
invalidate:
- lib2.dart
sources:
lib2.dart: |
// @dart=2.9
import "lib1.dart";
import "lib1.dart" as l1;
extension Extension3 on Class {
void method3() {}
}
lib2() {
Class a = new Class();
a.method();
a.method2();
print("done");
}
expectedLibraryCount: 3
expectsRebuildBodiesOnly: true
- entry: main.dart
experiments: alternative-invalidation-strategy
worldType: updated
expectInitializeFromDill: false
invalidate:
- lib1.dart
sources:
lib1.dart: |
// @dart=2.9
export "main.dart";
import "main.dart";
import "main.dart" as m;
extension Extension2 on Class {
void method2() {}
}
lib1() {
Class a = new Class();
a.method();
a.method2();
print("done");
}
expectedLibraryCount: 3
expectsRebuildBodiesOnly: true