1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
|
\hypertarget{xbxbase_8h_source}{}\doxysection{xbxbase.\+h}
\label{xbxbase_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbxbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbxbase.h}}
\mbox{\hyperlink{xbxbase_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbxbase.h}}
\DoxyCodeLine{2 \textcolor{comment}{}}
\DoxyCodeLine{3 \textcolor{comment}{XBase64 Software Library}}
\DoxyCodeLine{4 \textcolor{comment}{}}
\DoxyCodeLine{5 \textcolor{comment}{Copyright (c) 1997,2003,2014,2022,2023 Gary A Kunkel}}
\DoxyCodeLine{6 \textcolor{comment}{}}
\DoxyCodeLine{7 \textcolor{comment}{The xb64 software library is covered under the terms of the GPL Version 3, 2007 license.}}
\DoxyCodeLine{8 \textcolor{comment}{}}
\DoxyCodeLine{9 \textcolor{comment}{Email Contact:}}
\DoxyCodeLine{10 \textcolor{comment}{}}
\DoxyCodeLine{11 \textcolor{comment}{ XDB-\/devel@lists.sourceforge.net}}
\DoxyCodeLine{12 \textcolor{comment}{ XDB-\/users@lists.sourceforge.net}}
\DoxyCodeLine{13 \textcolor{comment}{}}
\DoxyCodeLine{14 \textcolor{comment}{*/}}
\DoxyCodeLine{15 }
\DoxyCodeLine{16 }
\DoxyCodeLine{17 \textcolor{preprocessor}{\#ifndef \_\_XB\_XBDBLIST\_H\_\_}}
\DoxyCodeLine{18 \textcolor{preprocessor}{\#define \_\_XB\_XBDBLIST\_H\_\_}}
\DoxyCodeLine{19 }
\DoxyCodeLine{20 \textcolor{preprocessor}{\#ifdef CMAKE\_COMPILER\_IS\_GNUCC}}
\DoxyCodeLine{21 \textcolor{preprocessor}{\#pragma interface}}
\DoxyCodeLine{22 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{23 }
\DoxyCodeLine{24 \textcolor{keyword}{namespace }\mbox{\hyperlink{namespacexb}{xb}}\{}
\DoxyCodeLine{25 }
\DoxyCodeLine{26 \textcolor{keyword}{class }XBDLLEXPORT \mbox{\hyperlink{namespacexb_a4a31fbe9110c9e55495ce71e642d785c}{xbLog}};}
\DoxyCodeLine{27 }
\DoxyCodeLine{28 \textcolor{comment}{/************************************************************************/}}
\DoxyCodeLine{29 \textcolor{comment}{/* }}
\DoxyCodeLine{30 \textcolor{comment}{ Xbase functions}}
\DoxyCodeLine{31 \textcolor{comment}{}}
\DoxyCodeLine{32 \textcolor{comment}{ Min Parm Count is the minimum number of input parms needed by the function}}
\DoxyCodeLine{33 \textcolor{comment}{}}
\DoxyCodeLine{34 \textcolor{comment}{ Return Type}}
\DoxyCodeLine{35 \textcolor{comment}{ C Char or string}}
\DoxyCodeLine{36 \textcolor{comment}{ D Date}}
\DoxyCodeLine{37 \textcolor{comment}{ L Logical}}
\DoxyCodeLine{38 \textcolor{comment}{ N Numeric}}
\DoxyCodeLine{39 \textcolor{comment}{ 1 Varies -\/ pull return type from first sibling}}
\DoxyCodeLine{40 \textcolor{comment}{ 2 Varies -\/ pull return type from second sibling}}
\DoxyCodeLine{41 \textcolor{comment}{*/}}
\DoxyCodeLine{42 }
\DoxyCodeLine{43 \textcolor{preprocessor}{\#ifdef XB\_FUNCTION\_SUPPORT}}
\DoxyCodeLine{44 }
\DoxyCodeLine{45 \textcolor{comment}{/*}}
\DoxyCodeLine{46 \textcolor{comment}{struct XBDLLEXPORT xbFunctionInfo \{}}
\DoxyCodeLine{47 \textcolor{comment}{ const char * FuncName; // function name}}
\DoxyCodeLine{48 \textcolor{comment}{ char ReturnType; // return type of function}}
\DoxyCodeLine{49 \textcolor{comment}{ xbInt16 iReturnLenCalc; // used to calculate the function return value is}}
\DoxyCodeLine{50 \textcolor{comment}{ // 1 = use value specified in iReturnLenVal}}
\DoxyCodeLine{51 \textcolor{comment}{ // 2 = use length of operand specified in col 4}}
\DoxyCodeLine{52 \textcolor{comment}{ // 3 = use valued of numeric operand specified in col 4}}
\DoxyCodeLine{53 \textcolor{comment}{ // 4 = length of parm 1 * numeric value parm}}
\DoxyCodeLine{54 \textcolor{comment}{ // 5 = larger length of parm 2 or length of parm 3}}
\DoxyCodeLine{55 \textcolor{comment}{ // 6 = if two or more parms, use numeric value from second parm,}}
\DoxyCodeLine{56 \textcolor{comment}{ // otherwise use col4 value}}
\DoxyCodeLine{57 \textcolor{comment}{ xbInt16 iReturnLenVal; // Used in combination with iReturnLenCalc}}
\DoxyCodeLine{58 \textcolor{comment}{}}
\DoxyCodeLine{59 \textcolor{comment}{\};}}
\DoxyCodeLine{60 \textcolor{comment}{*/}}
\DoxyCodeLine{61 \textcolor{comment}{/*}}
\DoxyCodeLine{62 \textcolor{comment}{static xbFunctionInfo FunctionList[] =}}
\DoxyCodeLine{63 \textcolor{comment}{// Func Return -\/Rtrn Len-\/}}
\DoxyCodeLine{64 \textcolor{comment}{// Name Type -\/Calc Val-\/}}
\DoxyCodeLine{65 \textcolor{comment}{\{}}
\DoxyCodeLine{66 \textcolor{comment}{ \{ "{}ABS"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{67 \textcolor{comment}{ \{ "{}ALLTRIM"{}, 'C', 2, 1 \},}}
\DoxyCodeLine{68 \textcolor{comment}{ \{ "{}ASC"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{69 \textcolor{comment}{ \{ "{}AT"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{70 \textcolor{comment}{ \{ "{}CDOW"{}, 'C', 1, 9 \},}}
\DoxyCodeLine{71 \textcolor{comment}{ \{ "{}CHR"{}, 'C', 1, 1 \},}}
\DoxyCodeLine{72 \textcolor{comment}{ \{ "{}CMONTH"{}, 'C', 1, 9 \},}}
\DoxyCodeLine{73 \textcolor{comment}{ \{ "{}CTOD"{}, 'D', 1, 8 \},}}
\DoxyCodeLine{74 \textcolor{comment}{ \{ "{}DATE"{}, 'D', 1, 8 \},}}
\DoxyCodeLine{75 \textcolor{comment}{ \{ "{}DAY"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{76 \textcolor{comment}{ \{ "{}DEL"{}, 'C', 1, 1 \},}}
\DoxyCodeLine{77 \textcolor{comment}{ \{ "{}DELETED"{}, 'L', 1, 1 \},}}
\DoxyCodeLine{78 \textcolor{comment}{ \{ "{}DESCEND"{}, '1', 2, 1 \},}}
\DoxyCodeLine{79 \textcolor{comment}{ \{ "{}DOW"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{80 \textcolor{comment}{ \{ "{}DTOC"{}, 'C', 1, 8 \},}}
\DoxyCodeLine{81 \textcolor{comment}{ \{ "{}DTOS"{}, 'C', 1, 8 \},}}
\DoxyCodeLine{82 \textcolor{comment}{ \{ "{}EXP"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{83 \textcolor{comment}{ \{ "{}IIF"{}, 'C', 5, 0 \},}}
\DoxyCodeLine{84 \textcolor{comment}{ \{ "{}INT"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{85 \textcolor{comment}{ \{ "{}ISALPHA"{}, 'L', 1, 1 \},}}
\DoxyCodeLine{86 \textcolor{comment}{ \{ "{}ISLOWER"{}, 'L', 1, 1 \},}}
\DoxyCodeLine{87 \textcolor{comment}{ \{ "{}ISUPPER"{}, 'L', 1, 1 \},}}
\DoxyCodeLine{88 \textcolor{comment}{ \{ "{}LEFT"{}, 'C', 3, 2 \},}}
\DoxyCodeLine{89 \textcolor{comment}{ \{ "{}LEN"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{90 \textcolor{comment}{ \{ "{}LOG"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{91 \textcolor{comment}{ \{ "{}LOWER"{}, 'C', 2, 1 \},}}
\DoxyCodeLine{92 \textcolor{comment}{ \{ "{}LTRIM"{}, 'C', 2, 1 \},}}
\DoxyCodeLine{93 \textcolor{comment}{ \{ "{}MAX"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{94 \textcolor{comment}{ \{ "{}MIN"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{95 \textcolor{comment}{ \{ "{}MONTH"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{96 \textcolor{comment}{ \{ "{}RECNO"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{97 \textcolor{comment}{ \{ "{}RECCOUNT"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{98 \textcolor{comment}{ \{ "{}REPLICATE"{}, 'C', 4, 0 \},}}
\DoxyCodeLine{99 \textcolor{comment}{ \{ "{}RIGHT"{}, 'C', 3, 2 \},}}
\DoxyCodeLine{100 \textcolor{comment}{ \{ "{}RTRIM"{}, 'C', 2, 1 \},}}
\DoxyCodeLine{101 \textcolor{comment}{ \{ "{}SPACE"{}, 'C', 3, 1 \},}}
\DoxyCodeLine{102 \textcolor{comment}{ \{ "{}SQRT"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{103 \textcolor{comment}{ \{ "{}STOD"{}, 'D', 1, 8 \},}}
\DoxyCodeLine{104 \textcolor{comment}{ \{ "{}STR"{}, 'C', 6, 10 \},}}
\DoxyCodeLine{105 \textcolor{comment}{ \{ "{}STRZERO"{}, 'C', 3, 2 \},}}
\DoxyCodeLine{106 \textcolor{comment}{ \{ "{}SUBSTR"{}, 'C', 3, 3 \},}}
\DoxyCodeLine{107 \textcolor{comment}{ \{ "{}TRIM"{}, 'C', 2, 1 \},}}
\DoxyCodeLine{108 \textcolor{comment}{ \{ "{}UPPER"{}, 'C', 2, 1 \},}}
\DoxyCodeLine{109 \textcolor{comment}{ \{ "{}VAL"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{110 \textcolor{comment}{ \{ "{}YEAR"{}, 'N', 1, 4 \},}}
\DoxyCodeLine{111 \textcolor{comment}{ \{ 0, 0, 0, 0 \},}}
\DoxyCodeLine{112 \textcolor{comment}{\};}}
\DoxyCodeLine{113 \textcolor{comment}{*/}}
\DoxyCodeLine{114 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{115 }
\DoxyCodeLine{116 }
\DoxyCodeLine{117 }
\DoxyCodeLine{119 }
\DoxyCodeLine{123 \textcolor{keyword}{class }XBDLLEXPORT \mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} : \textcolor{keyword}{public} \mbox{\hyperlink{classxb_1_1xbTblMgr}{xbTblMgr}}\{}
\DoxyCodeLine{124 \textcolor{keyword}{public}:}
\DoxyCodeLine{125 \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}}();}
\DoxyCodeLine{126 \mbox{\hyperlink{classxb_1_1xbXBase}{\string~xbXBase}}();}
\DoxyCodeLine{127 }
\DoxyCodeLine{128 xbInt16 CloseAllTables();}
\DoxyCodeLine{129 \textcolor{keywordtype}{void} DisableMsgLogging();}
\DoxyCodeLine{130 \textcolor{keywordtype}{void} EnableMsgLogging ();}
\DoxyCodeLine{131 xbInt16 FlushLog();}
\DoxyCodeLine{132 }
\DoxyCodeLine{133 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetLogDirectory () \textcolor{keyword}{const};}
\DoxyCodeLine{134 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetLogFileName () \textcolor{keyword}{const};}
\DoxyCodeLine{135 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetLogFqFileName() \textcolor{keyword}{const};}
\DoxyCodeLine{136 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetLogStatus () \textcolor{keyword}{const};}
\DoxyCodeLine{137 }
\DoxyCodeLine{138 xbInt16 \mbox{\hyperlink{classxb_1_1xbXBase_aa957eb502ecd076e5df89e7415cb094b}{OpenHighestVersion}}( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} \&dbf, \textcolor{keywordtype}{int} dummy );}
\DoxyCodeLine{139 xbInt16 OpenHighestVersion( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} **dbf );}
\DoxyCodeLine{140 }
\DoxyCodeLine{141 \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * Open( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, xbInt16 \&iRc );}
\DoxyCodeLine{142 \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * Open( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, xbInt16 iOpenMode, xbInt16 iShareMode, xbInt16 iVersion, xbInt16 \&iRc );}
\DoxyCodeLine{143 \textcolor{keywordtype}{void} SetLogDirectory( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogFileDirectory );}
\DoxyCodeLine{144 \textcolor{keywordtype}{void} SetLogFileName ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogFileName );}
\DoxyCodeLine{145 \textcolor{keywordtype}{void} SetLogSize ( \textcolor{keywordtype}{size\_t} lSize );}
\DoxyCodeLine{146 xbInt16 WriteLogMessage( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogMessage, xbInt16 iOutputOpt = 0 );}
\DoxyCodeLine{147 xbInt16 WriteLogBytes ( xbUInt32 lCnt, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p );}
\DoxyCodeLine{148 }
\DoxyCodeLine{149 \textcolor{keywordtype}{void} xbSleep ( xbInt32 lMillisecs );}
\DoxyCodeLine{150 }
\DoxyCodeLine{151 xbInt16 GetCmdLineOpt ( xbInt32 lArgc, \textcolor{keywordtype}{char} **argv, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sOptRqst, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sParmOut );}
\DoxyCodeLine{152 xbInt16 GetCmdLineOpt ( xbInt32 lArgc, \textcolor{keywordtype}{char} **argv, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOptRqst, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sParmOut );}
\DoxyCodeLine{153 }
\DoxyCodeLine{154 }
\DoxyCodeLine{155 \textcolor{comment}{/* xbase functions */}}
\DoxyCodeLine{156 \textcolor{preprocessor}{ \#ifdef XB\_FUNCTION\_SUPPORT}}
\DoxyCodeLine{157 xbInt16 ABS( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
\DoxyCodeLine{158 xbInt16 ALLTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{159 xbInt16 ASC( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dAscOut );}
\DoxyCodeLine{160 xbInt16 AT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sSrchFor, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sBase, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dPos );}
\DoxyCodeLine{161 xbInt16 CDOW( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutDow );}
\DoxyCodeLine{162 xbInt16 CHR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dAsciCd, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{163 xbInt16 CMONTH( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutMonth );}
\DoxyCodeLine{164 xbInt16 CTOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sInDate, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
\DoxyCodeLine{165 xbInt16 DATE( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
\DoxyCodeLine{166 xbInt16 DAY( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOutDay );}
\DoxyCodeLine{167 xbInt16 DEL( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut, xbInt16 iRecBufSw = 0 );}
\DoxyCodeLine{168 xbInt16 DELETED( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bOut, xbInt16 iRecBufSw = 0 );}
\DoxyCodeLine{169 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{170 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
\DoxyCodeLine{171 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dsOut );}
\DoxyCodeLine{172 xbInt16 DOW( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&sInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dDowOut );}
\DoxyCodeLine{173 xbInt16 DTOC( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutFmtDate );}
\DoxyCodeLine{174 xbInt16 DTOS( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutFmtDate );}
\DoxyCodeLine{175 xbInt16 EXP( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
\DoxyCodeLine{176 xbInt16 IIF( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bResult, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTrueResult, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFalseResult, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sResult );}
\DoxyCodeLine{177 xbInt16 INT( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
\DoxyCodeLine{178 xbInt16 ISALPHA( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
\DoxyCodeLine{179 xbInt16 ISLOWER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
\DoxyCodeLine{180 xbInt16 ISUPPER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
\DoxyCodeLine{181 xbInt16 LEFT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 lCharCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{182 xbInt16 LEN( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dLen );}
\DoxyCodeLine{183 xbInt16 LOG( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
\DoxyCodeLine{184 xbInt16 LOWER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{185 xbInt16 LTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sOut );}
\DoxyCodeLine{186 xbInt16 MAX( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn1, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn2, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
\DoxyCodeLine{187 xbInt16 MIN( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn1, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn2, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
\DoxyCodeLine{188 xbInt16 MONTH( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dMonthOut );}
\DoxyCodeLine{189 xbInt16 RECCOUNT( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dRecOut );}
\DoxyCodeLine{190 xbInt16 RECNO( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dRecOut );}
\DoxyCodeLine{191 xbInt16 REPLICATE( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 ulRepCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{192 xbInt16 RIGHT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 iCharCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{193 xbInt16 RTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{194 xbInt16 SPACE( xbInt32 lCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{195 xbInt16 SQRT( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dBase, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dSqrRt );}
\DoxyCodeLine{196 xbInt16 STOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&sDateOut );}
\DoxyCodeLine{197 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{198 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{199 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{200 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sPadChar, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{201 xbInt16 STRZERO( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{202 xbInt16 SUBSTR( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 ulStartPos, xbUInt32 ulLen, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{203 xbInt16 TRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{204 xbInt16 UPPER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
\DoxyCodeLine{205 xbInt16 VAL( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
\DoxyCodeLine{206 xbInt16 YEAR( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOutYear );}
\DoxyCodeLine{207 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{208 }
\DoxyCodeLine{209 \textcolor{keyword}{protected}:}
\DoxyCodeLine{210 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBcd;}
\DoxyCodeLine{211 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbExp;}
\DoxyCodeLine{212 }
\DoxyCodeLine{213 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
\DoxyCodeLine{214 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBlockRead;}
\DoxyCodeLine{215 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
\DoxyCodeLine{216 }
\DoxyCodeLine{217 }
\DoxyCodeLine{218 xbInt16 \mbox{\hyperlink{classxb_1_1xbXBase_ae52e53340593b4253936c1372ec15ee1}{GetFunctionInfo}}( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sExpLine, \textcolor{keywordtype}{char} \&cReturnType, xbInt16 \&iReturnLenCalc, xbInt32 \&lReturnLenVal ) \textcolor{keyword}{const};}
\DoxyCodeLine{219 \textcolor{keyword}{static} xbInt16 xbMemcmp( \textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *s1, \textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *s2, \textcolor{keywordtype}{size\_t} n );}
\DoxyCodeLine{220 }
\DoxyCodeLine{221 \textcolor{keyword}{private}:}
\DoxyCodeLine{222 }
\DoxyCodeLine{223 \textcolor{preprocessor}{\#ifdef XB\_LOGGING\_SUPPORT}}
\DoxyCodeLine{224 \mbox{\hyperlink{namespacexb_a4a31fbe9110c9e55495ce71e642d785c}{xbLog}} *xLog;}
\DoxyCodeLine{225 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{226 }
\DoxyCodeLine{227 \};}
\DoxyCodeLine{228 }
\DoxyCodeLine{229 \} \textcolor{comment}{/* namespace xb */}}
\DoxyCodeLine{230 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_DBLIST\_H\_\_ */}\textcolor{preprocessor}{}}
\end{DoxyCode}
|