boilerplate generation
Carl Sturtivant
sturtivant at gmail.com
Sun Dec 29 13:40:43 PST 2013
I want to be able to define a number of extern(C) functions that
will define a C API in a DLL, varying only in their names, each
as follows.
export extern(C) int f( uint argc, A* argv) { return Wrapper!f(
argc, argv); }
Here Wrapper!f is a wrapper around a D function named f that does
the work, called from C via the f defined here.
I'd like a piece of D machinery that provides a short clean way
to embed one of these in a program, where the name f is specified
once, and the code is invisible. I've had no success at solving
this problem with templates or mixin templates. I can use CTFE so
I can write
mixin( Export("f"));
to introduce the definition for f. Is this the best way to
proceed? What are other options?
More information about the Digitalmars-d-learn
mailing list