digitalmars.D.learn - How to implement `isTemplate` traits?
I need to separate templates: ``` foreach(member; __traits(allMembers, V)) { static if (__traits(compiles, { auto _val = &__traits(getMember, value, member); }) { // a template needs to be instantiated to be addressable, so it works, but I think it's dirty hack instead of dry and clean way... } } ``` May be phobos has such traits somewhere?
Oct 04 2017
On Wednesday, 4 October 2017 at 09:32:31 UTC, drug wrote:I need to separate templates: ``` foreach(member; __traits(allMembers, V)) { static if (__traits(compiles, { auto _val = &__traits(getMember, value, member); }) { // a template needs to be instantiated to be addressable, so it works, but I think it's dirty hack instead of dry and clean way... } } ``` May be phobos has such traits somewhere?template isTemplate(T...) if (T.length == 1) { enum isTemplate = __traits(isTemplate, T[0]); } -- Biotronic
Oct 04 2017
04.10.2017 12:54, Biotronic пишет:template isTemplate(T...) if (T.length == 1) { enum isTemplate = __traits(isTemplate, T[0]); } -- BiotronicThank you!
Oct 04 2017