WYSIWIG conditional compilation preprocessor for Java etc.
A WYSIWYG Conditional Compilation Preprocessor for Java, Perl, C, C++, Basic, PowerShell, C#, Javascript, and other programming languages.
Many C and C++ developers rely heavily on the Cpreprocessor, and lament the lack of a preprocessor in Java, scripting languages, and other programming languages. The principal objection to a preprocessor is that it makes one's code difficult to read.
Deals with short coming of Boost's preprocessor ITERATE library.
The Boost preprocessor library is a great library. However, I've found a problem that it does not cover. It cannot deal with a repetition of a file that doesn't either exist in the include path set or relative to that set. This is because the #include BOOST_PP_ITERATE() tries to include the file to iterate over from another file in another directory. Since it is in another directory different from the caller, this requires that the caller is located somewhere off of one of the include...
Tested, portable, standard C++ source code for policy based log stream, configuration data, external string table, field-delimited strings and text file reader. BSD license. Templated for use with any valid instantiation of std::basic_string.