blob: 10e035bedc88926802a37ce11a5461c111cb0904 [file] [log] [blame]
# Copyright (c) 2023, 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 file.
# Test extension on String from import from dill.
type: newworld
worlds:
- entry: main.dart
sources:
main.dart: |
extension type ExtensionType(int i) {
factory ExtensionType.f(int i) => ExtensionType(i);
factory ExtensionType.r(int i) = ExtensionType;
int method() => i;
int get getter => i;
void set setter(int value) {}
static void staticMethod() {}
static int staticField = 42;
}
main() {
ExtensionType(0).method();
ExtensionType.f(0).getter;
ExtensionType.r(0).setter = 42;
ExtensionType.staticMethod();
ExtensionType.staticField = ExtensionType.staticField + 1;
}
expectedLibraryCount: 1
- entry: main.dart
invalidate:
- main.dart
sources:
main.dart: |
extension type ExtensionType(int i) {
factory ExtensionType.f(int i) => ExtensionType(i);
factory ExtensionType.r(int i) = ExtensionType;
int method() => i;
int get getter => i;
void set setter(int value) {}
static void staticMethod() {}
static int staticField = 42;
}
main() {
ExtensionType(1).method();
ExtensionType.f(1).getter;
ExtensionType.r(1).setter = 42;
ExtensionType.staticMethod();
ExtensionType.staticField = ExtensionType.staticField + 2;
}
expectedLibraryCount: 1
advancedInvalidation: bodiesOnly