A list of reflective targets.
Combined with metaTargets, this provides the complete list of reflective targets used by the library to which this metadata applies.
The following text is non-normative:
For now, there is no formal description of what a reflective target is. Informally, a target is a library, a class, a method or a field.
Dart2js currently supports the following formats to specify targets:
A (qualified) name is resolved to a target as follows:
.
and is a library name..
as a
separator.For example:
library my.library.one;
class A {
var aField;
}
library main;
@MirrorsUsed(targets: "my.library.one.A.aField")
import "dart:mirrors";
The MirrorsUsed annotation specifies A
and aField
from library
my.library.one
as targets. This will mark the class A
as a reflective
target. The target specification for aField
has no effect, as there is
no target in my.library.one
with that name.
Note that everything within a target also is available for reflection.
So, if a library is specified as target, all classes in that library
become targets for reflection. Likewise, if a class is a target, all
its methods and fields become targets for reflection. As a consequence,
aField
in the above example is also a reflective target.
final targets