The problem: I'm writing a library. This library has logging facilities, but where it's going to be used there are better logging facilities. Under C, that wouldn't be a big issue:

log.h:
#ifdef REAL_LOG_LIBRARY
#include REAL_LOG_LIBRARY
#else

// Declarations go here

#endif


I can now inject from my build system -DREAL_LOG_LIBRARY=real/impl/log.h into the compilation command line, and I'm done.

Under D, there is no facility to transfer a string from the command line to the code, so I can't use that approach.

I seem to remember that D had an option of importing an external file as something (string? code? anything would do for my purposes). I cannot seem to find it, however. A search for "string import" and "import mixin" brought back nothing useful.

Help?
Shachar

Reply via email to