dart-sdk/tests/lib/mirrors/deferred_mirrors_metadata_lib.dart
Ryan Macnak 081e2acf29 [test] Update copied mirrors tests for Dart 3.
Bug: https://github.com/dart-lang/sdk/issues/40045
Change-Id: Ic0f62843d61b613e61f434b72b9553dd1e6897af
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/132441
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2020-01-23 18:09:37 +00:00

32 lines
593 B
Dart

library lib;
import "deferred_mirrors_metadata_test.dart";
import "dart:mirrors";
class H {
const H();
}
class F {
@H()
int f = 0;
}
@C()
class E {
@D()
dynamic f;
}
String foo() {
String c = reflectClass(E).metadata[0].invoke(#toString, []).reflectee;
String d = reflectClass(E)
.declarations[#f]!
.metadata[0]
.invoke(#toString, []).reflectee;
InstanceMirror i = currentMirrorSystem().findLibrary(#main).metadata[0];
String a = i.invoke(#toString, []).reflectee;
String b = i.getField(#b).invoke(#toString, []).reflectee;
return a + b + c + d;
}