Dlang code mixin output

dennis luehring dl.soluz at gmx.net
Wed Jul 31 05:25:32 PDT 2013


Am 31.07.2013 14:23, schrieb dennis luehring:
> Am 31.07.2013 14:09, schrieb JS:
>> It would be nice to be able to have a precompilation step that
>> produces a d output file that is the "mixed down" version with
>> all the string mixins computed. This would allow one to look at
>> the files, allow better code analysis/error messages, and
>> intellisense and other things to be useful.
>>
>> A simple compiler switch would do the trick to enable such a
>> feature. *.dc files could be generated, or whatever, for each d
>> file if it uses string mixins(I suppose template mixins could
>> also be reduced).
>
> what about something that catches mixin results into a static
> compiletime strings
>
> template GenStruct(string Name, string M1)
> {
>       const char[] GenStruct = "struct " ~ Name ~ "{ int " ~ M1 ~ "; }";
> }
>
> which generates:
>
> struct Foo { int bar; }
>
> catch_generated_output(my_mixin_output)
> {
>     mixin(GenStruct!("Foo", "bar"));
> }

or as an optional parameter for mixin(GenStruct!("Foo", "bar"), 
my_mixin_output)?



More information about the Digitalmars-d mailing list