00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef RECLS_INCL_H_RECLS_IMPL
00023 #define RECLS_INCL_H_RECLS_IMPL
00024
00025
00026 #ifndef RECLS_DOCUMENTATION_SKIP_SECTION
00027 # define RECLS_VER_H_RECLS_IMPL_MAJOR 3
00028 # define RECLS_VER_H_RECLS_IMPL_MINOR 2
00029 # define RECLS_VER_H_RECLS_IMPL_REVISION 6
00030 # define RECLS_VER_H_RECLS_IMPL_EDIT 33
00031 #endif
00032
00036
00037
00038
00039
00040 #include <recls/recls.h>
00041
00042 #ifdef RECLS_PURE_API
00043 # error Cannot define RECLS_PURE_API for the implementation of recls
00044 #endif
00045
00046 #ifdef RECLS_PLATFORM_IS_UNIX_EMULATED_ON_WIN32
00047 # include <windows.h>
00048 #endif
00049
00050
00051
00052
00053
00054 #ifdef __cplusplus
00055 # include <stlsoft/stlsoft.h>
00056 # if !defined(_STLSOFT_VER_1_9_1) || \
00057 _STLSOFT_VER < _STLSOFT_VER_1_9_1
00058 # error Requires STLSoft 1.9.1, or later. (www.stlsoft.org/downloads.html)
00059 # endif
00060 # include <stlsoft/conversion/sap_cast.hpp>
00061 #endif
00062
00063
00064
00065
00066
00067 #ifdef __cplusplus
00068 # if defined(STLSOFT_CF_EXCEPTION_SUPPORT) || \
00069 defined(STLSOFT_CF_EXCEPTION_SUPPORT)
00070 # define _RECLS_EXCEPTION_SUPPORT
00071 # ifdef STLSOFT_CF_THROW_BAD_ALLOC
00072 # define RECLS_COMPILER_THROWS_ON_NEW_FAIL
00073 # endif
00074 # endif
00075 #endif
00076
00077
00078
00079
00080
00089 #if !defined(NDEBUG)
00090 # if defined(RECLS_PLATFORM_IS_UNIX)
00091 # define _RECLS_DEBUG
00092 # elif defined(RECLS_PLATFORM_IS_WIN32) && \
00093 ( defined(DEBUG) || \
00094 defined(_DEBUG))
00095 # define _RECLS_DEBUG
00096 # endif
00097 #endif
00098
00107 #ifdef _RECLS_DEBUG
00108 # ifndef RECLS_DEBUG_LEVEL
00109 # define RECLS_DEBUG_LEVEL 1
00110 # endif
00111 #else
00112 # ifdef RECLS_DEBUG_LEVEL
00113 # undef RECLS_DEBUG_LEVEL
00114 # endif
00115 # define RECLS_DEBUG_LEVEL 0
00116 #endif
00117
00118
00119
00120
00121
00124 #if defined(_RECLS_DEBUG) || \
00125 defined(RECLS_ENFORCE_CONTRACTS)
00126 # define RECLS_ENFORCING_CONTRACTS
00127 #endif
00128
00129
00130
00131
00132
00135 #if defined(RECLS_PLATFORM_IS_UNIX)
00136 # if defined(_REENTRANT)
00137 # define _RECLS_MT
00138 # elif defined(RECLS_PLATFORM_IS_UNIX_EMULATED_ON_WIN32) && \
00139 ( defined(_MT) || \
00140 defined(__MT__))
00141 # define _RECLS_MT
00142 # ifndef _REENTRANT
00143 # define _REENTRANT
00144 # endif
00145 # endif
00146 #elif defined(RECLS_PLATFORM_IS_WIN32)
00147 # if defined(_MT) || \
00148 defined(__MT__)
00149 # define _RECLS_MT
00150 # endif
00151 #endif
00152
00153
00154
00155
00156
00157 #ifndef RECLS_NUM_ELEMENTS
00158 # if defined(stlsoft_num_elements)
00159 # define RECLS_NUM_ELEMENTS(x) stlsoft_num_elements(x)
00160 # else
00161 # define RECLS_NUM_ELEMENTS(x) (sizeof(x) / sizeof((x)[0]))
00162 # endif
00163 #endif
00164
00165
00166
00167
00168
00169 #if ( !defined(RECLS_COMPILER_IS_MSVC) || \
00170 _MSC_VER >= 1200) && \
00171 !defined(RECLS_COMPILER_IS_WATCOM)
00172 # define _RECLS_SUPPORTS_MULTIPATTERN
00173 #endif
00174
00175
00176
00177 #endif
00178
00179