Mixin can't access library symbols?
    Adam D. Ruppe 
    destructionator at gmail.com
       
    Sat May  4 14:22:45 UTC 2019
    
    
  
On Saturday, 4 May 2019 at 08:12:46 UTC, Alex wrote:
>>     mixin(defState!("XEvent value;"));
> mixin templates are used in the call scope, not the defining 
> scope.
That's true, but the code there is NOT a mixin template.
mixin templates are always used
mixin TemplateName;
or
mixin TemplateName!(Args);
There are no parenthesis around it for this construct.
> Sometimes this is a little tricky because you want to 
> generalize it so you have to do some weird stuff and use 
> mixin("import "~moduleName!T~";");
If you find yourself writing code like that, it means your 
library is badly designed and you should fix it. There is never a 
need for that, if you can get the module if T, it means you 
*already have access to T* and can simply use it directly.
    
    
More information about the Digitalmars-d-learn
mailing list