D is known for its unparalled compile-time reflection, but the API to
do so is distributed among the built-in __traits
and the
std.traits
package in the standard library. There was no one single
place with a unified API for doing reflection in D. This package
solves that problem.
Furthermore, it attempts to, at the same time, extend the compile-time
reflection capabilities of D into the runtime realm and allow users
to write "regular" code with mixins and CTFE instead of template
metaprogramming. This is done by transforming types and symbols into
strings. See the tests and the mirror.ctfe
package for more.