⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stdtp_8h-source.html

📁 俄罗斯牛人KK的作品,著名的ORDBMS,这里上传最新的3.39版本源代码.希望了解对象关系数据库的同好,请不要错过.
💻 HTML
📖 第 1 页 / 共 3 页
字号:
00136 <span class="preprocessor"></span><span class="preprocessor">#define DEBUG_TRACE_IMPORTANT 2</span>00137 <span class="preprocessor"></span><span class="preprocessor">#define DEBUG_TRACE_ALL       3</span>00138 <span class="preprocessor"></span>00139 <span class="preprocessor">#if FASTDB_DEBUG &gt;= DEBUG_TRACE_IMPORTANT</span>00140 <span class="preprocessor"></span><span class="preprocessor">#define TRACE_IMSG(x)  dbTrace x</span>00141 <span class="preprocessor"></span><span class="preprocessor">#else</span>00142 <span class="preprocessor"></span><span class="preprocessor">#define TRACE_IMSG(x)</span>00143 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00144 <span class="preprocessor"></span>00145 <span class="preprocessor">#if FASTDB_DEBUG &gt;= DEBUG_TRACE_ALL</span>00146 <span class="preprocessor"></span><span class="preprocessor">#define TRACE_MSG(x)  dbTrace x</span>00147 <span class="preprocessor"></span><span class="preprocessor">#else</span>00148 <span class="preprocessor"></span><span class="preprocessor">#define TRACE_MSG(x)</span>00149 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00150 <span class="preprocessor"></span>00151 <span class="preprocessor">#ifndef EXTRA_DEBUG_NEW_PARAMS</span>00152 <span class="preprocessor"></span><span class="preprocessor">#define EXTRA_DEBUG_NEW_PARAMS</span>00153 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00154 <span class="preprocessor"></span>00155 00156 <span class="preprocessor">#ifndef HAS_TEMPLATE_FRIENDS</span>00157 <span class="preprocessor"></span><span class="preprocessor">#if (!defined(_MSC_VER) || _MSC_VER &gt;= 1300) &amp;&amp; !defined(NO_MEMBER_TEMPLATES)</span>00158 <span class="preprocessor"></span><span class="preprocessor">#define HAS_TEMPLATE_FRIENDS</span>00159 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00160 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00161 <span class="preprocessor"></span>00162 <span class="preprocessor">#ifndef __IBMCPP__</span>00163 <span class="preprocessor"></span>BEGIN_FASTDB_NAMESPACE00164 <span class="preprocessor">#endif</span>00165 <span class="preprocessor"></span>00166 <span class="comment">// User defined trace functions</span>00167 <span class="keyword">typedef</span> void (CLI_CALLBACK_CC *dbTraceFunctionPtr)(<span class="keywordtype">char</span>* message);00168 00169 <span class="comment">// Pointer to trace function (default implementation just prints message to stderr)</span>00170 <span class="keyword">extern</span> FASTDB_DLL_ENTRY dbTraceFunctionPtr dbTraceFunction;00171 00172 <span class="keyword">extern</span> FASTDB_DLL_ENTRY <span class="keywordtype">void</span> dbTrace(<span class="keywordtype">char</span>* message, ...);00173 00174 <span class="comment">// Enable or disable trace at runtime</span>00175 <span class="keyword">extern</span> FASTDB_DLL_ENTRY <span class="keywordtype">bool</span> dbTraceEnable;00176 00177 00178 <span class="preprocessor">#if defined(_WINCE) || defined(UNICODE)</span>00179 <span class="preprocessor"></span><span class="keyword">inline</span> <span class="keywordtype">wchar_t</span>* convertStringToUnicode(<span class="keywordtype">wchar_t</span>* dst, <span class="keywordtype">char</span> <span class="keyword">const</span>* src, size_t size) {00180         mbstowcs(dst, src, size);00181         <span class="keywordflow">return</span> dst;00182 }00183 <span class="preprocessor">#define CNV_BUF_SIZE 256</span>00184 <span class="preprocessor"></span><span class="preprocessor">#define W32_STRING(s) convertStringToUnicode((wchar_t*)alloca(sizeof(wchar_t)*CNV_BUF_SIZE), s, CNV_BUF_SIZE)</span>00185 <span class="preprocessor"></span><span class="preprocessor">#else</span>00186 <span class="preprocessor"></span><span class="preprocessor">#define W32_STRING(s) s</span>00187 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00188 <span class="preprocessor"></span>00189 00190 <span class="comment">// Align value 'x' to boundary 'b' which should be power of 2</span>00191 <span class="preprocessor">#define DOALIGN(x,b)   (((x) + (b) - 1) &amp; ~((b) - 1))</span>00192 <span class="preprocessor"></span>00193 <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">char</span>    db_int1;00194 <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>  db_nat1;00195 00196 <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">short</span>   db_int2;00197 <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> db_nat2;00198 00199 <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">int</span>     db_int4;00200 <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>   db_nat4;00201 00202 <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>  db_byte;00203 00204 <span class="comment">// This mapping is done for compatibility reasons</span>00205 <span class="keyword">typedef</span> db_int1 int1;00206 <span class="keyword">typedef</span> db_nat1 nat1;00207 <span class="keyword">typedef</span> db_int2 int2;00208 <span class="keyword">typedef</span> db_nat2 nat2;00209 <span class="keyword">typedef</span> db_int4 int4;00210 <span class="keyword">typedef</span> db_nat4 nat4;00211 00212 <span class="keyword">typedef</span> db_byte byte;00213 00214 <span class="preprocessor">#if defined(_WIN32) &amp;&amp; !defined(__MINGW32__)</span>00215 <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> __int64 db_nat8;00216 <span class="keyword">typedef</span> __int64          db_int8;00217 <span class="preprocessor">#if defined(__IBMCPP__)</span>00218 <span class="preprocessor"></span><span class="preprocessor">#define INT8_FORMAT "%lld"</span>00219 <span class="preprocessor"></span><span class="preprocessor">#else</span>00220 <span class="preprocessor"></span><span class="preprocessor">#define INT8_FORMAT "%I64d"</span>00221 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00222 <span class="preprocessor"></span><span class="preprocessor">#define CONST64(c)  c</span>00223 <span class="preprocessor"></span><span class="preprocessor">#else</span>00224 <span class="preprocessor"></span><span class="preprocessor">#if defined(__osf__ )</span>00225 <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> db_nat8;00226 <span class="keyword">typedef</span> <span class="keywordtype">signed</span>   <span class="keywordtype">long</span> db_int8;00227 <span class="preprocessor">#define INT8_FORMAT "%ld"</span>00228 <span class="preprocessor"></span><span class="preprocessor">#define CONST64(c)  c##L</span>00229 <span class="preprocessor"></span><span class="preprocessor">#ifndef SIZEOF_LONG</span>00230 <span class="preprocessor"></span><span class="preprocessor">#define SIZEOF_LONG 8</span>00231 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00232 <span class="preprocessor"></span><span class="preprocessor">#else</span>00233 <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> db_nat8;00234 <span class="keyword">typedef</span> <span class="keywordtype">signed</span>   <span class="keywordtype">long</span> <span class="keywordtype">long</span> db_int8;00235 <span class="preprocessor">#if defined(__MINGW32__) &amp;&amp; __GNUG__&lt;3</span>00236 <span class="preprocessor"></span><span class="preprocessor">#define INT8_FORMAT "%I64d"</span>00237 <span class="preprocessor"></span><span class="preprocessor">#else</span>00238 <span class="preprocessor"></span><span class="preprocessor">#define INT8_FORMAT "%lld"</span>00239 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00240 <span class="preprocessor"></span><span class="preprocessor">#define CONST64(c)  c##LL</span>00241 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00242 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00243 <span class="preprocessor"></span>00244 <span class="preprocessor">#if !defined(bool) &amp;&amp; ((defined(__SUNPRO_CC) &amp;&amp; __SUNPRO_CC_COMPAT &lt; 5) || defined(__IBMCPP__))</span>00245 <span class="preprocessor"></span><span class="preprocessor">#define bool  char</span>00246 <span class="preprocessor"></span><span class="preprocessor">#define true  (1)</span>00247 <span class="preprocessor"></span><span class="preprocessor">#define false (0)</span>00248 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00249 <span class="preprocessor"></span>00250 <span class="preprocessor">#define nat8_low_part(x)  ((nat4)(x))</span>00251 <span class="preprocessor"></span><span class="preprocessor">#define nat8_high_part(x) ((nat4)((nat8)(x)&gt;&gt;32))</span>00252 <span class="preprocessor"></span><span class="preprocessor">#define int8_low_part(x)  ((int4)(x))</span>00253 <span class="preprocessor"></span><span class="preprocessor">#define int8_high_part(x) ((int4)((db_int8)(x)&gt;&gt;32))</span>00254 <span class="preprocessor"></span><span class="preprocessor">#define cons_nat8(hi, lo) ((((nat8)(hi)) &lt;&lt; 32) | (nat4)(lo))</span>00255 <span class="preprocessor"></span><span class="preprocessor">#define cons_int8(hi, lo) ((((db_int8)(hi)) &lt;&lt; 32) | (nat4)(lo))</span>00256 <span class="preprocessor"></span> 00257 <span class="preprocessor">#define MAX_NAT8  nat8(-1)</span>00258 <span class="preprocessor"></span>00259 <span class="preprocessor">#ifndef INT8_IS_DEFINED</span>00260 <span class="preprocessor"></span><span class="keyword">typedef</span> db_int8 int8;00261 <span class="preprocessor">#endif</span>00262 <span class="preprocessor"></span><span class="keyword">typedef</span> db_nat8 nat8;00263 00264 <span class="keyword">typedef</span> <span class="keywordtype">float</span>  real4;00265 <span class="keyword">typedef</span> <span class="keywordtype">double</span> real8; 00266 00267 <span class="preprocessor">#ifndef BIG_ENDIAN</span>00268 <span class="preprocessor"></span><span class="preprocessor">#define BIG_ENDIAN      4321    </span><span class="comment">/* most-significant byte first (IBM, net) */</span>00269 <span class="preprocessor">#endif</span>00270 <span class="preprocessor"></span><span class="preprocessor">#ifndef LITTLE_ENDIAN</span>00271 <span class="preprocessor"></span><span class="preprocessor">#define LITTLE_ENDIAN   1234</span>00272 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00273 <span class="preprocessor"></span>00274 <span class="preprocessor">#ifndef BYTE_ORDER</span>00275 <span class="preprocessor"></span><span class="preprocessor">#if defined(__sparc__) || defined(__m68k__)</span>00276 <span class="preprocessor"></span><span class="preprocessor">#define BYTE_ORDER      BIG_ENDIAN </span>00277 <span class="preprocessor"></span><span class="preprocessor">#else</span>00278 <span class="preprocessor"></span><span class="preprocessor">#define BYTE_ORDER      LITTLE_ENDIAN</span>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -