/src/libreoffice/include/formula/opcode.hxx
Line | Count | Source |
1 | | /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
2 | | /* |
3 | | * This file is part of the LibreOffice project. |
4 | | * |
5 | | * This Source Code Form is subject to the terms of the Mozilla Public |
6 | | * License, v. 2.0. If a copy of the MPL was not distributed with this |
7 | | * file, You can obtain one at http://mozilla.org/MPL/2.0/. |
8 | | * |
9 | | * This file incorporates work covered by the following license notice: |
10 | | * |
11 | | * Licensed to the Apache Software Foundation (ASF) under one or more |
12 | | * contributor license agreements. See the NOTICE file distributed |
13 | | * with this work for additional information regarding copyright |
14 | | * ownership. The ASF licenses this file to you under the Apache |
15 | | * License, Version 2.0 (the "License"); you may not use this file |
16 | | * except in compliance with the License. You may obtain a copy of |
17 | | * the License at http://www.apache.org/licenses/LICENSE-2.0 . |
18 | | */ |
19 | | |
20 | | #pragma once |
21 | | |
22 | | #include <cassert> |
23 | | #include <sstream> |
24 | | |
25 | | #include <sal/types.h> |
26 | | |
27 | | /* Central definition of OpCodes for spreadsheet functions */ |
28 | | |
29 | | enum OpCode : sal_uInt16 |
30 | | { |
31 | | // Special commands |
32 | | ocPush = 0, |
33 | | // 1 used to be ocCall, which is now a binary operator |
34 | | ocStop = 2, |
35 | | ocExternal = 3, |
36 | | ocName = 4, |
37 | | // 5 used to be SC_OPCODE_EXTERNAL_REF |
38 | | // Jump commands |
39 | | ocIf = 6, |
40 | | ocIfError = 7, |
41 | | ocIfNA = 8, |
42 | | ocChoose = 9, |
43 | | ocLet = 10, |
44 | | ocLambda = 11, |
45 | | // Parentheses and separators |
46 | | ocOpen = 12, |
47 | | ocClose = 13, |
48 | | ocSep = 14, |
49 | | // Special OpCodes |
50 | | ocMissing = 15, |
51 | | ocBad = 16, |
52 | | ocStringXML = 17, |
53 | | ocSpaces = 18, |
54 | | ocWhitespace = 19, |
55 | | ocMatRef = 20, |
56 | | // Access commands |
57 | | /* additional access operators */ |
58 | | ocDBArea = 21, |
59 | | ocTableRef = 22, |
60 | | ocMacro = 23, |
61 | | ocColRowName = 24, |
62 | | ocColRowNameAuto = 25, |
63 | | // Percent operator _follows_ value |
64 | | ocPercentSign = 26, |
65 | | ocArrayOpen = 27, |
66 | | ocArrayClose = 28, |
67 | | ocArrayRowSep = 29, |
68 | | ocArrayColSep = 30, /* some convs use sep != col_sep */ |
69 | | ocTableRefOpen = 31, |
70 | | ocTableRefClose = 32, |
71 | | ocTableRefItemAll = 33, |
72 | | ocTableRefItemHeaders = 34, |
73 | | ocTableRefItemData = 35, |
74 | | ocTableRefItemTotals = 36, |
75 | | ocTableRefItemThisRow = 37, |
76 | | ocStopDiv = 38, |
77 | | ocSkip = 39, /* used to skip raw tokens during string compilation */ |
78 | | ocStringName = 40, /* special OpCode for locally bound names (LET) */ |
79 | | ocDPFieldName = 41, |
80 | | // Error constants |
81 | | ocStartErrors = 42, |
82 | | ocErrNull = 42, |
83 | | ocErrDivZero = 43, |
84 | | ocErrValue = 44, |
85 | | ocErrRef = 45, |
86 | | ocErrName = 46, |
87 | | ocErrNum = 47, |
88 | | ocErrNA = 48, |
89 | | ocErrSpill = 49, |
90 | | ocStopErrors = 50, |
91 | | // Binary operators |
92 | | ocStartBinaryOperators = 51, |
93 | | ocAdd = 51, |
94 | | ocSub = 52, |
95 | | ocMul = 53, |
96 | | ocDiv = 54, |
97 | | ocAmpersand = 55, |
98 | | ocPow = 56, |
99 | | ocEqual = 57, |
100 | | ocNotEqual = 58, |
101 | | ocLess = 59, |
102 | | ocGreater = 60, |
103 | | ocLessEqual = 61, |
104 | | ocGreaterEqual = 62, |
105 | | ocAnd = 63, |
106 | | ocOr = 64, |
107 | | ocIntersect = 65, |
108 | | ocUnion = 66, |
109 | | ocRange = 67, |
110 | | ocCall = 68, |
111 | | ocStopBinaryOperators = 69, |
112 | | |
113 | | /* NOTE: binary and unary operators must be in sequence for compiler! */ |
114 | | |
115 | | // Unary operators |
116 | | ocStartUnaryOperators = 70, |
117 | | ocNegSub = 70, |
118 | | // The @ single-value prefix operator (implicit intersection). |
119 | | ocSingleValue = 71, |
120 | | // The # postfix spilled-range operator: A1# expands to the |
121 | | // spill range of the dynamic-array formula at A1. |
122 | | ocSpill = 72, |
123 | | ocStopUnaryOperators = 73, |
124 | | |
125 | | ocStartFunction = 75, |
126 | | |
127 | | // Functions with no parameters |
128 | | ocStartNoParameters = 75, |
129 | | ocPi = 75, |
130 | | ocRandom = 76, |
131 | | ocTrue = 77, |
132 | | ocFalse = 78, |
133 | | ocGetActDate = 79, |
134 | | ocGetActTime = 80, |
135 | | ocNotAvail = 81, |
136 | | ocCurrent = 82, |
137 | | ocRandomNV = 83, |
138 | | ocStopNoParameters = 84, |
139 | | // Functions with one parameter |
140 | | ocStartOneParameter = 90, |
141 | | ocDeg = 90, /* trigonometric */ |
142 | | ocRad = 91, |
143 | | ocSin = 92, |
144 | | ocCos = 93, |
145 | | ocTan = 94, |
146 | | ocCot = 95, |
147 | | ocArcSin = 96, |
148 | | ocArcCos = 97, |
149 | | ocArcTan = 98, |
150 | | ocArcCot = 99, |
151 | | ocSinHyp = 100, |
152 | | ocCosHyp = 101, |
153 | | ocTanHyp = 102, |
154 | | ocCotHyp = 103, |
155 | | ocArcSinHyp = 104, /* transcendent */ |
156 | | ocArcCosHyp = 105, |
157 | | ocArcTanHyp = 106, |
158 | | ocArcCotHyp = 107, |
159 | | ocCosecant = 108, |
160 | | ocSecant = 109, |
161 | | ocCosecantHyp = 110, |
162 | | ocSecantHyp = 111, |
163 | | ocExp = 112, |
164 | | ocLn = 113, |
165 | | ocSqrt = 114, |
166 | | ocFact = 115, |
167 | | ocGetYear = 116, /* date and time */ |
168 | | ocGetMonth = 117, |
169 | | ocGetDay = 118, |
170 | | ocGetHour = 119, |
171 | | ocGetMin = 120, |
172 | | ocGetSec = 121, |
173 | | ocPlusMinus = 122, /* miscellaneous */ |
174 | | ocAbs = 123, |
175 | | ocInt = 124, |
176 | | ocPhi = 125, |
177 | | ocGauss = 126, |
178 | | ocIsEmpty = 127, /* obtain type */ |
179 | | ocIsString = 128, |
180 | | ocIsNonString = 129, |
181 | | ocIsLogical = 130, |
182 | | ocType = 131, |
183 | | ocIsRef = 132, |
184 | | ocIsValue = 133, |
185 | | ocIsFormula = 134, |
186 | | ocIsNA = 135, |
187 | | ocIsErr = 136, |
188 | | ocIsError = 137, |
189 | | ocIsEven = 138, |
190 | | ocIsOdd = 139, |
191 | | ocN = 140, |
192 | | ocIsOmitted = 141, |
193 | | // String functions |
194 | | ocGetDateValue = 142, |
195 | | ocGetTimeValue = 143, |
196 | | ocCode = 144, |
197 | | ocTrim = 145, |
198 | | ocUpper = 146, |
199 | | ocProper = 147, |
200 | | ocLower = 148, |
201 | | ocLen = 149, |
202 | | ocT = 150, /* miscellaneous, part 21 */ |
203 | | ocValue = 151, |
204 | | ocClean = 152, |
205 | | ocChar = 153, |
206 | | ocLog10 = 154, |
207 | | ocEven = 155, |
208 | | ocOdd = 156, |
209 | | ocStdNormDist = 157, |
210 | | ocFisher = 158, |
211 | | ocFisherInv = 159, |
212 | | ocSNormInv = 160, |
213 | | ocGammaLn = 161, |
214 | | ocErrorType = 162, |
215 | | // 163 was ??? |
216 | | ocFormula = 164, |
217 | | ocArabic = 165, |
218 | | ocInfo = 166, |
219 | | ocBahtText = 167, |
220 | | ocJis = 168, |
221 | | ocAsc = 169, |
222 | | ocUnicode = 170, |
223 | | ocUnichar = 171, |
224 | | ocGamma = 172, |
225 | | ocGammaLn_MS = 173, |
226 | | ocErf_MS = 174, |
227 | | ocErfc_MS = 175, |
228 | | ocErrorType_ODF = 176, |
229 | | ocEncodeURL = 177, |
230 | | ocIsoWeeknum = 178, |
231 | | ocNot = 179, |
232 | | ocNeg = 180, |
233 | | ocStopOneParameter = 181, |
234 | | |
235 | | // Functions with more than one parameter |
236 | | ocStartTwoParameters = 201, |
237 | | ocArcTan2 = 201, |
238 | | ocCeil = 202, |
239 | | ocFloor = 203, |
240 | | ocRound = 204, |
241 | | ocRoundUp = 205, |
242 | | ocRoundDown = 206, |
243 | | ocTrunc = 207, |
244 | | ocLog = 208, |
245 | | ocPower = 209, |
246 | | ocGCD = 210, |
247 | | ocLCM = 211, |
248 | | ocMod = 212, |
249 | | ocSumProduct = 213, |
250 | | ocSumSQ = 214, |
251 | | ocSumX2MY2 = 215, |
252 | | ocSumX2DY2 = 216, |
253 | | ocSumXMY2 = 217, |
254 | | ocGetDate = 218, |
255 | | ocGetTime = 219, |
256 | | ocGetDiffDate = 220, |
257 | | ocGetDiffDate360 = 221, |
258 | | ocMin = 222, |
259 | | ocMax = 223, |
260 | | ocSum = 224, |
261 | | ocProduct = 225, |
262 | | ocAverage = 226, |
263 | | ocCount = 227, |
264 | | ocCount2 = 228, |
265 | | ocNPV = 229, |
266 | | ocIRR = 230, |
267 | | ocVar = 231, |
268 | | ocVarP = 232, |
269 | | ocStDev = 233, |
270 | | ocStDevP = 234, |
271 | | ocB = 235, |
272 | | ocNormDist = 236, |
273 | | ocExpDist = 237, |
274 | | ocBinomDist = 238, |
275 | | ocPoissonDist = 239, |
276 | | ocCombin = 240, |
277 | | ocCombinA = 241, |
278 | | ocPermut = 242, |
279 | | ocPermutationA = 243, |
280 | | ocPV = 244, |
281 | | ocSYD = 245, |
282 | | ocDDB = 246, |
283 | | ocDB = 247, |
284 | | ocVBD = 248, |
285 | | ocPDuration = 249, |
286 | | ocSLN = 250, |
287 | | ocPMT = 251, |
288 | | ocColumns = 252, |
289 | | ocRows = 253, |
290 | | ocColumn = 254, |
291 | | ocRow = 255, |
292 | | ocRRI = 256, |
293 | | ocFV = 257, |
294 | | ocNper = 258, |
295 | | ocRate = 259, |
296 | | ocIpmt = 260, |
297 | | ocPpmt = 261, |
298 | | ocCumIpmt = 262, |
299 | | ocCumPrinc = 263, |
300 | | ocEffect = 264, |
301 | | ocNominal = 265, |
302 | | ocSubTotal = 266, |
303 | | // Database functions |
304 | | ocDBSum = 267, |
305 | | ocDBCount = 268, |
306 | | ocDBCount2 = 269, |
307 | | ocDBAverage = 270, |
308 | | ocDBGet = 271, |
309 | | ocDBMax = 272, |
310 | | ocDBMin = 273, |
311 | | ocDBProduct = 274, |
312 | | ocDBStdDev = 275, |
313 | | ocDBStdDevP = 276, |
314 | | ocDBVar = 277, |
315 | | ocDBVarP = 278, |
316 | | // Management functions |
317 | | ocIndirect = 279, |
318 | | ocAddress = 280, |
319 | | ocMatch = 281, |
320 | | ocCountEmptyCells = 282, |
321 | | ocCountIf = 283, |
322 | | ocSumIf = 284, |
323 | | ocLookup = 285, |
324 | | ocVLookup = 286, |
325 | | ocHLookup = 287, |
326 | | ocMultiArea = 288, |
327 | | ocOffset = 289, |
328 | | ocIndex = 290, |
329 | | ocAreas = 291, |
330 | | // String functions |
331 | | ocCurrency = 292, |
332 | | ocReplace = 293, |
333 | | ocFixed = 294, |
334 | | ocFind = 295, |
335 | | ocExact = 296, |
336 | | ocLeft = 297, |
337 | | ocRight = 298, |
338 | | ocSearch = 299, |
339 | | ocMid = 300, |
340 | | ocText = 301, |
341 | | ocSubstitute = 302, |
342 | | ocRept = 303, |
343 | | ocConcat = 304, |
344 | | // Matrix functions |
345 | | ocMatValue = 305, |
346 | | ocMatDet = 306, |
347 | | ocMatInv = 307, |
348 | | ocMatMult = 308, |
349 | | ocMatTrans = 309, |
350 | | ocMatrixUnit = 310, |
351 | | // BackSolver |
352 | | ocBackSolver = 311, |
353 | | // Statistical functions |
354 | | ocHypGeomDist = 312, |
355 | | ocLogNormDist = 313, |
356 | | ocTDist = 314, |
357 | | ocFDist = 315, |
358 | | ocChiDist = 316, |
359 | | ocWeibull = 317, |
360 | | ocNegBinomVert = 318, |
361 | | ocCritBinom = 319, |
362 | | ocKurt = 320, |
363 | | ocHarMean = 321, |
364 | | ocGeoMean = 322, |
365 | | ocStandard = 323, |
366 | | ocAveDev = 324, |
367 | | ocSkew = 325, |
368 | | ocDevSq = 326, |
369 | | ocMedian = 327, |
370 | | ocModalValue = 328, |
371 | | ocZTest = 329, |
372 | | ocTTest = 330, |
373 | | ocRank = 331, |
374 | | ocPercentile = 332, |
375 | | ocPercentrank = 333, |
376 | | ocLarge = 334, |
377 | | ocSmall = 335, |
378 | | ocFrequency = 336, |
379 | | ocQuartile = 337, |
380 | | ocNormInv = 338, |
381 | | ocConfidence = 339, |
382 | | ocFTest = 340, |
383 | | ocTrimMean = 341, |
384 | | ocProb = 342, |
385 | | ocCorrel = 343, |
386 | | ocCovar = 344, |
387 | | ocPearson = 345, |
388 | | ocRSQ = 346, |
389 | | ocSTEYX = 347, |
390 | | ocSlope = 348, |
391 | | ocIntercept = 349, |
392 | | ocTrend = 350, |
393 | | ocGrowth = 351, |
394 | | ocLinest = 352, |
395 | | ocLogest = 353, |
396 | | ocForecast = 354, |
397 | | ocChiInv = 355, |
398 | | ocGammaDist = 356, |
399 | | ocGammaInv = 357, |
400 | | ocTInv = 358, |
401 | | ocFInv = 359, |
402 | | ocChiTest = 360, |
403 | | ocLogInv = 361, |
404 | | ocTableOp = 362, |
405 | | ocBetaDist = 363, |
406 | | ocBetaInv = 364, |
407 | | // miscellaneous |
408 | | ocWeek = 365, |
409 | | ocGetDayOfWeek = 366, |
410 | | ocNoName = 367, |
411 | | ocStyle = 368, |
412 | | ocDde = 369, |
413 | | ocBase = 370, |
414 | | ocSheet = 371, |
415 | | ocSheets = 372, |
416 | | ocMinA = 373, |
417 | | ocMaxA = 374, |
418 | | ocAverageA = 375, |
419 | | ocStDevA = 376, |
420 | | ocStDevPA = 377, |
421 | | ocVarA = 378, |
422 | | ocVarPA = 379, |
423 | | ocEasterSunday = 380, |
424 | | ocDecimal = 381, |
425 | | ocConvertOOo = 382, |
426 | | ocRoman = 383, |
427 | | ocMIRR = 384, |
428 | | ocCell = 385, |
429 | | ocISPMT = 386, |
430 | | ocHyperLink = 387, |
431 | | ocXLookup = 388, |
432 | | ocXMatch = 389, |
433 | | ocGetPivotData = 390, |
434 | | ocEuroConvert = 391, |
435 | | ocNumberValue = 392, |
436 | | ocChiSqDist = 393, |
437 | | ocChiSqInv = 394, |
438 | | // Bit functions |
439 | | ocBitAnd = 395, |
440 | | ocBitOr = 396, |
441 | | ocBitXor = 397, |
442 | | ocBitRshift = 398, |
443 | | ocBitLshift = 399, |
444 | | ocGetDateDif = 400, |
445 | | ocXor = 401, |
446 | | ocAverageIf = 402, |
447 | | ocSumIfs = 403, |
448 | | ocAverageIfs = 404, |
449 | | ocCountIfs = 405, |
450 | | ocSkewp = 406, |
451 | | ocLenB = 407, |
452 | | ocRightB = 408, |
453 | | ocLeftB = 409, |
454 | | ocMidB = 410, |
455 | | ocFilterXML = 411, |
456 | | ocWebservice = 412, |
457 | | ocCovarianceS = 413, |
458 | | ocCovarianceP = 414, |
459 | | ocStDevP_MS = 415, |
460 | | ocStDevS = 416, |
461 | | ocVarP_MS = 417, |
462 | | ocVarS = 418, |
463 | | ocBetaDist_MS = 419, |
464 | | ocBetaInv_MS = 420, |
465 | | ocBinomDist_MS = 421, |
466 | | ocBinomInv = 422, |
467 | | ocChiDist_MS = 423, |
468 | | ocChiInv_MS = 424, |
469 | | ocChiTest_MS = 425, |
470 | | ocChiSqDist_MS = 426, |
471 | | ocChiSqInv_MS = 427, |
472 | | ocConfidence_N = 428, |
473 | | ocConfidence_T = 429, |
474 | | ocFDist_LT = 430, |
475 | | ocFDist_RT = 431, |
476 | | ocFInv_LT = 432, |
477 | | ocFInv_RT = 433, |
478 | | ocFTest_MS = 434, |
479 | | ocExpDist_MS = 435, |
480 | | ocHypGeomDist_MS = 436, |
481 | | ocPoissonDist_MS = 437, |
482 | | ocWeibull_MS = 438, |
483 | | ocGammaDist_MS = 439, |
484 | | ocGammaInv_MS = 440, |
485 | | ocLogNormDist_MS = 441, |
486 | | ocLogInv_MS = 442, |
487 | | ocNormDist_MS = 443, |
488 | | ocNormInv_MS = 444, |
489 | | ocStdNormDist_MS = 445, |
490 | | ocSNormInv_MS = 446, |
491 | | ocTDist_MS = 447, |
492 | | ocTDist_RT = 448, |
493 | | ocTDist_2T = 449, |
494 | | ocTInv_2T = 450, |
495 | | ocTInv_MS = 451, |
496 | | ocTTest_MS = 452, |
497 | | ocPercentile_Inc = 453, |
498 | | ocPercentrank_Inc = 454, |
499 | | ocQuartile_Inc = 455, |
500 | | ocRank_Eq = 456, |
501 | | ocPercentile_Exc = 457, |
502 | | ocPercentrank_Exc = 458, |
503 | | ocQuartile_Exc = 459, |
504 | | ocRank_Avg = 460, |
505 | | ocModalValue_MS = 461, |
506 | | ocModalValue_Multi = 462, |
507 | | ocNegBinomDist_MS = 463, |
508 | | ocZTest_MS = 464, |
509 | | ocCeil_MS = 465, |
510 | | ocCeil_ISO = 466, |
511 | | ocFloor_MS = 467, |
512 | | ocNetWorkdays_MS = 468, |
513 | | ocWorkday_MS = 469, |
514 | | ocAggregate = 470, |
515 | | ocColor = 471, |
516 | | ocCeil_Math = 472, |
517 | | ocCeil_Precise = 473, |
518 | | ocNetWorkdays = 474, |
519 | | ocFloor_Math = 475, |
520 | | ocFloor_Precise = 476, |
521 | | ocRawSubtract = 477, |
522 | | ocWeeknumOOo = 478, |
523 | | ocForecast_ETS_ADD = 479, |
524 | | ocForecast_ETS_SEA = 480, |
525 | | ocForecast_ETS_MUL = 481, |
526 | | ocForecast_ETS_PIA = 482, |
527 | | ocForecast_ETS_PIM = 483, |
528 | | ocForecast_ETS_STA = 484, |
529 | | ocForecast_ETS_STM = 485, |
530 | | ocForecast_LIN = 486, |
531 | | ocConcat_MS = 487, |
532 | | ocTextJoin_MS = 488, |
533 | | ocIfs_MS = 489, |
534 | | ocSwitch_MS = 490, |
535 | | ocMinIfs_MS = 491, |
536 | | ocMaxIfs_MS = 492, |
537 | | ocRoundSig = 493, |
538 | | ocReplaceB = 494, |
539 | | ocFindB = 495, |
540 | | ocSearchB = 496, |
541 | | ocRegex = 497, |
542 | | ocFourier = 498, |
543 | | ocRandbetweenNV = 499, |
544 | | ocFilter = 500, |
545 | | ocSort = 501, |
546 | | ocSortBy = 502, |
547 | | ocMatSequence = 503, |
548 | | ocRandArray = 504, |
549 | | ocChooseCols = 505, |
550 | | ocChooseRows = 506, |
551 | | ocDrop = 507, |
552 | | ocExpand = 508, |
553 | | ocHStack = 509, |
554 | | ocVStack = 510, |
555 | | ocTake = 511, |
556 | | ocTextAfter = 512, |
557 | | ocTextBefore = 513, |
558 | | ocTextSplit = 514, |
559 | | ocToCol = 515, |
560 | | ocToRow = 516, |
561 | | ocUnique = 517, |
562 | | ocWrapCols = 518, |
563 | | ocWrapRows = 519, |
564 | | ocUDExternal = 520, /* User-defined external function */ |
565 | | ocByCol = 521, |
566 | | ocByRow = 522, |
567 | | ocMakeArray = 523, |
568 | | ocMap = 524, |
569 | | ocReduce = 525, |
570 | | ocScan = 526, |
571 | | ocArrayToText = 527, |
572 | | ocStopTwoParameters = 528, /* last function with two or more parameters' OpCode + 1 */ |
573 | | |
574 | | ocStopFunction = ocStopTwoParameters, /* last function's OpCode + 1 */ |
575 | | ocLastOpcodeId = ocStopFunction - 1, /* last OpCode */ |
576 | | |
577 | | // internal stuff |
578 | | ocInternalBegin = 9999, |
579 | | ocTTT = 9999, |
580 | | ocDebugVar = 10000, |
581 | | ocInternalEnd = 10000, |
582 | | // from here on ExtraData |
583 | | ocDataToken1 = 10001, |
584 | | // no OpCode |
585 | | ocNone = 0xFFFF |
586 | | }; |
587 | | |
588 | | // Only to be used for debugging output. No guarantee of stability of the |
589 | | // return value. |
590 | | |
591 | | // Turn this into an operator<< when OpCode becomes a scoped enum |
592 | | |
593 | | inline std::string OpCodeEnumToString(OpCode eCode) |
594 | 0 | { |
595 | 0 | switch (eCode) |
596 | 0 | { |
597 | 0 | case ocPush: return "Push"; |
598 | 0 | case ocStop: return "Stop"; |
599 | 0 | case ocExternal: return "External"; |
600 | 0 | case ocUDExternal: return "UDExternal"; |
601 | 0 | case ocName: return "Name"; |
602 | 0 | case ocIf: return "If"; |
603 | 0 | case ocIfError: return "IfError"; |
604 | 0 | case ocIfNA: return "IfNA"; |
605 | 0 | case ocChoose: return "Choose"; |
606 | 0 | case ocLet: return "Let"; |
607 | 0 | case ocOpen: return "Open"; |
608 | 0 | case ocClose: return "Close"; |
609 | 0 | case ocTableRefOpen: return "TableRefOpen"; |
610 | 0 | case ocTableRefClose: return "TableRefClose"; |
611 | 0 | case ocSep: return "Sep"; |
612 | 0 | case ocArrayOpen: return "ArrayOpen"; |
613 | 0 | case ocArrayClose: return "ArrayClose"; |
614 | 0 | case ocArrayRowSep: return "ArrayRowSep"; |
615 | 0 | case ocArrayColSep: return "ArrayColSep"; |
616 | 0 | case ocMissing: return "Missing"; |
617 | 0 | case ocBad: return "Bad"; |
618 | 0 | case ocStringXML: return "StringXML"; |
619 | 0 | case ocStringName: return "StringName"; |
620 | 0 | case ocSpaces: return "Spaces"; |
621 | 0 | case ocWhitespace: return "Whitespace"; |
622 | 0 | case ocMatRef: return "MatRef"; |
623 | 0 | case ocTableRefItemAll: return "TableRefItemAll"; |
624 | 0 | case ocTableRefItemHeaders: return "TableRefItemHeaders"; |
625 | 0 | case ocTableRefItemData: return "TableRefItemData"; |
626 | 0 | case ocTableRefItemTotals: return "TableRefItemTotals"; |
627 | 0 | case ocTableRefItemThisRow: return "TableRefItemThisRow"; |
628 | 0 | case ocSkip: return "Skip"; |
629 | 0 | case ocDBArea: return "DBArea"; |
630 | 0 | case ocTableRef: return "TableRef"; |
631 | 0 | case ocMacro: return "Macro"; |
632 | 0 | case ocColRowName: return "ColRowName"; |
633 | 0 | case ocColRowNameAuto: return "ColRowNameAuto"; |
634 | 0 | case ocDPFieldName: return "DPFieldName"; |
635 | 0 | case ocPercentSign: return "PercentSign"; |
636 | 0 | case ocErrNull: return "ErrNull"; |
637 | 0 | case ocErrDivZero: return "ErrDivZero"; |
638 | 0 | case ocErrValue: return "ErrValue"; |
639 | 0 | case ocErrRef: return "ErrRef"; |
640 | 0 | case ocErrName: return "ErrName"; |
641 | 0 | case ocErrNum: return "ErrNum"; |
642 | 0 | case ocErrNA: return "ErrNA"; |
643 | 0 | case ocErrSpill: return "ErrSpill"; |
644 | 0 | case ocAdd: return "Add"; |
645 | 0 | case ocSub: return "Sub"; |
646 | 0 | case ocMul: return "Mul"; |
647 | 0 | case ocDiv: return "Div"; |
648 | 0 | case ocAmpersand: return "Ampersand"; |
649 | 0 | case ocPow: return "Pow"; |
650 | 0 | case ocEqual: return "Equal"; |
651 | 0 | case ocNotEqual: return "NotEqual"; |
652 | 0 | case ocLess: return "Less"; |
653 | 0 | case ocGreater: return "Greater"; |
654 | 0 | case ocLessEqual: return "LessEqual"; |
655 | 0 | case ocGreaterEqual: return "GreaterEqual"; |
656 | 0 | case ocAnd: return "And"; |
657 | 0 | case ocOr: return "Or"; |
658 | 0 | case ocXor: return "Xor"; |
659 | 0 | case ocIntersect: return "Intersect"; |
660 | 0 | case ocUnion: return "Union"; |
661 | 0 | case ocRange: return "Range"; |
662 | 0 | case ocCall: return "Call"; |
663 | 0 | case ocSpill: return "SpilledRange"; |
664 | 0 | case ocNot: return "Not"; |
665 | 0 | case ocNeg: return "Neg"; |
666 | 0 | case ocNegSub: return "NegSub"; |
667 | 0 | case ocSingleValue: return "SingleValue"; |
668 | 0 | case ocPi: return "Pi"; |
669 | 0 | case ocRandom: return "Random"; |
670 | 0 | case ocRandomNV: return "RandomNV"; |
671 | 0 | case ocTrue: return "True"; |
672 | 0 | case ocFalse: return "False"; |
673 | 0 | case ocGetActDate: return "GetActDate"; |
674 | 0 | case ocGetActTime: return "GetActTime"; |
675 | 0 | case ocNotAvail: return "NotAvail"; |
676 | 0 | case ocCurrent: return "Current"; |
677 | 0 | case ocDeg: return "Deg"; |
678 | 0 | case ocRad: return "Rad"; |
679 | 0 | case ocSin: return "Sin"; |
680 | 0 | case ocCos: return "Cos"; |
681 | 0 | case ocTan: return "Tan"; |
682 | 0 | case ocCot: return "Cot"; |
683 | 0 | case ocArcSin: return "ArcSin"; |
684 | 0 | case ocArcCos: return "ArcCos"; |
685 | 0 | case ocArcTan: return "ArcTan"; |
686 | 0 | case ocArcCot: return "ArcCot"; |
687 | 0 | case ocSinHyp: return "SinHyp"; |
688 | 0 | case ocCosHyp: return "CosHyp"; |
689 | 0 | case ocTanHyp: return "TanHyp"; |
690 | 0 | case ocCotHyp: return "CotHyp"; |
691 | 0 | case ocArcSinHyp: return "ArcSinHyp"; |
692 | 0 | case ocArcCosHyp: return "ArcCosHyp"; |
693 | 0 | case ocArcTanHyp: return "ArcTanHyp"; |
694 | 0 | case ocArcCotHyp: return "ArcCotHyp"; |
695 | 0 | case ocCosecant: return "Cosecant"; |
696 | 0 | case ocSecant: return "Secant"; |
697 | 0 | case ocCosecantHyp: return "CosecantHyp"; |
698 | 0 | case ocSecantHyp: return "SecantHyp"; |
699 | 0 | case ocExp: return "Exp"; |
700 | 0 | case ocLn: return "Ln"; |
701 | 0 | case ocSqrt: return "Sqrt"; |
702 | 0 | case ocFact: return "Fact"; |
703 | 0 | case ocGetYear: return "GetYear"; |
704 | 0 | case ocGetMonth: return "GetMonth"; |
705 | 0 | case ocGetDay: return "GetDay"; |
706 | 0 | case ocGetHour: return "GetHour"; |
707 | 0 | case ocGetMin: return "GetMin"; |
708 | 0 | case ocGetSec: return "GetSec"; |
709 | 0 | case ocPlusMinus: return "PlusMinus"; |
710 | 0 | case ocAbs: return "Abs"; |
711 | 0 | case ocInt: return "Int"; |
712 | 0 | case ocPhi: return "Phi"; |
713 | 0 | case ocGauss: return "Gauss"; |
714 | 0 | case ocIsEmpty: return "IsEmpty"; |
715 | 0 | case ocIsString: return "IsString"; |
716 | 0 | case ocIsNonString: return "IsNonString"; |
717 | 0 | case ocIsLogical: return "IsLogical"; |
718 | 0 | case ocType: return "Type"; |
719 | 0 | case ocCell: return "Cell"; |
720 | 0 | case ocIsRef: return "IsRef"; |
721 | 0 | case ocIsValue: return "IsValue"; |
722 | 0 | case ocIsFormula: return "IsFormula"; |
723 | 0 | case ocIsNA: return "IsNA"; |
724 | 0 | case ocIsErr: return "IsErr"; |
725 | 0 | case ocIsError: return "IsError"; |
726 | 0 | case ocIsEven: return "IsEven"; |
727 | 0 | case ocIsOdd: return "IsOdd"; |
728 | 0 | case ocN: return "N"; |
729 | 0 | case ocGetDateValue: return "GetDateValue"; |
730 | 0 | case ocGetTimeValue: return "GetTimeValue"; |
731 | 0 | case ocCode: return "Code"; |
732 | 0 | case ocTrim: return "Trim"; |
733 | 0 | case ocUpper: return "Upper"; |
734 | 0 | case ocProper: return "Proper"; |
735 | 0 | case ocLower: return "Lower"; |
736 | 0 | case ocLen: return "Len"; |
737 | 0 | case ocT: return "T"; |
738 | 0 | case ocValue: return "Value"; |
739 | 0 | case ocClean: return "Clean"; |
740 | 0 | case ocChar: return "Char"; |
741 | 0 | case ocLog10: return "Log10"; |
742 | 0 | case ocEven: return "Even"; |
743 | 0 | case ocOdd: return "Odd"; |
744 | 0 | case ocStdNormDist: return "StdNormDist"; |
745 | 0 | case ocStdNormDist_MS: return "StdNormDist_MS"; |
746 | 0 | case ocFisher: return "Fisher"; |
747 | 0 | case ocFisherInv: return "FisherInv"; |
748 | 0 | case ocSNormInv: return "SNormInv"; |
749 | 0 | case ocSNormInv_MS: return "SNormInv_MS"; |
750 | 0 | case ocGammaLn: return "GammaLn"; |
751 | 0 | case ocGammaLn_MS: return "GammaLn_MS"; |
752 | 0 | case ocGamma: return "Gamma"; |
753 | 0 | case ocErrorType: return "ErrorType"; |
754 | 0 | case ocErrorType_ODF: return "ErrorType_ODF"; |
755 | 0 | case ocFormula: return "Formula"; |
756 | 0 | case ocArabic: return "Arabic"; |
757 | 0 | case ocInfo: return "Info"; |
758 | 0 | case ocBahtText: return "BahtText"; |
759 | 0 | case ocJis: return "Jis"; |
760 | 0 | case ocAsc: return "Asc"; |
761 | 0 | case ocUnicode: return "Unicode"; |
762 | 0 | case ocUnichar: return "Unichar"; |
763 | 0 | case ocArcTan2: return "ArcTan2"; |
764 | 0 | case ocCeil: return "Ceil"; |
765 | 0 | case ocCeil_MS: return "Ceil_MS"; |
766 | 0 | case ocCeil_Precise: return "Ceil_Precise"; |
767 | 0 | case ocCeil_ISO: return "Ceil_ISO"; |
768 | 0 | case ocCeil_Math: return "Ceil_Math"; |
769 | 0 | case ocFloor: return "Floor"; |
770 | 0 | case ocFloor_MS: return "Floor_MS"; |
771 | 0 | case ocFloor_Math: return "Floor_Math"; |
772 | 0 | case ocFloor_Precise: return "Floor_Precise"; |
773 | 0 | case ocRound: return "Round"; |
774 | 0 | case ocRoundUp: return "RoundUp"; |
775 | 0 | case ocRoundDown: return "RoundDown"; |
776 | 0 | case ocTrunc: return "Trunc"; |
777 | 0 | case ocLog: return "Log"; |
778 | 0 | case ocPower: return "Power"; |
779 | 0 | case ocGCD: return "GCD"; |
780 | 0 | case ocLCM: return "LCM"; |
781 | 0 | case ocMod: return "Mod"; |
782 | 0 | case ocSumProduct: return "SumProduct"; |
783 | 0 | case ocSumSQ: return "SumSQ"; |
784 | 0 | case ocSumX2MY2: return "SumX2MY2"; |
785 | 0 | case ocSumX2DY2: return "SumX2DY2"; |
786 | 0 | case ocSumXMY2: return "SumXMY2"; |
787 | 0 | case ocGetDate: return "GetDate"; |
788 | 0 | case ocGetTime: return "GetTime"; |
789 | 0 | case ocGetDiffDate: return "GetDiffDate"; |
790 | 0 | case ocGetDiffDate360: return "GetDiffDate360"; |
791 | 0 | case ocGetDateDif: return "GetDateDif"; |
792 | 0 | case ocMin: return "Min"; |
793 | 0 | case ocMax: return "Max"; |
794 | 0 | case ocSum: return "Sum"; |
795 | 0 | case ocProduct: return "Product"; |
796 | 0 | case ocAverage: return "Average"; |
797 | 0 | case ocCount: return "Count"; |
798 | 0 | case ocCount2: return "Count2"; |
799 | 0 | case ocNPV: return "NPV"; |
800 | 0 | case ocIRR: return "IRR"; |
801 | 0 | case ocMIRR: return "MIRR"; |
802 | 0 | case ocISPMT: return "ISPMT"; |
803 | 0 | case ocVar: return "Var"; |
804 | 0 | case ocVarP: return "VarP"; |
805 | 0 | case ocVarP_MS: return "VarP_MS"; |
806 | 0 | case ocVarS: return "VarS"; |
807 | 0 | case ocStDev: return "StDev"; |
808 | 0 | case ocStDevP: return "StDevP"; |
809 | 0 | case ocStDevP_MS: return "StDevP_MS"; |
810 | 0 | case ocStDevS: return "StDevS"; |
811 | 0 | case ocB: return "B"; |
812 | 0 | case ocNormDist: return "NormDist"; |
813 | 0 | case ocNormDist_MS: return "NormDist_MS"; |
814 | 0 | case ocExpDist: return "ExpDist"; |
815 | 0 | case ocExpDist_MS: return "ExpDist_MS"; |
816 | 0 | case ocBinomDist: return "BinomDist"; |
817 | 0 | case ocBinomDist_MS: return "BinomDist_MS"; |
818 | 0 | case ocBinomInv: return "BinomInv"; |
819 | 0 | case ocPoissonDist: return "PoissonDist"; |
820 | 0 | case ocPoissonDist_MS: return "PoissonDist_MS"; |
821 | 0 | case ocCombin: return "Combin"; |
822 | 0 | case ocCombinA: return "CombinA"; |
823 | 0 | case ocPermut: return "Permut"; |
824 | 0 | case ocPermutationA: return "PermutationA"; |
825 | 0 | case ocPV: return "PV"; |
826 | 0 | case ocSYD: return "SYD"; |
827 | 0 | case ocDDB: return "DDB"; |
828 | 0 | case ocDB: return "DB"; |
829 | 0 | case ocVBD: return "VBD"; |
830 | 0 | case ocPDuration: return "PDuration"; |
831 | 0 | case ocSLN: return "SLN"; |
832 | 0 | case ocPMT: return "PMT"; |
833 | 0 | case ocColumns: return "Columns"; |
834 | 0 | case ocRows: return "Rows"; |
835 | 0 | case ocColumn: return "Column"; |
836 | 0 | case ocRow: return "Row"; |
837 | 0 | case ocRRI: return "RRI"; |
838 | 0 | case ocFV: return "FV"; |
839 | 0 | case ocNper: return "Nper"; |
840 | 0 | case ocRate: return "Rate"; |
841 | 0 | case ocIpmt: return "Ipmt"; |
842 | 0 | case ocPpmt: return "Ppmt"; |
843 | 0 | case ocCumIpmt: return "CumIpmt"; |
844 | 0 | case ocCumPrinc: return "CumPrinc"; |
845 | 0 | case ocEffect: return "Effect"; |
846 | 0 | case ocNominal: return "Nominal"; |
847 | 0 | case ocSubTotal: return "SubTotal"; |
848 | 0 | case ocRawSubtract: return "RawSubtract"; |
849 | 0 | case ocIfs_MS: return "Ifs_MS"; |
850 | 0 | case ocSwitch_MS: return "Switch_MS"; |
851 | 0 | case ocMinIfs_MS: return "MinIfs_MS"; |
852 | 0 | case ocMaxIfs_MS: return "MaxIfs_MS"; |
853 | 0 | case ocRoundSig: return "RoundSig"; |
854 | 0 | case ocDBSum: return "DBSum"; |
855 | 0 | case ocDBCount: return "DBCount"; |
856 | 0 | case ocDBCount2: return "DBCount2"; |
857 | 0 | case ocDBAverage: return "DBAverage"; |
858 | 0 | case ocDBGet: return "DBGet"; |
859 | 0 | case ocDBMax: return "DBMax"; |
860 | 0 | case ocDBMin: return "DBMin"; |
861 | 0 | case ocDBProduct: return "DBProduct"; |
862 | 0 | case ocDBStdDev: return "DBStdDev"; |
863 | 0 | case ocDBStdDevP: return "DBStdDevP"; |
864 | 0 | case ocDBVar: return "DBVar"; |
865 | 0 | case ocDBVarP: return "DBVarP"; |
866 | 0 | case ocIndirect: return "Indirect"; |
867 | 0 | case ocAddress: return "Address"; |
868 | 0 | case ocMatch: return "Match"; |
869 | 0 | case ocXMatch: return "XMatch"; |
870 | 0 | case ocCountEmptyCells: return "CountEmptyCells"; |
871 | 0 | case ocCountIf: return "CountIf"; |
872 | 0 | case ocSumIf: return "SumIf"; |
873 | 0 | case ocAverageIf: return "AverageIf"; |
874 | 0 | case ocSumIfs: return "SumIfs"; |
875 | 0 | case ocAverageIfs: return "AverageIfs"; |
876 | 0 | case ocCountIfs: return "CountIfs"; |
877 | 0 | case ocLookup: return "Lookup"; |
878 | 0 | case ocVLookup: return "VLookup"; |
879 | 0 | case ocXLookup: return "XLookup"; |
880 | 0 | case ocHLookup: return "HLookup"; |
881 | 0 | case ocMultiArea: return "MultiArea"; |
882 | 0 | case ocOffset: return "Offset"; |
883 | 0 | case ocIndex: return "Index"; |
884 | 0 | case ocAreas: return "Areas"; |
885 | 0 | case ocCurrency: return "Currency"; |
886 | 0 | case ocReplace: return "Replace"; |
887 | 0 | case ocFixed: return "Fixed"; |
888 | 0 | case ocFind: return "Find"; |
889 | 0 | case ocExact: return "Exact"; |
890 | 0 | case ocLeft: return "Left"; |
891 | 0 | case ocRight: return "Right"; |
892 | 0 | case ocSearch: return "Search"; |
893 | 0 | case ocMid: return "Mid"; |
894 | 0 | case ocText: return "Text"; |
895 | 0 | case ocSubstitute: return "Substitute"; |
896 | 0 | case ocRept: return "Rept"; |
897 | 0 | case ocRegex: return "Regex"; |
898 | 0 | case ocConcat: return "Concat"; |
899 | 0 | case ocConcat_MS: return "Concat_MS"; |
900 | 0 | case ocTextJoin_MS: return "TextJoin_MS"; |
901 | 0 | case ocLenB: return "LenB"; |
902 | 0 | case ocRightB: return "RightB"; |
903 | 0 | case ocLeftB: return "LeftB"; |
904 | 0 | case ocMidB: return "MidB"; |
905 | 0 | case ocReplaceB: return "ReplaceB"; |
906 | 0 | case ocFindB: return "FindB"; |
907 | 0 | case ocSearchB: return "SearchB"; |
908 | 0 | case ocNumberValue: return "NumberValue"; |
909 | 0 | case ocMatValue: return "MatValue"; |
910 | 0 | case ocMatDet: return "MatDet"; |
911 | 0 | case ocMatInv: return "MatInv"; |
912 | 0 | case ocMatMult: return "MatMult"; |
913 | 0 | case ocMatSequence: return "MatSequence"; |
914 | 0 | case ocMatTrans: return "MatTrans"; |
915 | 0 | case ocMatrixUnit: return "MatrixUnit"; |
916 | 0 | case ocBackSolver: return "BackSolver"; |
917 | 0 | case ocHypGeomDist: return "HypGeomDist"; |
918 | 0 | case ocHypGeomDist_MS: return "HypGeomDist_MS"; |
919 | 0 | case ocLogNormDist: return "LogNormDist"; |
920 | 0 | case ocLogNormDist_MS: return "LogNormDist_MS"; |
921 | 0 | case ocTDist: return "TDist"; |
922 | 0 | case ocTDist_MS: return "TDist_MS"; |
923 | 0 | case ocTDist_RT: return "TDist_RT"; |
924 | 0 | case ocTDist_2T: return "TDist_2T"; |
925 | 0 | case ocFDist: return "FDist"; |
926 | 0 | case ocFDist_LT: return "FDist_LT"; |
927 | 0 | case ocFDist_RT: return "FDist_RT"; |
928 | 0 | case ocChiDist: return "ChiDist"; |
929 | 0 | case ocChiDist_MS: return "ChiDist_MS"; |
930 | 0 | case ocChiSqDist: return "ChiSqDist"; |
931 | 0 | case ocChiSqDist_MS: return "ChiSqDist_MS"; |
932 | 0 | case ocChiSqInv: return "ChiSqInv"; |
933 | 0 | case ocChiSqInv_MS: return "ChiSqInv_MS"; |
934 | 0 | case ocWeibull: return "Weibull"; |
935 | 0 | case ocWeibull_MS: return "Weibull_MS"; |
936 | 0 | case ocNegBinomVert: return "NegBinomVert"; |
937 | 0 | case ocNegBinomDist_MS: return "NegBinomDist_MS"; |
938 | 0 | case ocCritBinom: return "CritBinom"; |
939 | 0 | case ocKurt: return "Kurt"; |
940 | 0 | case ocHarMean: return "HarMean"; |
941 | 0 | case ocGeoMean: return "GeoMean"; |
942 | 0 | case ocStandard: return "Standard"; |
943 | 0 | case ocAveDev: return "AveDev"; |
944 | 0 | case ocSkew: return "Skew"; |
945 | 0 | case ocSkewp: return "Skewp"; |
946 | 0 | case ocDevSq: return "DevSq"; |
947 | 0 | case ocMedian: return "Median"; |
948 | 0 | case ocModalValue: return "ModalValue"; |
949 | 0 | case ocModalValue_MS: return "ModalValue_MS"; |
950 | 0 | case ocModalValue_Multi: return "ModalValue_Multi"; |
951 | 0 | case ocZTest: return "ZTest"; |
952 | 0 | case ocZTest_MS: return "ZTest_MS"; |
953 | 0 | case ocAggregate: return "Aggregate"; |
954 | 0 | case ocTTest: return "TTest"; |
955 | 0 | case ocTTest_MS: return "TTest_MS"; |
956 | 0 | case ocRank: return "Rank"; |
957 | 0 | case ocPercentile: return "Percentile"; |
958 | 0 | case ocPercentrank: return "Percentrank"; |
959 | 0 | case ocPercentile_Inc: return "Percentile_Inc"; |
960 | 0 | case ocPercentrank_Inc: return "Percentrank_Inc"; |
961 | 0 | case ocQuartile_Inc: return "Quartile_Inc"; |
962 | 0 | case ocRank_Eq: return "Rank_Eq"; |
963 | 0 | case ocPercentile_Exc: return "Percentile_Exc"; |
964 | 0 | case ocPercentrank_Exc: return "Percentrank_Exc"; |
965 | 0 | case ocQuartile_Exc: return "Quartile_Exc"; |
966 | 0 | case ocRank_Avg: return "Rank_Avg"; |
967 | 0 | case ocLarge: return "Large"; |
968 | 0 | case ocSmall: return "Small"; |
969 | 0 | case ocFrequency: return "Frequency"; |
970 | 0 | case ocQuartile: return "Quartile"; |
971 | 0 | case ocNormInv: return "NormInv"; |
972 | 0 | case ocNormInv_MS: return "NormInv_MS"; |
973 | 0 | case ocConfidence: return "Confidence"; |
974 | 0 | case ocConfidence_N: return "Confidence_N"; |
975 | 0 | case ocConfidence_T: return "Confidence_T"; |
976 | 0 | case ocFTest: return "FTest"; |
977 | 0 | case ocFTest_MS: return "FTest_MS"; |
978 | 0 | case ocTrimMean: return "TrimMean"; |
979 | 0 | case ocProb: return "Prob"; |
980 | 0 | case ocCorrel: return "Correl"; |
981 | 0 | case ocCovar: return "Covar"; |
982 | 0 | case ocCovarianceP: return "CovarianceP"; |
983 | 0 | case ocCovarianceS: return "CovarianceS"; |
984 | 0 | case ocPearson: return "Pearson"; |
985 | 0 | case ocRSQ: return "RSQ"; |
986 | 0 | case ocSTEYX: return "STEYX"; |
987 | 0 | case ocSlope: return "Slope"; |
988 | 0 | case ocIntercept: return "Intercept"; |
989 | 0 | case ocTrend: return "Trend"; |
990 | 0 | case ocGrowth: return "Growth"; |
991 | 0 | case ocLinest: return "Linest"; |
992 | 0 | case ocLogest: return "Logest"; |
993 | 0 | case ocForecast: return "Forecast"; |
994 | 0 | case ocForecast_ETS_ADD: return "Forecast_ETS_ADD"; |
995 | 0 | case ocForecast_ETS_SEA: return "Forecast_ETS_SEA"; |
996 | 0 | case ocForecast_ETS_MUL: return "Forecast_ETS_MUL"; |
997 | 0 | case ocForecast_ETS_PIA: return "Forecast_ETS_PIA"; |
998 | 0 | case ocForecast_ETS_PIM: return "Forecast_ETS_PIM"; |
999 | 0 | case ocForecast_ETS_STA: return "Forecast_ETS_STA"; |
1000 | 0 | case ocForecast_ETS_STM: return "Forecast_ETS_STM"; |
1001 | 0 | case ocForecast_LIN: return "Forecast_LIN"; |
1002 | 0 | case ocChiInv: return "ChiInv"; |
1003 | 0 | case ocChiInv_MS: return "ChiInv_MS"; |
1004 | 0 | case ocGammaDist: return "GammaDist"; |
1005 | 0 | case ocGammaDist_MS: return "GammaDist_MS"; |
1006 | 0 | case ocGammaInv: return "GammaInv"; |
1007 | 0 | case ocGammaInv_MS: return "GammaInv_MS"; |
1008 | 0 | case ocTInv: return "TInv"; |
1009 | 0 | case ocTInv_2T: return "TInv_2T"; |
1010 | 0 | case ocTInv_MS: return "TInv_MS"; |
1011 | 0 | case ocFInv: return "FInv"; |
1012 | 0 | case ocFInv_LT: return "FInv_LT"; |
1013 | 0 | case ocFInv_RT: return "FInv_RT"; |
1014 | 0 | case ocChiTest: return "ChiTest"; |
1015 | 0 | case ocChiTest_MS: return "ChiTest_MS"; |
1016 | 0 | case ocLogInv: return "LogInv"; |
1017 | 0 | case ocLogInv_MS: return "LogInv_MS"; |
1018 | 0 | case ocTableOp: return "TableOp"; |
1019 | 0 | case ocBetaDist: return "BetaDist"; |
1020 | 0 | case ocBetaInv: return "BetaInv"; |
1021 | 0 | case ocBetaDist_MS: return "BetaDist_MS"; |
1022 | 0 | case ocBetaInv_MS: return "BetaInv_MS"; |
1023 | 0 | case ocBitAnd: return "BitAnd"; |
1024 | 0 | case ocBitOr: return "BitOr"; |
1025 | 0 | case ocBitXor: return "BitXor"; |
1026 | 0 | case ocBitRshift: return "BitRshift"; |
1027 | 0 | case ocBitLshift: return "BitLshift"; |
1028 | 0 | case ocWeek: return "Week"; |
1029 | 0 | case ocIsoWeeknum: return "IsoWeeknum"; |
1030 | 0 | case ocWeeknumOOo: return "WeeknumOOo"; |
1031 | 0 | case ocGetDayOfWeek: return "GetDayOfWeek"; |
1032 | 0 | case ocNetWorkdays: return "NetWorkdays"; |
1033 | 0 | case ocNetWorkdays_MS: return "NetWorkdays_MS"; |
1034 | 0 | case ocWorkday_MS: return "Workday_MS"; |
1035 | 0 | case ocNoName: return "NoName"; |
1036 | 0 | case ocStyle: return "Style"; |
1037 | 0 | case ocDde: return "Dde"; |
1038 | 0 | case ocBase: return "Base"; |
1039 | 0 | case ocSheet: return "Sheet"; |
1040 | 0 | case ocSheets: return "Sheets"; |
1041 | 0 | case ocMinA: return "MinA"; |
1042 | 0 | case ocMaxA: return "MaxA"; |
1043 | 0 | case ocAverageA: return "AverageA"; |
1044 | 0 | case ocStDevA: return "StDevA"; |
1045 | 0 | case ocStDevPA: return "StDevPA"; |
1046 | 0 | case ocVarA: return "VarA"; |
1047 | 0 | case ocVarPA: return "VarPA"; |
1048 | 0 | case ocEasterSunday: return "EasterSunday"; |
1049 | 0 | case ocDecimal: return "Decimal"; |
1050 | 0 | case ocConvertOOo: return "ConvertOOo"; |
1051 | 0 | case ocRoman: return "Roman"; |
1052 | 0 | case ocHyperLink: return "HyperLink"; |
1053 | 0 | case ocGetPivotData: return "GetPivotData"; |
1054 | 0 | case ocEuroConvert: return "EuroConvert"; |
1055 | 0 | case ocFilterXML: return "FilterXML"; |
1056 | 0 | case ocWebservice: return "Webservice"; |
1057 | 0 | case ocColor: return "Color"; |
1058 | 0 | case ocErf_MS: return "Erf_MS"; |
1059 | 0 | case ocErfc_MS: return "Erfc_MS"; |
1060 | 0 | case ocEncodeURL: return "EncodeURL"; |
1061 | 0 | case ocFourier: return "Fourier"; |
1062 | 0 | case ocRandbetweenNV: return "RandbetweenNV"; |
1063 | 0 | case ocRandArray: return "RandArray"; |
1064 | 0 | case ocFilter: return "Filter"; |
1065 | 0 | case ocSort: return "Sort"; |
1066 | 0 | case ocSortBy: return "SortBy"; |
1067 | 0 | case ocChooseCols: return "ChooseCols"; |
1068 | 0 | case ocChooseRows: return "ChooseRows"; |
1069 | 0 | case ocDrop: return "Drop"; |
1070 | 0 | case ocExpand: return "Expand"; |
1071 | 0 | case ocHStack: return "HStack"; |
1072 | 0 | case ocVStack: return "VStack"; |
1073 | 0 | case ocTake: return "Take"; |
1074 | 0 | case ocTextAfter: return "TextAfter"; |
1075 | 0 | case ocTextBefore: return "TextBefore"; |
1076 | 0 | case ocTextSplit: return "TextSplit"; |
1077 | 0 | case ocToCol: return "ToCol"; |
1078 | 0 | case ocToRow: return "ToRow"; |
1079 | 0 | case ocUnique: return "Unique"; |
1080 | 0 | case ocWrapCols: return "WrapCols"; |
1081 | 0 | case ocWrapRows: return "WrapRows"; |
1082 | 0 | case ocLambda: return "Lambda"; |
1083 | 0 | case ocIsOmitted: return "IsOmitted"; |
1084 | 0 | case ocByCol: return "ByCol"; |
1085 | 0 | case ocByRow: return "ByRow"; |
1086 | 0 | case ocMakeArray: return "MakeArray"; |
1087 | 0 | case ocMap: return "Map"; |
1088 | 0 | case ocReduce: return "Reduce"; |
1089 | 0 | case ocScan: return "Scan"; |
1090 | 0 | case ocArrayToText: return "ArrayToText"; |
1091 | 0 | case ocTTT: return "TTT"; |
1092 | 0 | case ocDebugVar: return "DebugVar"; |
1093 | 0 | case ocDataToken1: return "DataToken1"; |
1094 | 0 | case ocNone: return "None"; |
1095 | 0 | default: assert(false); return "???"; |
1096 | 0 | } |
1097 | 0 | std::ostringstream os; |
1098 | 0 | os << static_cast<int>(eCode); |
1099 | 0 | return os.str(); |
1100 | 0 | } |
1101 | | |
1102 | | /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |