compile time introspection and code generation - automatically serialize to json

Tobias Pankrath tobias at pankrath.net
Thu Jul 21 04:09:18 PDT 2011


> 
> Have a look at Orange: http://www.dsource.org/projects/orange
> I'm in a middle of a complete rewrite but you can use a previous version
> (if it still works) or look at the code.
> 
Thank you for pointing me there. Looks very interesting. I took a quick look 
at the code and got some questions. I found this pattern quite often in 
phobos sources, too.

Why do you declare in Reflection.d[1] a template 
parameterNamesOf(alias func) and one called parameterNamesOfImpl? Wouldn't 
be one sufficient?

I do understand the case if you want to use the template recursively and 
hide one parameter like in fieldsOf / fieldsOfImpl.
Though I don't understand why you are using a recursive template in fieldsOf 
and a imperative function in parameterNamesOfImpl? Is it possible to you use 
both in both places?



[1] http://www.dsource.org/projects/orange/browser/orange/util/Reflection.d


More information about the Digitalmars-d-learn mailing list