がある場合Type
、を使用しMirrors
て名前を取得できますType
。逆に、Type
の名前が与えられた場合、どうやって ? を取得しType
ますか?
たとえば、 のDart
中心のバージョンからAngular
:
index.html
<form ng-controller='word?reset=true' >
...
</form>
mylib.dart
class Controller {
Controller( Brando brando, Element elem, Map args ) { ... }
}
class Word extends Controller { ... }
class LangList extends Controller { ... }
// Brando, the godfather
class Brando {
...
void compile( Element el ) {
...
// add controller
if( el.attributes.contains( 'ng-controller' ) {
var name = el.attributes.getTypeName(); <== "Word"
var args = el.attributes.getTypeArgs(); <== { 'reset': 'true' }
var type = <get type from camelized Type name> <=== how??
this.controllers.add( reflectClass(type).newInstance(
const Symbol(''), [this,el,args]).reflectee ); <=== instance from type
}
...
}
}
の名前を取得する方法、とからType
取得する方法、 をインスタンス化する方法を知っています。最後のピースがありません -その名前からどのように派生しますか?Type
class
Object
Type
Type