On 2015-03-31 11:08, Johannes Pfau wrote:
But here's the problem:
1) The compile time approach requires some kind
of explicit registration of the unittests. At least one mixin per
module.
2) This mixin will usually provide a module constructor. But
using module constructors will cause issues with cycle detection.
When we get RTInfo for modules [1] there shouldn't be any problems. A
template will be instantiated once for each module the compiler sees.
With that module __traits(getUnitTests) and __traits(allMembers) can be
used to access the unit tests, benchmarks, or whatever. Not need for any
registration or module constructors.
[1] https://github.com/D-Programming-Language/dmd/pull/2271
--
/Jacob Carlborg