Because Meta Programming must be easy.

Reflection Providers

Basically, all dirty work is handled by a collection of interfaces we call Reflection Providers. These are the real Mirror's core. Today we only have, that uses only Java Reflection API. But you can just implement your own net.vidageek.mirror.provider.ReflectionProvider to give you more control over what's happening. Actually, net.vidageek.mirror.provider.ReflectionProvider is just a wrapper for more specific interfaces: But how do you make Mirror use your Reflection Provider? Take a look at Extension -> Configuration.