Is there a better way to do this? (Using class at compile-time)
Simen Kjærås
simen.kjaras at gmail.com
Tue Jun 12 11:18:00 UTC 2018
On Tuesday, 12 June 2018 at 11:04:40 UTC, bauss wrote:
[snip]
> void test(T)()
> {
> pragma(msg, (getBar!T).baz());
> pragma(msg, (getBar!T).helloworld());
>
> import std.stdio;
>
> mixin((getBar!T).baz());
> mixin((getBar!T).helloworld());
> }
[snip]
> Is there a way to avoid having to write "getBar!T" every time
> since we cannot store a class into a compile-time variable, how
> would one avoid such thing?
static const instance = new Bar!T;
enum text1 = b.baz();
enum text2 = b.helloworld();
However, since it's a const instance, you'll only be able to call
const methods on it, and you'll need to mark baz and helloworld
as const.
--
Simen
More information about the Digitalmars-d-learn
mailing list