【发布时间】:2015-08-06 18:16:08
【问题描述】:
在 dart:mirrors 包中,从符号中获取字符串值的方法是:
MirrorSystem.getName(#MySymbol);
可反射封装有什么等价物吗?
【问题讨论】:
标签: reflection dart dart-mirrors
在 dart:mirrors 包中,从符号中获取字符串值的方法是:
MirrorSystem.getName(#MySymbol);
可反射封装有什么等价物吗?
【问题讨论】:
标签: reflection dart dart-mirrors
这可能是您想要的,但它不像 MirrorSystem.getName(#MySymbol); 那样通用
library some_lib;
//import 'dart:mirrors' as mirr;
import 'package:reflectable/reflectable.dart';
class Reflector extends Reflectable {
const Reflector() : super(typeCapability);
}
const Reflector reflector = const Reflector();
main() {
// print(mirr.MirrorSystem.getName(#SomeClass));
reflector.libraries.values.forEach((LibraryMirror lm) {
if (lm.declarations.containsKey('SomeClass')) {
print(lm.declarations['SomeClass']);
}
});
}
@reflector
class SomeClass {}
【讨论】: