WxExtLib - pp_basics.h
00001: // -*- c++ -*-
00002: //-------------------------------------------------------------------------
00003: // Author: Daniel Käps, created 2006.
00004: // This file is public domain.
00005: //-------------------------------------------------------------------------
00006:
00007:
00008: //=========================================================================
00009:
00010: #if (M_IsDefinePPMacros == 1)
00011:
00012: # define M_PP_concatHelper(P1,P2) P1 ## P2
00013: # define M_PP_stringizeHelper(P1) # P1
00014:
00015: # define M_PP_concat(P1,P2) M_PP_concatHelper (P1, P2)
00016: # define M_PP_stringize(P1) M_PP_stringizeHelper (P1)
00017:
00018: # define M_PP_eval0(FunctionalMacro) FunctionalMacro ()
00019: # define M_PP_eval1(FunctionalMacro,P1) FunctionalMacro (P1)
00020: # define M_PP_eval2(FunctionalMacro,P1,P2) FunctionalMacro (P1, P2)
00021: # define M_PP_eval3(FunctionalMacro,P1,P2,P3) FunctionalMacro (P1, P2, P3)
00022: // add more if needed
00023:
00024: #endif
00025:
00026: //-------------------------------------------------------------------------
00027:
00028: #if (M_IsUndefPPMacros == 1)
00029:
00030: # undef M_PP_concatHelper
00031: # undef M_PP_stringizeHelper
00032:
00033: # undef M_PP_concat
00034: # undef M_PP_stringize
00035:
00036: # undef M_PP_eval0
00037: # undef M_PP_eval1
00038: # undef M_PP_eval2
00039: # undef M_PP_eval3
00040:
00041: #endif
00042:
00043: //=========================================================================
00044:
00045: //-------------------------------------------------------------------------
00046:
00047: #if ((!defined M_IsDefinePPMacros) && (!defined M_IsUndefPPMacros))
00048:
00049: # error "please define either either M_IsDefinePPMacros or M_IsUndefPPMacros 1 (please use with care: don't forget undef-ing)"
00050:
00051: #endif
00052:
00053: //-------------------------------------------------------------------------
00054:
00055: