I notice that the only use of Type is reflectedType.
Maybe consider not having it at all. The only use for a Type object is to == compare it with another, so maybe replace reflectedType with isReflectedType<R>() which returns whether the reflected type is R.
Then users will have one less reason to ever care about Type objects, and we'll have one less reason to keep supporting it. The Type class should really have been placed in dart:mirrors, and it's a bad design to have runtimeType on Object. So, consider not using it at all.
I notice that the only use of
TypeisreflectedType.Maybe consider not having it at all. The only use for a
Typeobject is to==compare it with another, so maybe replacereflectedTypewithisReflectedType<R>()which returns whether the reflected type isR.Then users will have one less reason to ever care about
Typeobjects, and we'll have one less reason to keep supporting it. TheTypeclass should really have been placed indart:mirrors, and it's a bad design to haveruntimeTypeonObject. So, consider not using it at all.