query_8h-source.html

来自「一个功能强大的内存数据库源代码,c++编写,有详细的注释」· HTML 代码 · 共 682 行 · 第 1/4 页

HTML
682
字号
00550         atBoolean, 00551         atString, 00552         atReal, 00553         atReference, 00554         atRawBinary00555     };  00556     dbArgumentType type; 00557     <font class="keyword">union </font>{00558         real8       realValue;00559         db_int8     intValue;00560         <font class="keywordtype">bool</font>        boolValue;00561         <font class="keywordtype">char</font> <font class="keyword">const</font>* strValue;00562         oid_t       oidValue;00563         <font class="keywordtype">void</font>*       rawValue;00564     } u;00565 00566   <font class="keyword">private</font>:00567     <font class="keyword">friend</font> <font class="keyword">class </font><a class="code" href="classdbDatabase.html">dbDatabase</a>;00568     dbUserFunctionArgument(dbExprNode*             expr, 00569                            dbInheritedAttribute&amp;   iattr, 00570                            dbSynthesizedAttribute&amp; sattr, 00571                            <font class="keywordtype">int</font>                     i);00572 };00573 <a name="l00582"></a><a class="code" href="classdbUserFunction.html">00582</a> <font class="keyword">class </font>FASTDB_DLL_ENTRY dbUserFunction { 00583     <font class="keyword">friend</font> <font class="keyword">class </font><a class="code" href="classdbDatabase.html">dbDatabase</a>;00584     <font class="keyword">friend</font> <font class="keyword">class </font>dbCompiler;00585 00586     <font class="keywordtype">void</font>* fptr;00587     <font class="keywordtype">char</font>* name;00588     00589     dbUserFunction* next;00590     <font class="keyword">static</font> dbUserFunction* list;00591 00592     <font class="keyword">enum</font> funcType {00593         fInt2Bool,00594         fReal2Bool,00595         fStr2Bool,00596         fInt2Int,00597         fReal2Int,00598         fStr2Int,00599         fInt2Real,00600         fReal2Real,00601         fStr2Real,00602         fInt2Str,00603         fReal2Str,00604         fStr2Str, 00605         fArg2Bool, 00606         fArg2Int, 00607         fArg2Real, 00608         fArg2Str, 00609         fArgArg2Bool, 00610         fArgArg2Int, 00611         fArgArg2Real, 00612         fArgArg2Str, 00613         fArgArgArg2Bool, 00614         fArgArgArg2Int, 00615         fArgArgArg2Real, 00616         fArgArgArg2Str00617     };00618     <font class="keywordtype">int</font> type;00619 00620     <font class="keywordtype">void</font> bind(<font class="keywordtype">char</font>* name, <font class="keywordtype">void</font>* f, funcType ftype);00621 00622   <font class="keyword">public</font>:00623 00624     <font class="keyword">static</font> dbUserFunction* find(<font class="keywordtype">char</font> <font class="keyword">const</font>* name) { 00625         <font class="keywordflow">for</font> (dbUserFunction* func = list; func != NULL; func = func-&gt;<a class="code" href="classdbUserFunction.html#dbUserFunctiono2">next</a>) { 00626             <font class="keywordflow">if</font> (name == func-&gt;<a class="code" href="classdbUserFunction.html#dbUserFunctiono1">name</a>) { 00627                 <font class="keywordflow">return</font> func;00628             }00629         }00630         <font class="keywordflow">return</font> NULL;00631     }00632     00633     <font class="keywordtype">int</font> getParameterType();00634 00635     <font class="keywordtype">int</font> getNumberOfParameters();00636 00637     dbUserFunction(<font class="keywordtype">bool</font> (*f)(db_int8), <font class="keywordtype">char</font>* name) { 00638         bind(name, (<font class="keywordtype">void</font>*)f, fInt2Bool); 00639     }00640     dbUserFunction(<font class="keywordtype">bool</font> (*f)(real8), <font class="keywordtype">char</font>* name) { 00641         bind(name, (<font class="keywordtype">void</font>*)f, fReal2Bool); 00642     }00643     dbUserFunction(<font class="keywordtype">bool</font> (*f)(<font class="keywordtype">char</font> <font class="keyword">const</font>*), <font class="keywordtype">char</font>* name) { 00644         bind(name, (<font class="keywordtype">void</font>*)f, fStr2Bool); 00645     }00646     dbUserFunction(db_int8 (*f)(db_int8), <font class="keywordtype">char</font>* name) { 00647         bind(name, (<font class="keywordtype">void</font>*)f, fInt2Int); 00648     }00649     dbUserFunction(db_int8 (*f)(real8), <font class="keywordtype">char</font>* name) { 00650         bind(name, (<font class="keywordtype">void</font>*)f, fReal2Int); 00651     }00652     dbUserFunction(db_int8 (*f)(<font class="keywordtype">char</font> <font class="keyword">const</font>*), <font class="keywordtype">char</font>* name) { 00653         bind(name, (<font class="keywordtype">void</font>*)f, fStr2Int); 00654     }00655     dbUserFunction(real8 (*f)(db_int8), <font class="keywordtype">char</font>* name) { 00656         bind(name, (<font class="keywordtype">void</font>*)f, fInt2Real); 00657     }00658     dbUserFunction(real8 (*f)(real8), <font class="keywordtype">char</font>* name) { 00659         bind(name, (<font class="keywordtype">void</font>*)f, fReal2Real); 00660     }00661     dbUserFunction(real8 (*f)(<font class="keywordtype">char</font> <font class="keyword">const</font>*), <font class="keywordtype">char</font>* name) { 00662         bind(name, (<font class="keywordtype">void</font>*)f, fStr2Real); 00663     }00664     dbUserFunction(<font class="keywordtype">char</font>* (*f)(db_int8), <font class="keywordtype">char</font>* name) { 00665         bind(name, (<font class="keywordtype">void</font>*)f, fInt2Str); 00666     }00667     dbUserFunction(<font class="keywordtype">char</font>* (*f)(real8), <font class="keywordtype">char</font>* name) { 00668         bind(name, (<font class="keywordtype">void</font>*)f, fReal2Str); 00669     }00670     dbUserFunction(<font class="keywordtype">char</font>* (*f)(<font class="keywordtype">char</font> <font class="keyword">const</font>*), <font class="keywordtype">char</font>* name) { 00671         bind(name, (<font class="keywordtype">void</font>*)f, fStr2Str); 00672     }00673 00674 00675     dbUserFunction(<font class="keywordtype">bool</font> (*f)(dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00676         bind(name, (<font class="keywordtype">void</font>*)f, fArg2Bool); 00677     }00678     dbUserFunction(<font class="keywordtype">char</font>* (*f)(dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00679         bind(name, (<font class="keywordtype">void</font>*)f, fArg2Str); 00680     }00681     dbUserFunction(db_int8 (*f)(dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00682         bind(name, (<font class="keywordtype">void</font>*)f, fArg2Int); 00683     }00684     dbUserFunction(real8 (*f)(dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00685         bind(name, (<font class="keywordtype">void</font>*)f, fArg2Real); 00686     }00687 00688     dbUserFunction(<font class="keywordtype">bool</font> (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00689         bind(name, (<font class="keywordtype">void</font>*)f, fArgArg2Bool); 00690     }00691     dbUserFunction(<font class="keywordtype">char</font>* (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00692         bind(name, (<font class="keywordtype">void</font>*)f, fArgArg2Str); 00693     }00694     dbUserFunction(db_int8 (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00695         bind(name, (<font class="keywordtype">void</font>*)f, fArgArg2Int); 00696     }00697     dbUserFunction(real8 (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00698         bind(name, (<font class="keywordtype">void</font>*)f, fArgArg2Real); 00699     }00700 00701 00702     dbUserFunction(<font class="keywordtype">bool</font> (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00703         bind(name, (<font class="keywordtype">void</font>*)f, fArgArgArg2Bool); 00704     }00705     dbUserFunction(<font class="keywordtype">char</font>* (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00706         bind(name, (<font class="keywordtype">void</font>*)f, fArgArgArg2Str); 00707     }00708     dbUserFunction(db_int8 (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00709         bind(name, (<font class="keywordtype">void</font>*)f, fArgArgArg2Int); 00710     }00711     dbUserFunction(real8 (*f)(dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;, dbUserFunctionArgument&amp;), <font class="keywordtype">char</font>* name) { 00712         bind(name, (<font class="keywordtype">void</font>*)f, fArgArgArg2Real); 00713     }00714 };00715 00716 <font class="preprocessor">#endif</font>00717 <font class="preprocessor"></font>00718 00719 </pre></div><hr><address align="right"><small>Generated on Fri Nov 15 21:06:29 2002 for FastDB by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.15 </small></address></body></html>

⌨️ 快捷键说明

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