PluginProbe
TablePress – Tables in WordPress made easy / 3.3.4
TablePress – Tables in WordPress made easy v3.3.4
3.3.4 3.3.3 3.3.2 3.3.1 trunk 1.12 1.14 1.9.2 2.0.4 2.1.7 2.1.8 2.2 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.3 2.3.1 2.3.2 2.4 2.4.1 2.4.2 2.4.3 2.4.4 All 44 releases
tablepress / libraries / vendor / PhpSpreadsheet / Calculation / FunctionArray.php

FunctionArray.php in TablePress – Tables in WordPress made easy 3.3.4, at libraries/vendor/PhpSpreadsheet/Calculation/FunctionArray.php

2,686 lines 85.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace TablePress\PhpOffice\PhpSpreadsheet\Calculation;
4
5 class FunctionArray extends CalculationBase
6 {
7 /**
8 * Array of functions usable on Spreadsheet.
9 *
10 * @var array<string, array{category: string, functionCall: string|string[], argumentCount: string, passCellReference?: bool, passByReference?: bool[], custom?: bool}>
11 */
12 protected static array $phpSpreadsheetFunctions = [ // @phpstan-ignore-line
13 'ABS' => [
14 'category' => Category::CATEGORY_MATH_AND_TRIG,
15 'functionCall' => [MathTrig\Absolute::class, 'evaluate'],
16 'argumentCount' => '1',
17 ],
18 'ACCRINT' => [
19 'category' => Category::CATEGORY_FINANCIAL,
20 'functionCall' => [Financial\Securities\AccruedInterest::class, 'periodic'],
21 'argumentCount' => '4-8',
22 ],
23 'ACCRINTM' => [
24 'category' => Category::CATEGORY_FINANCIAL,
25 'functionCall' => [Financial\Securities\AccruedInterest::class, 'atMaturity'],
26 'argumentCount' => '3-5',
27 ],
28 'ACOS' => [
29 'category' => Category::CATEGORY_MATH_AND_TRIG,
30 'functionCall' => [MathTrig\Trig\Cosine::class, 'acos'],
31 'argumentCount' => '1',
32 ],
33 'ACOSH' => [
34 'category' => Category::CATEGORY_MATH_AND_TRIG,
35 'functionCall' => [MathTrig\Trig\Cosine::class, 'acosh'],
36 'argumentCount' => '1',
37 ],
38 'ACOT' => [
39 'category' => Category::CATEGORY_MATH_AND_TRIG,
40 'functionCall' => [MathTrig\Trig\Cotangent::class, 'acot'],
41 'argumentCount' => '1',
42 ],
43 'ACOTH' => [
44 'category' => Category::CATEGORY_MATH_AND_TRIG,
45 'functionCall' => [MathTrig\Trig\Cotangent::class, 'acoth'],
46 'argumentCount' => '1',
47 ],
48 'ADDRESS' => [
49 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
50 'functionCall' => [LookupRef\Address::class, 'cell'],
51 'argumentCount' => '2-5',
52 ],
53 'AGGREGATE' => [
54 'category' => Category::CATEGORY_MATH_AND_TRIG,
55 'functionCall' => [Functions::class, 'DUMMY'],
56 'argumentCount' => '3+',
57 ],
58 'AMORDEGRC' => [
59 'category' => Category::CATEGORY_FINANCIAL,
60 'functionCall' => [Financial\Amortization::class, 'AMORDEGRC'],
61 'argumentCount' => '6,7',
62 ],
63 'AMORLINC' => [
64 'category' => Category::CATEGORY_FINANCIAL,
65 'functionCall' => [Financial\Amortization::class, 'AMORLINC'],
66 'argumentCount' => '6,7',
67 ],
68 'ANCHORARRAY' => [
69 'category' => Category::CATEGORY_MICROSOFT_INTERNAL,
70 'functionCall' => [Internal\ExcelArrayPseudoFunctions::class, 'anchorArray'],
71 'argumentCount' => '1',
72 'passCellReference' => true,
73 'passByReference' => [true],
74 ],
75 'AND' => [
76 'category' => Category::CATEGORY_LOGICAL,
77 'functionCall' => [Logical\Operations::class, 'logicalAnd'],
78 'argumentCount' => '1+',
79 ],
80 'ARABIC' => [
81 'category' => Category::CATEGORY_MATH_AND_TRIG,
82 'functionCall' => [MathTrig\Arabic::class, 'evaluate'],
83 'argumentCount' => '1',
84 ],
85 'AREAS' => [
86 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
87 'functionCall' => [Functions::class, 'DUMMY'],
88 'argumentCount' => '1',
89 ],
90 'ARRAYTOTEXT' => [
91 'category' => Category::CATEGORY_TEXT_AND_DATA,
92 'functionCall' => [TextData\Text::class, 'fromArray'],
93 'argumentCount' => '1,2',
94 ],
95 'ASC' => [
96 'category' => Category::CATEGORY_TEXT_AND_DATA,
97 'functionCall' => [Functions::class, 'DUMMY'],
98 'argumentCount' => '1',
99 ],
100 'ASIN' => [
101 'category' => Category::CATEGORY_MATH_AND_TRIG,
102 'functionCall' => [MathTrig\Trig\Sine::class, 'asin'],
103 'argumentCount' => '1',
104 ],
105 'ASINH' => [
106 'category' => Category::CATEGORY_MATH_AND_TRIG,
107 'functionCall' => [MathTrig\Trig\Sine::class, 'asinh'],
108 'argumentCount' => '1',
109 ],
110 'ATAN' => [
111 'category' => Category::CATEGORY_MATH_AND_TRIG,
112 'functionCall' => [MathTrig\Trig\Tangent::class, 'atan'],
113 'argumentCount' => '1',
114 ],
115 'ATAN2' => [
116 'category' => Category::CATEGORY_MATH_AND_TRIG,
117 'functionCall' => [MathTrig\Trig\Tangent::class, 'atan2'],
118 'argumentCount' => '2',
119 ],
120 'ATANH' => [
121 'category' => Category::CATEGORY_MATH_AND_TRIG,
122 'functionCall' => [MathTrig\Trig\Tangent::class, 'atanh'],
123 'argumentCount' => '1',
124 ],
125 'AVEDEV' => [
126 'category' => Category::CATEGORY_STATISTICAL,
127 'functionCall' => [Statistical\Averages::class, 'averageDeviations'],
128 'argumentCount' => '1+',
129 ],
130 'AVERAGE' => [
131 'category' => Category::CATEGORY_STATISTICAL,
132 'functionCall' => [Statistical\Averages::class, 'average'],
133 'argumentCount' => '1+',
134 ],
135 'AVERAGEA' => [
136 'category' => Category::CATEGORY_STATISTICAL,
137 'functionCall' => [Statistical\Averages::class, 'averageA'],
138 'argumentCount' => '1+',
139 ],
140 'AVERAGEIF' => [
141 'category' => Category::CATEGORY_STATISTICAL,
142 'functionCall' => [Statistical\Conditional::class, 'AVERAGEIF'],
143 'argumentCount' => '2,3',
144 ],
145 'AVERAGEIFS' => [
146 'category' => Category::CATEGORY_STATISTICAL,
147 'functionCall' => [Statistical\Conditional::class, 'AVERAGEIFS'],
148 'argumentCount' => '3+',
149 ],
150 'BAHTTEXT' => [
151 'category' => Category::CATEGORY_TEXT_AND_DATA,
152 'functionCall' => [TextData\Thai::class, 'getBahtText'],
153 'argumentCount' => '1',
154 ],
155 'BASE' => [
156 'category' => Category::CATEGORY_MATH_AND_TRIG,
157 'functionCall' => [MathTrig\Base::class, 'evaluate'],
158 'argumentCount' => '2,3',
159 ],
160 'BESSELI' => [
161 'category' => Category::CATEGORY_ENGINEERING,
162 'functionCall' => [Engineering\BesselI::class, 'BESSELI'],
163 'argumentCount' => '2',
164 ],
165 'BESSELJ' => [
166 'category' => Category::CATEGORY_ENGINEERING,
167 'functionCall' => [Engineering\BesselJ::class, 'BESSELJ'],
168 'argumentCount' => '2',
169 ],
170 'BESSELK' => [
171 'category' => Category::CATEGORY_ENGINEERING,
172 'functionCall' => [Engineering\BesselK::class, 'BESSELK'],
173 'argumentCount' => '2',
174 ],
175 'BESSELY' => [
176 'category' => Category::CATEGORY_ENGINEERING,
177 'functionCall' => [Engineering\BesselY::class, 'BESSELY'],
178 'argumentCount' => '2',
179 ],
180 'BETADIST' => [
181 'category' => Category::CATEGORY_STATISTICAL,
182 'functionCall' => [Statistical\Distributions\Beta::class, 'distribution'],
183 'argumentCount' => '3-5',
184 ],
185 'BETA.DIST' => [
186 'category' => Category::CATEGORY_STATISTICAL,
187 'functionCall' => [Functions::class, 'DUMMY'],
188 'argumentCount' => '4-6',
189 ],
190 'BETAINV' => [
191 'category' => Category::CATEGORY_STATISTICAL,
192 'functionCall' => [Statistical\Distributions\Beta::class, 'inverse'],
193 'argumentCount' => '3-5',
194 ],
195 'BETA.INV' => [
196 'category' => Category::CATEGORY_STATISTICAL,
197 'functionCall' => [Statistical\Distributions\Beta::class, 'inverse'],
198 'argumentCount' => '3-5',
199 ],
200 'BIN2DEC' => [
201 'category' => Category::CATEGORY_ENGINEERING,
202 'functionCall' => [Engineering\ConvertBinary::class, 'toDecimal'],
203 'argumentCount' => '1',
204 ],
205 'BIN2HEX' => [
206 'category' => Category::CATEGORY_ENGINEERING,
207 'functionCall' => [Engineering\ConvertBinary::class, 'toHex'],
208 'argumentCount' => '1,2',
209 ],
210 'BIN2OCT' => [
211 'category' => Category::CATEGORY_ENGINEERING,
212 'functionCall' => [Engineering\ConvertBinary::class, 'toOctal'],
213 'argumentCount' => '1,2',
214 ],
215 'BINOMDIST' => [
216 'category' => Category::CATEGORY_STATISTICAL,
217 'functionCall' => [Statistical\Distributions\Binomial::class, 'distribution'],
218 'argumentCount' => '4',
219 ],
220 'BINOM.DIST' => [
221 'category' => Category::CATEGORY_STATISTICAL,
222 'functionCall' => [Statistical\Distributions\Binomial::class, 'distribution'],
223 'argumentCount' => '4',
224 ],
225 'BINOM.DIST.RANGE' => [
226 'category' => Category::CATEGORY_STATISTICAL,
227 'functionCall' => [Statistical\Distributions\Binomial::class, 'range'],
228 'argumentCount' => '3,4',
229 ],
230 'BINOM.INV' => [
231 'category' => Category::CATEGORY_STATISTICAL,
232 'functionCall' => [Statistical\Distributions\Binomial::class, 'inverse'],
233 'argumentCount' => '3',
234 ],
235 'BITAND' => [
236 'category' => Category::CATEGORY_ENGINEERING,
237 'functionCall' => [Engineering\BitWise::class, 'BITAND'],
238 'argumentCount' => '2',
239 ],
240 'BITOR' => [
241 'category' => Category::CATEGORY_ENGINEERING,
242 'functionCall' => [Engineering\BitWise::class, 'BITOR'],
243 'argumentCount' => '2',
244 ],
245 'BITXOR' => [
246 'category' => Category::CATEGORY_ENGINEERING,
247 'functionCall' => [Engineering\BitWise::class, 'BITXOR'],
248 'argumentCount' => '2',
249 ],
250 'BITLSHIFT' => [
251 'category' => Category::CATEGORY_ENGINEERING,
252 'functionCall' => [Engineering\BitWise::class, 'BITLSHIFT'],
253 'argumentCount' => '2',
254 ],
255 'BITRSHIFT' => [
256 'category' => Category::CATEGORY_ENGINEERING,
257 'functionCall' => [Engineering\BitWise::class, 'BITRSHIFT'],
258 'argumentCount' => '2',
259 ],
260 'BYCOL' => [
261 'category' => Category::CATEGORY_LOGICAL,
262 'functionCall' => [Functions::class, 'DUMMY'],
263 'argumentCount' => '*',
264 ],
265 'BYROW' => [
266 'category' => Category::CATEGORY_LOGICAL,
267 'functionCall' => [Functions::class, 'DUMMY'],
268 'argumentCount' => '*',
269 ],
270 'CEILING' => [
271 'category' => Category::CATEGORY_MATH_AND_TRIG,
272 'functionCall' => [MathTrig\Ceiling::class, 'ceiling'],
273 'argumentCount' => '1-2', // 2 for Excel, 1-2 for Ods/Gnumeric
274 ],
275 'CEILING.MATH' => [
276 'category' => Category::CATEGORY_MATH_AND_TRIG,
277 'functionCall' => [MathTrig\Ceiling::class, 'math'],
278 'argumentCount' => '1-3',
279 ],
280 // pseudo-function to help with Ods
281 'CEILING.ODS' => [
282 'category' => Category::CATEGORY_MATH_AND_TRIG,
283 'functionCall' => [MathTrig\Ceiling::class, 'mathOds'],
284 'argumentCount' => '1-3',
285 ],
286 'CEILING.PRECISE' => [
287 'category' => Category::CATEGORY_MATH_AND_TRIG,
288 'functionCall' => [MathTrig\Ceiling::class, 'precise'],
289 'argumentCount' => '1,2',
290 ],
291 // pseudo-function implemented in Ods
292 'CEILING.XCL' => [
293 'category' => Category::CATEGORY_MATH_AND_TRIG,
294 'functionCall' => [MathTrig\Ceiling::class, 'ceiling'],
295 'argumentCount' => '2',
296 ],
297 'CELL' => [
298 'category' => Category::CATEGORY_INFORMATION,
299 'functionCall' => [Functions::class, 'DUMMY'],
300 'argumentCount' => '1,2',
301 ],
302 'CHAR' => [
303 'category' => Category::CATEGORY_TEXT_AND_DATA,
304 'functionCall' => [TextData\CharacterConvert::class, 'character'],
305 'argumentCount' => '1',
306 ],
307 'CHIDIST' => [
308 'category' => Category::CATEGORY_STATISTICAL,
309 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'distributionRightTail'],
310 'argumentCount' => '2',
311 ],
312 'CHISQ.DIST' => [
313 'category' => Category::CATEGORY_STATISTICAL,
314 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'distributionLeftTail'],
315 'argumentCount' => '3',
316 ],
317 'CHISQ.DIST.RT' => [
318 'category' => Category::CATEGORY_STATISTICAL,
319 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'distributionRightTail'],
320 'argumentCount' => '2',
321 ],
322 'CHIINV' => [
323 'category' => Category::CATEGORY_STATISTICAL,
324 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'inverseRightTail'],
325 'argumentCount' => '2',
326 ],
327 'CHISQ.INV' => [
328 'category' => Category::CATEGORY_STATISTICAL,
329 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'inverseLeftTail'],
330 'argumentCount' => '2',
331 ],
332 'CHISQ.INV.RT' => [
333 'category' => Category::CATEGORY_STATISTICAL,
334 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'inverseRightTail'],
335 'argumentCount' => '2',
336 ],
337 'CHITEST' => [
338 'category' => Category::CATEGORY_STATISTICAL,
339 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'test'],
340 'argumentCount' => '2',
341 ],
342 'CHISQ.TEST' => [
343 'category' => Category::CATEGORY_STATISTICAL,
344 'functionCall' => [Statistical\Distributions\ChiSquared::class, 'test'],
345 'argumentCount' => '2',
346 ],
347 'CHOOSE' => [
348 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
349 'functionCall' => [LookupRef\Selection::class, 'CHOOSE'],
350 'argumentCount' => '2+',
351 ],
352 'CHOOSECOLS' => [
353 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
354 'functionCall' => [LookupRef\ChooseRowsEtc::class, 'chooseCols'],
355 'argumentCount' => '2+',
356 ],
357 'CHOOSEROWS' => [
358 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
359 'functionCall' => [LookupRef\ChooseRowsEtc::class, 'chooseRows'],
360 'argumentCount' => '2+',
361 ],
362 'CLEAN' => [
363 'category' => Category::CATEGORY_TEXT_AND_DATA,
364 'functionCall' => [TextData\Trim::class, 'nonPrintable'],
365 'argumentCount' => '1',
366 ],
367 'CODE' => [
368 'category' => Category::CATEGORY_TEXT_AND_DATA,
369 'functionCall' => [TextData\CharacterConvert::class, 'code'],
370 'argumentCount' => '1',
371 ],
372 'COLUMN' => [
373 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
374 'functionCall' => [LookupRef\RowColumnInformation::class, 'COLUMN'],
375 'argumentCount' => '-1',
376 'passCellReference' => true,
377 'passByReference' => [true],
378 ],
379 'COLUMNS' => [
380 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
381 'functionCall' => [LookupRef\RowColumnInformation::class, 'COLUMNS'],
382 'argumentCount' => '1',
383 ],
384 'COMBIN' => [
385 'category' => Category::CATEGORY_MATH_AND_TRIG,
386 'functionCall' => [MathTrig\Combinations::class, 'withoutRepetition'],
387 'argumentCount' => '2',
388 ],
389 'COMBINA' => [
390 'category' => Category::CATEGORY_MATH_AND_TRIG,
391 'functionCall' => [MathTrig\Combinations::class, 'withRepetition'],
392 'argumentCount' => '2',
393 ],
394 'COMPLEX' => [
395 'category' => Category::CATEGORY_ENGINEERING,
396 'functionCall' => [Engineering\Complex::class, 'COMPLEX'],
397 'argumentCount' => '2,3',
398 ],
399 'CONCAT' => [
400 'category' => Category::CATEGORY_TEXT_AND_DATA,
401 'functionCall' => [TextData\Concatenate::class, 'CONCATENATE'],
402 'argumentCount' => '1+',
403 ],
404 'CONCATENATE' => [
405 'category' => Category::CATEGORY_TEXT_AND_DATA,
406 'functionCall' => [TextData\Concatenate::class, 'actualCONCATENATE'],
407 'argumentCount' => '1+',
408 'passCellReference' => true,
409 ],
410 'CONFIDENCE' => [
411 'category' => Category::CATEGORY_STATISTICAL,
412 'functionCall' => [Statistical\Confidence::class, 'CONFIDENCE'],
413 'argumentCount' => '3',
414 ],
415 'CONFIDENCE.NORM' => [
416 'category' => Category::CATEGORY_STATISTICAL,
417 'functionCall' => [Statistical\Confidence::class, 'CONFIDENCE'],
418 'argumentCount' => '3',
419 ],
420 'CONFIDENCE.T' => [
421 'category' => Category::CATEGORY_STATISTICAL,
422 'functionCall' => [Functions::class, 'DUMMY'],
423 'argumentCount' => '3',
424 ],
425 'CONVERT' => [
426 'category' => Category::CATEGORY_ENGINEERING,
427 'functionCall' => [Engineering\ConvertUOM::class, 'CONVERT'],
428 'argumentCount' => '3',
429 ],
430 'CORREL' => [
431 'category' => Category::CATEGORY_STATISTICAL,
432 'functionCall' => [Statistical\Trends::class, 'CORREL'],
433 'argumentCount' => '2',
434 ],
435 'COS' => [
436 'category' => Category::CATEGORY_MATH_AND_TRIG,
437 'functionCall' => [MathTrig\Trig\Cosine::class, 'cos'],
438 'argumentCount' => '1',
439 ],
440 'COSH' => [
441 'category' => Category::CATEGORY_MATH_AND_TRIG,
442 'functionCall' => [MathTrig\Trig\Cosine::class, 'cosh'],
443 'argumentCount' => '1',
444 ],
445 'COT' => [
446 'category' => Category::CATEGORY_MATH_AND_TRIG,
447 'functionCall' => [MathTrig\Trig\Cotangent::class, 'cot'],
448 'argumentCount' => '1',
449 ],
450 'COTH' => [
451 'category' => Category::CATEGORY_MATH_AND_TRIG,
452 'functionCall' => [MathTrig\Trig\Cotangent::class, 'coth'],
453 'argumentCount' => '1',
454 ],
455 'COUNT' => [
456 'category' => Category::CATEGORY_STATISTICAL,
457 'functionCall' => [Statistical\Counts::class, 'COUNT'],
458 'argumentCount' => '1+',
459 ],
460 'COUNTA' => [
461 'category' => Category::CATEGORY_STATISTICAL,
462 'functionCall' => [Statistical\Counts::class, 'COUNTA'],
463 'argumentCount' => '1+',
464 ],
465 'COUNTBLANK' => [
466 'category' => Category::CATEGORY_STATISTICAL,
467 'functionCall' => [Statistical\Counts::class, 'COUNTBLANK'],
468 'argumentCount' => '1',
469 ],
470 'COUNTIF' => [
471 'category' => Category::CATEGORY_STATISTICAL,
472 'functionCall' => [Statistical\Conditional::class, 'COUNTIF'],
473 'argumentCount' => '2',
474 ],
475 'COUNTIFS' => [
476 'category' => Category::CATEGORY_STATISTICAL,
477 'functionCall' => [Statistical\Conditional::class, 'COUNTIFS'],
478 'argumentCount' => '2+',
479 ],
480 'COUPDAYBS' => [
481 'category' => Category::CATEGORY_FINANCIAL,
482 'functionCall' => [Financial\Coupons::class, 'COUPDAYBS'],
483 'argumentCount' => '3,4',
484 ],
485 'COUPDAYS' => [
486 'category' => Category::CATEGORY_FINANCIAL,
487 'functionCall' => [Financial\Coupons::class, 'COUPDAYS'],
488 'argumentCount' => '3,4',
489 ],
490 'COUPDAYSNC' => [
491 'category' => Category::CATEGORY_FINANCIAL,
492 'functionCall' => [Financial\Coupons::class, 'COUPDAYSNC'],
493 'argumentCount' => '3,4',
494 ],
495 'COUPNCD' => [
496 'category' => Category::CATEGORY_FINANCIAL,
497 'functionCall' => [Financial\Coupons::class, 'COUPNCD'],
498 'argumentCount' => '3,4',
499 ],
500 'COUPNUM' => [
501 'category' => Category::CATEGORY_FINANCIAL,
502 'functionCall' => [Financial\Coupons::class, 'COUPNUM'],
503 'argumentCount' => '3,4',
504 ],
505 'COUPPCD' => [
506 'category' => Category::CATEGORY_FINANCIAL,
507 'functionCall' => [Financial\Coupons::class, 'COUPPCD'],
508 'argumentCount' => '3,4',
509 ],
510 'COVAR' => [
511 'category' => Category::CATEGORY_STATISTICAL,
512 'functionCall' => [Statistical\Trends::class, 'COVAR'],
513 'argumentCount' => '2',
514 ],
515 'COVARIANCE.P' => [
516 'category' => Category::CATEGORY_STATISTICAL,
517 'functionCall' => [Statistical\Trends::class, 'COVAR'],
518 'argumentCount' => '2',
519 ],
520 'COVARIANCE.S' => [
521 'category' => Category::CATEGORY_STATISTICAL,
522 'functionCall' => [Functions::class, 'DUMMY'],
523 'argumentCount' => '2',
524 ],
525 'CRITBINOM' => [
526 'category' => Category::CATEGORY_STATISTICAL,
527 'functionCall' => [Statistical\Distributions\Binomial::class, 'inverse'],
528 'argumentCount' => '3',
529 ],
530 'CSC' => [
531 'category' => Category::CATEGORY_MATH_AND_TRIG,
532 'functionCall' => [MathTrig\Trig\Cosecant::class, 'csc'],
533 'argumentCount' => '1',
534 ],
535 'CSCH' => [
536 'category' => Category::CATEGORY_MATH_AND_TRIG,
537 'functionCall' => [MathTrig\Trig\Cosecant::class, 'csch'],
538 'argumentCount' => '1',
539 ],
540 'CUBEKPIMEMBER' => [
541 'category' => Category::CATEGORY_CUBE,
542 'functionCall' => [Functions::class, 'DUMMY'],
543 'argumentCount' => '?',
544 ],
545 'CUBEMEMBER' => [
546 'category' => Category::CATEGORY_CUBE,
547 'functionCall' => [Functions::class, 'DUMMY'],
548 'argumentCount' => '?',
549 ],
550 'CUBEMEMBERPROPERTY' => [
551 'category' => Category::CATEGORY_CUBE,
552 'functionCall' => [Functions::class, 'DUMMY'],
553 'argumentCount' => '?',
554 ],
555 'CUBERANKEDMEMBER' => [
556 'category' => Category::CATEGORY_CUBE,
557 'functionCall' => [Functions::class, 'DUMMY'],
558 'argumentCount' => '?',
559 ],
560 'CUBESET' => [
561 'category' => Category::CATEGORY_CUBE,
562 'functionCall' => [Functions::class, 'DUMMY'],
563 'argumentCount' => '?',
564 ],
565 'CUBESETCOUNT' => [
566 'category' => Category::CATEGORY_CUBE,
567 'functionCall' => [Functions::class, 'DUMMY'],
568 'argumentCount' => '?',
569 ],
570 'CUBEVALUE' => [
571 'category' => Category::CATEGORY_CUBE,
572 'functionCall' => [Functions::class, 'DUMMY'],
573 'argumentCount' => '?',
574 ],
575 'CUMIPMT' => [
576 'category' => Category::CATEGORY_FINANCIAL,
577 'functionCall' => [Financial\CashFlow\Constant\Periodic\Cumulative::class, 'interest'],
578 'argumentCount' => '6',
579 ],
580 'CUMPRINC' => [
581 'category' => Category::CATEGORY_FINANCIAL,
582 'functionCall' => [Financial\CashFlow\Constant\Periodic\Cumulative::class, 'principal'],
583 'argumentCount' => '6',
584 ],
585 'DATE' => [
586 'category' => Category::CATEGORY_DATE_AND_TIME,
587 'functionCall' => [DateTimeExcel\Date::class, 'fromYMD'],
588 'argumentCount' => '3',
589 ],
590 'DATEDIF' => [
591 'category' => Category::CATEGORY_DATE_AND_TIME,
592 'functionCall' => [DateTimeExcel\Difference::class, 'interval'],
593 'argumentCount' => '2,3',
594 ],
595 'DATESTRING' => [
596 'category' => Category::CATEGORY_DATE_AND_TIME,
597 'functionCall' => [Functions::class, 'DUMMY'],
598 'argumentCount' => '?',
599 ],
600 'DATEVALUE' => [
601 'category' => Category::CATEGORY_DATE_AND_TIME,
602 'functionCall' => [DateTimeExcel\DateValue::class, 'fromString'],
603 'argumentCount' => '1',
604 ],
605 'DAVERAGE' => [
606 'category' => Category::CATEGORY_DATABASE,
607 'functionCall' => [Database\DAverage::class, 'evaluate'],
608 'argumentCount' => '3',
609 ],
610 'DAY' => [
611 'category' => Category::CATEGORY_DATE_AND_TIME,
612 'functionCall' => [DateTimeExcel\DateParts::class, 'day'],
613 'argumentCount' => '1',
614 ],
615 'DAYS' => [
616 'category' => Category::CATEGORY_DATE_AND_TIME,
617 'functionCall' => [DateTimeExcel\Days::class, 'between'],
618 'argumentCount' => '2',
619 ],
620 'DAYS360' => [
621 'category' => Category::CATEGORY_DATE_AND_TIME,
622 'functionCall' => [DateTimeExcel\Days360::class, 'between'],
623 'argumentCount' => '2,3',
624 ],
625 'DB' => [
626 'category' => Category::CATEGORY_FINANCIAL,
627 'functionCall' => [Financial\Depreciation::class, 'DB'],
628 'argumentCount' => '4,5',
629 ],
630 'DBCS' => [
631 'category' => Category::CATEGORY_TEXT_AND_DATA,
632 'functionCall' => [Functions::class, 'DUMMY'],
633 'argumentCount' => '1',
634 ],
635 'DCOUNT' => [
636 'category' => Category::CATEGORY_DATABASE,
637 'functionCall' => [Database\DCount::class, 'evaluate'],
638 'argumentCount' => '3',
639 ],
640 'DCOUNTA' => [
641 'category' => Category::CATEGORY_DATABASE,
642 'functionCall' => [Database\DCountA::class, 'evaluate'],
643 'argumentCount' => '3',
644 ],
645 'DDB' => [
646 'category' => Category::CATEGORY_FINANCIAL,
647 'functionCall' => [Financial\Depreciation::class, 'DDB'],
648 'argumentCount' => '4,5',
649 ],
650 'DEC2BIN' => [
651 'category' => Category::CATEGORY_ENGINEERING,
652 'functionCall' => [Engineering\ConvertDecimal::class, 'toBinary'],
653 'argumentCount' => '1,2',
654 ],
655 'DEC2HEX' => [
656 'category' => Category::CATEGORY_ENGINEERING,
657 'functionCall' => [Engineering\ConvertDecimal::class, 'toHex'],
658 'argumentCount' => '1,2',
659 ],
660 'DEC2OCT' => [
661 'category' => Category::CATEGORY_ENGINEERING,
662 'functionCall' => [Engineering\ConvertDecimal::class, 'toOctal'],
663 'argumentCount' => '1,2',
664 ],
665 'DECIMAL' => [
666 'category' => Category::CATEGORY_MATH_AND_TRIG,
667 'functionCall' => [Functions::class, 'DUMMY'],
668 'argumentCount' => '2',
669 ],
670 'DEGREES' => [
671 'category' => Category::CATEGORY_MATH_AND_TRIG,
672 'functionCall' => [MathTrig\Angle::class, 'toDegrees'],
673 'argumentCount' => '1',
674 ],
675 'DELTA' => [
676 'category' => Category::CATEGORY_ENGINEERING,
677 'functionCall' => [Engineering\Compare::class, 'DELTA'],
678 'argumentCount' => '1,2',
679 ],
680 'DEVSQ' => [
681 'category' => Category::CATEGORY_STATISTICAL,
682 'functionCall' => [Statistical\Deviations::class, 'sumSquares'],
683 'argumentCount' => '1+',
684 ],
685 'DGET' => [
686 'category' => Category::CATEGORY_DATABASE,
687 'functionCall' => [Database\DGet::class, 'evaluate'],
688 'argumentCount' => '3',
689 ],
690 'DISC' => [
691 'category' => Category::CATEGORY_FINANCIAL,
692 'functionCall' => [Financial\Securities\Rates::class, 'discount'],
693 'argumentCount' => '4,5',
694 ],
695 'DMAX' => [
696 'category' => Category::CATEGORY_DATABASE,
697 'functionCall' => [Database\DMax::class, 'evaluate'],
698 'argumentCount' => '3',
699 ],
700 'DMIN' => [
701 'category' => Category::CATEGORY_DATABASE,
702 'functionCall' => [Database\DMin::class, 'evaluate'],
703 'argumentCount' => '3',
704 ],
705 'DOLLAR' => [
706 'category' => Category::CATEGORY_TEXT_AND_DATA,
707 'functionCall' => [TextData\Format::class, 'DOLLAR'],
708 'argumentCount' => '1,2',
709 ],
710 'DOLLARDE' => [
711 'category' => Category::CATEGORY_FINANCIAL,
712 'functionCall' => [Financial\Dollar::class, 'decimal'],
713 'argumentCount' => '2',
714 ],
715 'DOLLARFR' => [
716 'category' => Category::CATEGORY_FINANCIAL,
717 'functionCall' => [Financial\Dollar::class, 'fractional'],
718 'argumentCount' => '2',
719 ],
720 'DPRODUCT' => [
721 'category' => Category::CATEGORY_DATABASE,
722 'functionCall' => [Database\DProduct::class, 'evaluate'],
723 'argumentCount' => '3',
724 ],
725 'DROP' => [
726 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
727 'functionCall' => [LookupRef\ChooseRowsEtc::class, 'drop'],
728 'argumentCount' => '2-3',
729 ],
730 'DSTDEV' => [
731 'category' => Category::CATEGORY_DATABASE,
732 'functionCall' => [Database\DStDev::class, 'evaluate'],
733 'argumentCount' => '3',
734 ],
735 'DSTDEVP' => [
736 'category' => Category::CATEGORY_DATABASE,
737 'functionCall' => [Database\DStDevP::class, 'evaluate'],
738 'argumentCount' => '3',
739 ],
740 'DSUM' => [
741 'category' => Category::CATEGORY_DATABASE,
742 'functionCall' => [Database\DSum::class, 'evaluate'],
743 'argumentCount' => '3',
744 ],
745 'DURATION' => [
746 'category' => Category::CATEGORY_FINANCIAL,
747 'functionCall' => [Functions::class, 'DUMMY'],
748 'argumentCount' => '5,6',
749 ],
750 'DVAR' => [
751 'category' => Category::CATEGORY_DATABASE,
752 'functionCall' => [Database\DVar::class, 'evaluate'],
753 'argumentCount' => '3',
754 ],
755 'DVARP' => [
756 'category' => Category::CATEGORY_DATABASE,
757 'functionCall' => [Database\DVarP::class, 'evaluate'],
758 'argumentCount' => '3',
759 ],
760 'ECMA.CEILING' => [
761 'category' => Category::CATEGORY_MATH_AND_TRIG,
762 'functionCall' => [Functions::class, 'DUMMY'],
763 'argumentCount' => '1,2',
764 ],
765 'EDATE' => [
766 'category' => Category::CATEGORY_DATE_AND_TIME,
767 'functionCall' => [DateTimeExcel\Month::class, 'adjust'],
768 'argumentCount' => '2',
769 ],
770 'EFFECT' => [
771 'category' => Category::CATEGORY_FINANCIAL,
772 'functionCall' => [Financial\InterestRate::class, 'effective'],
773 'argumentCount' => '2',
774 ],
775 'ENCODEURL' => [
776 'category' => Category::CATEGORY_WEB,
777 'functionCall' => [Web\Service::class, 'urlEncode'],
778 'argumentCount' => '1',
779 ],
780 'EOMONTH' => [
781 'category' => Category::CATEGORY_DATE_AND_TIME,
782 'functionCall' => [DateTimeExcel\Month::class, 'lastDay'],
783 'argumentCount' => '2',
784 ],
785 'ERF' => [
786 'category' => Category::CATEGORY_ENGINEERING,
787 'functionCall' => [Engineering\Erf::class, 'ERF'],
788 'argumentCount' => '1,2',
789 ],
790 'ERF.PRECISE' => [
791 'category' => Category::CATEGORY_ENGINEERING,
792 'functionCall' => [Engineering\Erf::class, 'ERFPRECISE'],
793 'argumentCount' => '1',
794 ],
795 'ERFC' => [
796 'category' => Category::CATEGORY_ENGINEERING,
797 'functionCall' => [Engineering\ErfC::class, 'ERFC'],
798 'argumentCount' => '1',
799 ],
800 'ERFC.PRECISE' => [
801 'category' => Category::CATEGORY_ENGINEERING,
802 'functionCall' => [Engineering\ErfC::class, 'ERFC'],
803 'argumentCount' => '1',
804 ],
805 'ERROR.TYPE' => [
806 'category' => Category::CATEGORY_INFORMATION,
807 'functionCall' => [Information\ExcelError::class, 'type'],
808 'argumentCount' => '1',
809 ],
810 'EVEN' => [
811 'category' => Category::CATEGORY_MATH_AND_TRIG,
812 'functionCall' => [MathTrig\Round::class, 'even'],
813 'argumentCount' => '1',
814 ],
815 'EXACT' => [
816 'category' => Category::CATEGORY_TEXT_AND_DATA,
817 'functionCall' => [TextData\Text::class, 'exact'],
818 'argumentCount' => '2',
819 ],
820 'EXP' => [
821 'category' => Category::CATEGORY_MATH_AND_TRIG,
822 'functionCall' => [MathTrig\Exp::class, 'evaluate'],
823 'argumentCount' => '1',
824 ],
825 'EXPAND' => [
826 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
827 'functionCall' => [LookupRef\ChooseRowsEtc::class, 'expand'],
828 'argumentCount' => '2-4',
829 ],
830 'EXPONDIST' => [
831 'category' => Category::CATEGORY_STATISTICAL,
832 'functionCall' => [Statistical\Distributions\Exponential::class, 'distribution'],
833 'argumentCount' => '3',
834 ],
835 'EXPON.DIST' => [
836 'category' => Category::CATEGORY_STATISTICAL,
837 'functionCall' => [Statistical\Distributions\Exponential::class, 'distribution'],
838 'argumentCount' => '3',
839 ],
840 'FACT' => [
841 'category' => Category::CATEGORY_MATH_AND_TRIG,
842 'functionCall' => [MathTrig\Factorial::class, 'fact'],
843 'argumentCount' => '1',
844 ],
845 'FACTDOUBLE' => [
846 'category' => Category::CATEGORY_MATH_AND_TRIG,
847 'functionCall' => [MathTrig\Factorial::class, 'factDouble'],
848 'argumentCount' => '1',
849 ],
850 'FALSE' => [
851 'category' => Category::CATEGORY_LOGICAL,
852 'functionCall' => [Logical\Boolean::class, 'FALSE'],
853 'argumentCount' => '0',
854 ],
855 'FDIST' => [
856 'category' => Category::CATEGORY_STATISTICAL,
857 'functionCall' => [Functions::class, 'DUMMY'],
858 'argumentCount' => '3',
859 ],
860 'F.DIST' => [
861 'category' => Category::CATEGORY_STATISTICAL,
862 'functionCall' => [Statistical\Distributions\F::class, 'distribution'],
863 'argumentCount' => '4',
864 ],
865 'F.DIST.RT' => [
866 'category' => Category::CATEGORY_STATISTICAL,
867 'functionCall' => [Functions::class, 'DUMMY'],
868 'argumentCount' => '3',
869 ],
870 'FILTER' => [
871 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
872 'functionCall' => [LookupRef\Filter::class, 'filter'],
873 'argumentCount' => '2-3',
874 ],
875 'FILTERXML' => [
876 'category' => Category::CATEGORY_WEB,
877 'functionCall' => [Functions::class, 'DUMMY'],
878 'argumentCount' => '2',
879 ],
880 'FIND' => [
881 'category' => Category::CATEGORY_TEXT_AND_DATA,
882 'functionCall' => [TextData\Search::class, 'sensitive'],
883 'argumentCount' => '2,3',
884 ],
885 'FINDB' => [
886 'category' => Category::CATEGORY_TEXT_AND_DATA,
887 'functionCall' => [TextData\Search::class, 'sensitive'],
888 'argumentCount' => '2,3',
889 ],
890 'FINV' => [
891 'category' => Category::CATEGORY_STATISTICAL,
892 'functionCall' => [Functions::class, 'DUMMY'],
893 'argumentCount' => '3',
894 ],
895 'F.INV' => [
896 'category' => Category::CATEGORY_STATISTICAL,
897 'functionCall' => [Functions::class, 'DUMMY'],
898 'argumentCount' => '3',
899 ],
900 'F.INV.RT' => [
901 'category' => Category::CATEGORY_STATISTICAL,
902 'functionCall' => [Functions::class, 'DUMMY'],
903 'argumentCount' => '3',
904 ],
905 'FISHER' => [
906 'category' => Category::CATEGORY_STATISTICAL,
907 'functionCall' => [Statistical\Distributions\Fisher::class, 'distribution'],
908 'argumentCount' => '1',
909 ],
910 'FISHERINV' => [
911 'category' => Category::CATEGORY_STATISTICAL,
912 'functionCall' => [Statistical\Distributions\Fisher::class, 'inverse'],
913 'argumentCount' => '1',
914 ],
915 'FIXED' => [
916 'category' => Category::CATEGORY_TEXT_AND_DATA,
917 'functionCall' => [TextData\Format::class, 'FIXEDFORMAT'],
918 'argumentCount' => '1-3',
919 ],
920 'FLOOR' => [
921 'category' => Category::CATEGORY_MATH_AND_TRIG,
922 'functionCall' => [MathTrig\Floor::class, 'floor'],
923 'argumentCount' => '1-2', // Excel requires 2, Ods/Gnumeric 1-2
924 ],
925 'FLOOR.MATH' => [
926 'category' => Category::CATEGORY_MATH_AND_TRIG,
927 'functionCall' => [MathTrig\Floor::class, 'math'],
928 'argumentCount' => '1-3',
929 ],
930 // pseudo-function to help with Ods
931 'FLOOR.ODS' => [
932 'category' => Category::CATEGORY_MATH_AND_TRIG,
933 'functionCall' => [MathTrig\Floor::class, 'mathOds'],
934 'argumentCount' => '1-3',
935 ],
936 'FLOOR.PRECISE' => [
937 'category' => Category::CATEGORY_MATH_AND_TRIG,
938 'functionCall' => [MathTrig\Floor::class, 'precise'],
939 'argumentCount' => '1-2',
940 ],
941 // pseudo-function implemented in Ods
942 'FLOOR.XCL' => [
943 'category' => Category::CATEGORY_MATH_AND_TRIG,
944 'functionCall' => [MathTrig\Floor::class, 'floor'],
945 'argumentCount' => '2',
946 ],
947 'FORECAST' => [
948 'category' => Category::CATEGORY_STATISTICAL,
949 'functionCall' => [Statistical\Trends::class, 'FORECAST'],
950 'argumentCount' => '3',
951 ],
952 'FORECAST.ETS' => [
953 'category' => Category::CATEGORY_STATISTICAL,
954 'functionCall' => [Functions::class, 'DUMMY'],
955 'argumentCount' => '3-6',
956 ],
957 'FORECAST.ETS.CONFINT' => [
958 'category' => Category::CATEGORY_STATISTICAL,
959 'functionCall' => [Functions::class, 'DUMMY'],
960 'argumentCount' => '3-6',
961 ],
962 'FORECAST.ETS.SEASONALITY' => [
963 'category' => Category::CATEGORY_STATISTICAL,
964 'functionCall' => [Functions::class, 'DUMMY'],
965 'argumentCount' => '2-4',
966 ],
967 'FORECAST.ETS.STAT' => [
968 'category' => Category::CATEGORY_STATISTICAL,
969 'functionCall' => [Functions::class, 'DUMMY'],
970 'argumentCount' => '3-6',
971 ],
972 'FORECAST.LINEAR' => [
973 'category' => Category::CATEGORY_STATISTICAL,
974 'functionCall' => [Statistical\Trends::class, 'FORECAST'],
975 'argumentCount' => '3',
976 ],
977 'FORMULATEXT' => [
978 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
979 'functionCall' => [LookupRef\Formula::class, 'text'],
980 'argumentCount' => '1',
981 'passCellReference' => true,
982 'passByReference' => [true],
983 ],
984 'FREQUENCY' => [
985 'category' => Category::CATEGORY_STATISTICAL,
986 'functionCall' => [Functions::class, 'DUMMY'],
987 'argumentCount' => '2',
988 ],
989 'FTEST' => [
990 'category' => Category::CATEGORY_STATISTICAL,
991 'functionCall' => [Functions::class, 'DUMMY'],
992 'argumentCount' => '2',
993 ],
994 'F.TEST' => [
995 'category' => Category::CATEGORY_STATISTICAL,
996 'functionCall' => [Functions::class, 'DUMMY'],
997 'argumentCount' => '2',
998 ],
999 'FV' => [
1000 'category' => Category::CATEGORY_FINANCIAL,
1001 'functionCall' => [Financial\CashFlow\Constant\Periodic::class, 'futureValue'],
1002 'argumentCount' => '3-5',
1003 ],
1004 'FVSCHEDULE' => [
1005 'category' => Category::CATEGORY_FINANCIAL,
1006 'functionCall' => [Financial\CashFlow\Single::class, 'futureValue'],
1007 'argumentCount' => '2',
1008 ],
1009 'GAMMA' => [
1010 'category' => Category::CATEGORY_STATISTICAL,
1011 'functionCall' => [Statistical\Distributions\Gamma::class, 'gamma'],
1012 'argumentCount' => '1',
1013 ],
1014 'GAMMADIST' => [
1015 'category' => Category::CATEGORY_STATISTICAL,
1016 'functionCall' => [Statistical\Distributions\Gamma::class, 'distribution'],
1017 'argumentCount' => '4',
1018 ],
1019 'GAMMA.DIST' => [
1020 'category' => Category::CATEGORY_STATISTICAL,
1021 'functionCall' => [Statistical\Distributions\Gamma::class, 'distribution'],
1022 'argumentCount' => '4',
1023 ],
1024 'GAMMAINV' => [
1025 'category' => Category::CATEGORY_STATISTICAL,
1026 'functionCall' => [Statistical\Distributions\Gamma::class, 'inverse'],
1027 'argumentCount' => '3',
1028 ],
1029 'GAMMA.INV' => [
1030 'category' => Category::CATEGORY_STATISTICAL,
1031 'functionCall' => [Statistical\Distributions\Gamma::class, 'inverse'],
1032 'argumentCount' => '3',
1033 ],
1034 'GAMMALN' => [
1035 'category' => Category::CATEGORY_STATISTICAL,
1036 'functionCall' => [Statistical\Distributions\Gamma::class, 'ln'],
1037 'argumentCount' => '1',
1038 ],
1039 'GAMMALN.PRECISE' => [
1040 'category' => Category::CATEGORY_STATISTICAL,
1041 'functionCall' => [Statistical\Distributions\Gamma::class, 'ln'],
1042 'argumentCount' => '1',
1043 ],
1044 'GAUSS' => [
1045 'category' => Category::CATEGORY_STATISTICAL,
1046 'functionCall' => [Statistical\Distributions\StandardNormal::class, 'gauss'],
1047 'argumentCount' => '1',
1048 ],
1049 'GCD' => [
1050 'category' => Category::CATEGORY_MATH_AND_TRIG,
1051 'functionCall' => [MathTrig\Gcd::class, 'evaluate'],
1052 'argumentCount' => '1+',
1053 ],
1054 'GEOMEAN' => [
1055 'category' => Category::CATEGORY_STATISTICAL,
1056 'functionCall' => [Statistical\Averages\Mean::class, 'geometric'],
1057 'argumentCount' => '1+',
1058 ],
1059 'GESTEP' => [
1060 'category' => Category::CATEGORY_ENGINEERING,
1061 'functionCall' => [Engineering\Compare::class, 'GESTEP'],
1062 'argumentCount' => '1,2',
1063 ],
1064 'GETPIVOTDATA' => [
1065 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1066 'functionCall' => [Functions::class, 'DUMMY'],
1067 'argumentCount' => '2+',
1068 ],
1069 'GROUPBY' => [
1070 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1071 'functionCall' => [Functions::class, 'DUMMY'],
1072 'argumentCount' => '3-7',
1073 ],
1074 'GROWTH' => [
1075 'category' => Category::CATEGORY_STATISTICAL,
1076 'functionCall' => [Statistical\Trends::class, 'GROWTH'],
1077 'argumentCount' => '1-4',
1078 ],
1079 'HARMEAN' => [
1080 'category' => Category::CATEGORY_STATISTICAL,
1081 'functionCall' => [Statistical\Averages\Mean::class, 'harmonic'],
1082 'argumentCount' => '1+',
1083 ],
1084 'HEX2BIN' => [
1085 'category' => Category::CATEGORY_ENGINEERING,
1086 'functionCall' => [Engineering\ConvertHex::class, 'toBinary'],
1087 'argumentCount' => '1,2',
1088 ],
1089 'HEX2DEC' => [
1090 'category' => Category::CATEGORY_ENGINEERING,
1091 'functionCall' => [Engineering\ConvertHex::class, 'toDecimal'],
1092 'argumentCount' => '1',
1093 ],
1094 'HEX2OCT' => [
1095 'category' => Category::CATEGORY_ENGINEERING,
1096 'functionCall' => [Engineering\ConvertHex::class, 'toOctal'],
1097 'argumentCount' => '1,2',
1098 ],
1099 'HLOOKUP' => [
1100 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1101 'functionCall' => [LookupRef\HLookup::class, 'lookup'],
1102 'argumentCount' => '3,4',
1103 ],
1104 'HOUR' => [
1105 'category' => Category::CATEGORY_DATE_AND_TIME,
1106 'functionCall' => [DateTimeExcel\TimeParts::class, 'hour'],
1107 'argumentCount' => '1',
1108 ],
1109 'HSTACK' => [
1110 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1111 'functionCall' => [LookupRef\Hstack::class, 'hstack'],
1112 'argumentCount' => '1+',
1113 ],
1114 'HYPERLINK' => [
1115 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1116 'functionCall' => [LookupRef\Hyperlink::class, 'set'],
1117 'argumentCount' => '1,2',
1118 'passCellReference' => true,
1119 ],
1120 'HYPGEOMDIST' => [
1121 'category' => Category::CATEGORY_STATISTICAL,
1122 'functionCall' => [Statistical\Distributions\HyperGeometric::class, 'distribution'],
1123 'argumentCount' => '4',
1124 ],
1125 'HYPGEOM.DIST' => [
1126 'category' => Category::CATEGORY_STATISTICAL,
1127 'functionCall' => [Functions::class, 'DUMMY'],
1128 'argumentCount' => '5',
1129 ],
1130 'IF' => [
1131 'category' => Category::CATEGORY_LOGICAL,
1132 'functionCall' => [Logical\Conditional::class, 'statementIf'],
1133 'argumentCount' => '2-3',
1134 ],
1135 'IFERROR' => [
1136 'category' => Category::CATEGORY_LOGICAL,
1137 'functionCall' => [Logical\Conditional::class, 'IFERROR'],
1138 'argumentCount' => '2',
1139 ],
1140 'IFNA' => [
1141 'category' => Category::CATEGORY_LOGICAL,
1142 'functionCall' => [Logical\Conditional::class, 'IFNA'],
1143 'argumentCount' => '2',
1144 ],
1145 'IFS' => [
1146 'category' => Category::CATEGORY_LOGICAL,
1147 'functionCall' => [Logical\Conditional::class, 'IFS'],
1148 'argumentCount' => '2+',
1149 ],
1150 'IMABS' => [
1151 'category' => Category::CATEGORY_ENGINEERING,
1152 'functionCall' => [Engineering\ComplexFunctions::class, 'IMABS'],
1153 'argumentCount' => '1',
1154 ],
1155 'IMAGINARY' => [
1156 'category' => Category::CATEGORY_ENGINEERING,
1157 'functionCall' => [Engineering\Complex::class, 'IMAGINARY'],
1158 'argumentCount' => '1',
1159 ],
1160 'IMARGUMENT' => [
1161 'category' => Category::CATEGORY_ENGINEERING,
1162 'functionCall' => [Engineering\ComplexFunctions::class, 'IMARGUMENT'],
1163 'argumentCount' => '1',
1164 ],
1165 'IMCONJUGATE' => [
1166 'category' => Category::CATEGORY_ENGINEERING,
1167 'functionCall' => [Engineering\ComplexFunctions::class, 'IMCONJUGATE'],
1168 'argumentCount' => '1',
1169 ],
1170 'IMCOS' => [
1171 'category' => Category::CATEGORY_ENGINEERING,
1172 'functionCall' => [Engineering\ComplexFunctions::class, 'IMCOS'],
1173 'argumentCount' => '1',
1174 ],
1175 'IMCOSH' => [
1176 'category' => Category::CATEGORY_ENGINEERING,
1177 'functionCall' => [Engineering\ComplexFunctions::class, 'IMCOSH'],
1178 'argumentCount' => '1',
1179 ],
1180 'IMCOT' => [
1181 'category' => Category::CATEGORY_ENGINEERING,
1182 'functionCall' => [Engineering\ComplexFunctions::class, 'IMCOT'],
1183 'argumentCount' => '1',
1184 ],
1185 'IMCSC' => [
1186 'category' => Category::CATEGORY_ENGINEERING,
1187 'functionCall' => [Engineering\ComplexFunctions::class, 'IMCSC'],
1188 'argumentCount' => '1',
1189 ],
1190 'IMCSCH' => [
1191 'category' => Category::CATEGORY_ENGINEERING,
1192 'functionCall' => [Engineering\ComplexFunctions::class, 'IMCSCH'],
1193 'argumentCount' => '1',
1194 ],
1195 'IMDIV' => [
1196 'category' => Category::CATEGORY_ENGINEERING,
1197 'functionCall' => [Engineering\ComplexOperations::class, 'IMDIV'],
1198 'argumentCount' => '2',
1199 ],
1200 'IMEXP' => [
1201 'category' => Category::CATEGORY_ENGINEERING,
1202 'functionCall' => [Engineering\ComplexFunctions::class, 'IMEXP'],
1203 'argumentCount' => '1',
1204 ],
1205 'IMLN' => [
1206 'category' => Category::CATEGORY_ENGINEERING,
1207 'functionCall' => [Engineering\ComplexFunctions::class, 'IMLN'],
1208 'argumentCount' => '1',
1209 ],
1210 'IMLOG10' => [
1211 'category' => Category::CATEGORY_ENGINEERING,
1212 'functionCall' => [Engineering\ComplexFunctions::class, 'IMLOG10'],
1213 'argumentCount' => '1',
1214 ],
1215 'IMLOG2' => [
1216 'category' => Category::CATEGORY_ENGINEERING,
1217 'functionCall' => [Engineering\ComplexFunctions::class, 'IMLOG2'],
1218 'argumentCount' => '1',
1219 ],
1220 'IMPOWER' => [
1221 'category' => Category::CATEGORY_ENGINEERING,
1222 'functionCall' => [Engineering\ComplexFunctions::class, 'IMPOWER'],
1223 'argumentCount' => '2',
1224 ],
1225 'IMPRODUCT' => [
1226 'category' => Category::CATEGORY_ENGINEERING,
1227 'functionCall' => [Engineering\ComplexOperations::class, 'IMPRODUCT'],
1228 'argumentCount' => '1+',
1229 ],
1230 'IMREAL' => [
1231 'category' => Category::CATEGORY_ENGINEERING,
1232 'functionCall' => [Engineering\Complex::class, 'IMREAL'],
1233 'argumentCount' => '1',
1234 ],
1235 'IMSEC' => [
1236 'category' => Category::CATEGORY_ENGINEERING,
1237 'functionCall' => [Engineering\ComplexFunctions::class, 'IMSEC'],
1238 'argumentCount' => '1',
1239 ],
1240 'IMSECH' => [
1241 'category' => Category::CATEGORY_ENGINEERING,
1242 'functionCall' => [Engineering\ComplexFunctions::class, 'IMSECH'],
1243 'argumentCount' => '1',
1244 ],
1245 'IMSIN' => [
1246 'category' => Category::CATEGORY_ENGINEERING,
1247 'functionCall' => [Engineering\ComplexFunctions::class, 'IMSIN'],
1248 'argumentCount' => '1',
1249 ],
1250 'IMSINH' => [
1251 'category' => Category::CATEGORY_ENGINEERING,
1252 'functionCall' => [Engineering\ComplexFunctions::class, 'IMSINH'],
1253 'argumentCount' => '1',
1254 ],
1255 'IMSQRT' => [
1256 'category' => Category::CATEGORY_ENGINEERING,
1257 'functionCall' => [Engineering\ComplexFunctions::class, 'IMSQRT'],
1258 'argumentCount' => '1',
1259 ],
1260 'IMSUB' => [
1261 'category' => Category::CATEGORY_ENGINEERING,
1262 'functionCall' => [Engineering\ComplexOperations::class, 'IMSUB'],
1263 'argumentCount' => '2',
1264 ],
1265 'IMSUM' => [
1266 'category' => Category::CATEGORY_ENGINEERING,
1267 'functionCall' => [Engineering\ComplexOperations::class, 'IMSUM'],
1268 'argumentCount' => '1+',
1269 ],
1270 'IMTAN' => [
1271 'category' => Category::CATEGORY_ENGINEERING,
1272 'functionCall' => [Engineering\ComplexFunctions::class, 'IMTAN'],
1273 'argumentCount' => '1',
1274 ],
1275 'INDEX' => [
1276 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1277 'functionCall' => [LookupRef\Matrix::class, 'index'],
1278 'argumentCount' => '2-4',
1279 ],
1280 'INDIRECT' => [
1281 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1282 'functionCall' => [LookupRef\Indirect::class, 'INDIRECT'],
1283 'argumentCount' => '1,2',
1284 'passCellReference' => true,
1285 ],
1286 'INFO' => [
1287 'category' => Category::CATEGORY_INFORMATION,
1288 'functionCall' => [Information\Info::class, 'getInfo'],
1289 'argumentCount' => '1',
1290 'passCellReference' => true,
1291 ],
1292 'INT' => [
1293 'category' => Category::CATEGORY_MATH_AND_TRIG,
1294 'functionCall' => [MathTrig\IntClass::class, 'evaluate'],
1295 'argumentCount' => '1',
1296 ],
1297 'INTERCEPT' => [
1298 'category' => Category::CATEGORY_STATISTICAL,
1299 'functionCall' => [Statistical\Trends::class, 'INTERCEPT'],
1300 'argumentCount' => '2',
1301 ],
1302 'INTRATE' => [
1303 'category' => Category::CATEGORY_FINANCIAL,
1304 'functionCall' => [Financial\Securities\Rates::class, 'interest'],
1305 'argumentCount' => '4,5',
1306 ],
1307 'IPMT' => [
1308 'category' => Category::CATEGORY_FINANCIAL,
1309 'functionCall' => [Financial\CashFlow\Constant\Periodic\Interest::class, 'payment'],
1310 'argumentCount' => '4-6',
1311 ],
1312 'IRR' => [
1313 'category' => Category::CATEGORY_FINANCIAL,
1314 'functionCall' => [Financial\CashFlow\Variable\Periodic::class, 'rate'],
1315 'argumentCount' => '1,2',
1316 ],
1317 'ISBLANK' => [
1318 'category' => Category::CATEGORY_INFORMATION,
1319 'functionCall' => [Information\Value::class, 'isBlank'],
1320 'argumentCount' => '1',
1321 ],
1322 'ISERR' => [
1323 'category' => Category::CATEGORY_INFORMATION,
1324 'functionCall' => [Information\ErrorValue::class, 'isErr'],
1325 'argumentCount' => '1',
1326 ],
1327 'ISERROR' => [
1328 'category' => Category::CATEGORY_INFORMATION,
1329 'functionCall' => [Information\ErrorValue::class, 'isError'],
1330 'argumentCount' => '1',
1331 ],
1332 'ISEVEN' => [
1333 'category' => Category::CATEGORY_INFORMATION,
1334 'functionCall' => [Information\Value::class, 'isEven'],
1335 'argumentCount' => '1',
1336 ],
1337 'ISFORMULA' => [
1338 'category' => Category::CATEGORY_INFORMATION,
1339 'functionCall' => [Information\Value::class, 'isFormula'],
1340 'argumentCount' => '1',
1341 'passCellReference' => true,
1342 'passByReference' => [true],
1343 ],
1344 'ISLOGICAL' => [
1345 'category' => Category::CATEGORY_INFORMATION,
1346 'functionCall' => [Information\Value::class, 'isLogical'],
1347 'argumentCount' => '1',
1348 ],
1349 'ISNA' => [
1350 'category' => Category::CATEGORY_INFORMATION,
1351 'functionCall' => [Information\ErrorValue::class, 'isNa'],
1352 'argumentCount' => '1',
1353 ],
1354 'ISNONTEXT' => [
1355 'category' => Category::CATEGORY_INFORMATION,
1356 'functionCall' => [Information\Value::class, 'isNonText'],
1357 'argumentCount' => '1',
1358 ],
1359 'ISNUMBER' => [
1360 'category' => Category::CATEGORY_INFORMATION,
1361 'functionCall' => [Information\Value::class, 'isNumber'],
1362 'argumentCount' => '1',
1363 ],
1364 'ISO.CEILING' => [
1365 'category' => Category::CATEGORY_MATH_AND_TRIG,
1366 'functionCall' => [Functions::class, 'DUMMY'],
1367 'argumentCount' => '1,2',
1368 ],
1369 'ISODD' => [
1370 'category' => Category::CATEGORY_INFORMATION,
1371 'functionCall' => [Information\Value::class, 'isOdd'],
1372 'argumentCount' => '1',
1373 ],
1374 'ISOMITTED' => [
1375 'category' => Category::CATEGORY_INFORMATION,
1376 'functionCall' => [Functions::class, 'DUMMY'],
1377 'argumentCount' => '*',
1378 ],
1379 'ISOWEEKNUM' => [
1380 'category' => Category::CATEGORY_DATE_AND_TIME,
1381 'functionCall' => [DateTimeExcel\Week::class, 'isoWeekNumber'],
1382 'argumentCount' => '1',
1383 ],
1384 'ISPMT' => [
1385 'category' => Category::CATEGORY_FINANCIAL,
1386 'functionCall' => [Financial\CashFlow\Constant\Periodic\Interest::class, 'schedulePayment'],
1387 'argumentCount' => '4',
1388 ],
1389 'ISREF' => [
1390 'category' => Category::CATEGORY_INFORMATION,
1391 'functionCall' => [Information\Value::class, 'isRef'],
1392 'argumentCount' => '1',
1393 'passCellReference' => true,
1394 'passByReference' => [true],
1395 ],
1396 'ISTEXT' => [
1397 'category' => Category::CATEGORY_INFORMATION,
1398 'functionCall' => [Information\Value::class, 'isText'],
1399 'argumentCount' => '1',
1400 ],
1401 'ISTHAIDIGIT' => [
1402 'category' => Category::CATEGORY_TEXT_AND_DATA,
1403 'functionCall' => [Functions::class, 'DUMMY'],
1404 'argumentCount' => '?',
1405 ],
1406 'JIS' => [
1407 'category' => Category::CATEGORY_TEXT_AND_DATA,
1408 'functionCall' => [Functions::class, 'DUMMY'],
1409 'argumentCount' => '1',
1410 ],
1411 'KURT' => [
1412 'category' => Category::CATEGORY_STATISTICAL,
1413 'functionCall' => [Statistical\Deviations::class, 'kurtosis'],
1414 'argumentCount' => '1+',
1415 ],
1416 'LAMBDA' => [
1417 'category' => Category::CATEGORY_LOGICAL,
1418 'functionCall' => [Functions::class, 'DUMMY'],
1419 'argumentCount' => '*',
1420 ],
1421 'LARGE' => [
1422 'category' => Category::CATEGORY_STATISTICAL,
1423 'functionCall' => [Statistical\Size::class, 'large'],
1424 'argumentCount' => '2',
1425 ],
1426 'LCM' => [
1427 'category' => Category::CATEGORY_MATH_AND_TRIG,
1428 'functionCall' => [MathTrig\Lcm::class, 'evaluate'],
1429 'argumentCount' => '1+',
1430 ],
1431 'LEFT' => [
1432 'category' => Category::CATEGORY_TEXT_AND_DATA,
1433 'functionCall' => [TextData\Extract::class, 'left'],
1434 'argumentCount' => '1,2',
1435 ],
1436 'LEFTB' => [
1437 'category' => Category::CATEGORY_TEXT_AND_DATA,
1438 'functionCall' => [TextData\Extract::class, 'left'],
1439 'argumentCount' => '1,2',
1440 ],
1441 'LEN' => [
1442 'category' => Category::CATEGORY_TEXT_AND_DATA,
1443 'functionCall' => [TextData\Text::class, 'length'],
1444 'argumentCount' => '1',
1445 ],
1446 'LENB' => [
1447 'category' => Category::CATEGORY_TEXT_AND_DATA,
1448 'functionCall' => [TextData\Text::class, 'length'],
1449 'argumentCount' => '1',
1450 ],
1451 'LET' => [
1452 'category' => Category::CATEGORY_LOGICAL,
1453 'functionCall' => [Functions::class, 'DUMMY'],
1454 'argumentCount' => '*',
1455 ],
1456 'LINEST' => [
1457 'category' => Category::CATEGORY_STATISTICAL,
1458 'functionCall' => [Statistical\Trends::class, 'LINEST'],
1459 'argumentCount' => '1-4',
1460 ],
1461 'LN' => [
1462 'category' => Category::CATEGORY_MATH_AND_TRIG,
1463 'functionCall' => [MathTrig\Logarithms::class, 'natural'],
1464 'argumentCount' => '1',
1465 ],
1466 'LOG' => [
1467 'category' => Category::CATEGORY_MATH_AND_TRIG,
1468 'functionCall' => [MathTrig\Logarithms::class, 'withBase'],
1469 'argumentCount' => '1,2',
1470 ],
1471 'LOG10' => [
1472 'category' => Category::CATEGORY_MATH_AND_TRIG,
1473 'functionCall' => [MathTrig\Logarithms::class, 'base10'],
1474 'argumentCount' => '1',
1475 ],
1476 'LOGEST' => [
1477 'category' => Category::CATEGORY_STATISTICAL,
1478 'functionCall' => [Statistical\Trends::class, 'LOGEST'],
1479 'argumentCount' => '1-4',
1480 ],
1481 'LOGINV' => [
1482 'category' => Category::CATEGORY_STATISTICAL,
1483 'functionCall' => [Statistical\Distributions\LogNormal::class, 'inverse'],
1484 'argumentCount' => '3',
1485 ],
1486 'LOGNORMDIST' => [
1487 'category' => Category::CATEGORY_STATISTICAL,
1488 'functionCall' => [Statistical\Distributions\LogNormal::class, 'cumulative'],
1489 'argumentCount' => '3',
1490 ],
1491 'LOGNORM.DIST' => [
1492 'category' => Category::CATEGORY_STATISTICAL,
1493 'functionCall' => [Statistical\Distributions\LogNormal::class, 'distribution'],
1494 'argumentCount' => '4',
1495 ],
1496 'LOGNORM.INV' => [
1497 'category' => Category::CATEGORY_STATISTICAL,
1498 'functionCall' => [Statistical\Distributions\LogNormal::class, 'inverse'],
1499 'argumentCount' => '3',
1500 ],
1501 'LOOKUP' => [
1502 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1503 'functionCall' => [LookupRef\Lookup::class, 'lookup'],
1504 'argumentCount' => '2,3',
1505 ],
1506 'LOWER' => [
1507 'category' => Category::CATEGORY_TEXT_AND_DATA,
1508 'functionCall' => [TextData\CaseConvert::class, 'lower'],
1509 'argumentCount' => '1',
1510 ],
1511 'MAKEARRAY' => [
1512 'category' => Category::CATEGORY_LOGICAL,
1513 'functionCall' => [Functions::class, 'DUMMY'],
1514 'argumentCount' => '*',
1515 ],
1516 'MAP' => [
1517 'category' => Category::CATEGORY_LOGICAL,
1518 'functionCall' => [Functions::class, 'DUMMY'],
1519 'argumentCount' => '*',
1520 ],
1521 'MATCH' => [
1522 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1523 'functionCall' => [LookupRef\ExcelMatch::class, 'MATCH'],
1524 'argumentCount' => '2,3',
1525 ],
1526 'MAX' => [
1527 'category' => Category::CATEGORY_STATISTICAL,
1528 'functionCall' => [Statistical\Maximum::class, 'max'],
1529 'argumentCount' => '1+',
1530 ],
1531 'MAXA' => [
1532 'category' => Category::CATEGORY_STATISTICAL,
1533 'functionCall' => [Statistical\Maximum::class, 'maxA'],
1534 'argumentCount' => '1+',
1535 ],
1536 'MAXIFS' => [
1537 'category' => Category::CATEGORY_STATISTICAL,
1538 'functionCall' => [Statistical\Conditional::class, 'MAXIFS'],
1539 'argumentCount' => '3+',
1540 ],
1541 'MDETERM' => [
1542 'category' => Category::CATEGORY_MATH_AND_TRIG,
1543 'functionCall' => [MathTrig\MatrixFunctions::class, 'determinant'],
1544 'argumentCount' => '1',
1545 ],
1546 'MDURATION' => [
1547 'category' => Category::CATEGORY_FINANCIAL,
1548 'functionCall' => [Functions::class, 'DUMMY'],
1549 'argumentCount' => '5,6',
1550 ],
1551 'MEDIAN' => [
1552 'category' => Category::CATEGORY_STATISTICAL,
1553 'functionCall' => [Statistical\Averages::class, 'median'],
1554 'argumentCount' => '1+',
1555 ],
1556 'MEDIANIF' => [
1557 'category' => Category::CATEGORY_STATISTICAL,
1558 'functionCall' => [Functions::class, 'DUMMY'],
1559 'argumentCount' => '2+',
1560 ],
1561 'MID' => [
1562 'category' => Category::CATEGORY_TEXT_AND_DATA,
1563 'functionCall' => [TextData\Extract::class, 'mid'],
1564 'argumentCount' => '3',
1565 ],
1566 'MIDB' => [
1567 'category' => Category::CATEGORY_TEXT_AND_DATA,
1568 'functionCall' => [TextData\Extract::class, 'mid'],
1569 'argumentCount' => '3',
1570 ],
1571 'MIN' => [
1572 'category' => Category::CATEGORY_STATISTICAL,
1573 'functionCall' => [Statistical\Minimum::class, 'min'],
1574 'argumentCount' => '1+',
1575 ],
1576 'MINA' => [
1577 'category' => Category::CATEGORY_STATISTICAL,
1578 'functionCall' => [Statistical\Minimum::class, 'minA'],
1579 'argumentCount' => '1+',
1580 ],
1581 'MINIFS' => [
1582 'category' => Category::CATEGORY_STATISTICAL,
1583 'functionCall' => [Statistical\Conditional::class, 'MINIFS'],
1584 'argumentCount' => '3+',
1585 ],
1586 'MINUTE' => [
1587 'category' => Category::CATEGORY_DATE_AND_TIME,
1588 'functionCall' => [DateTimeExcel\TimeParts::class, 'minute'],
1589 'argumentCount' => '1',
1590 ],
1591 'MINVERSE' => [
1592 'category' => Category::CATEGORY_MATH_AND_TRIG,
1593 'functionCall' => [MathTrig\MatrixFunctions::class, 'inverse'],
1594 'argumentCount' => '1',
1595 ],
1596 'MIRR' => [
1597 'category' => Category::CATEGORY_FINANCIAL,
1598 'functionCall' => [Financial\CashFlow\Variable\Periodic::class, 'modifiedRate'],
1599 'argumentCount' => '3',
1600 ],
1601 'MMULT' => [
1602 'category' => Category::CATEGORY_MATH_AND_TRIG,
1603 'functionCall' => [MathTrig\MatrixFunctions::class, 'multiply'],
1604 'argumentCount' => '2',
1605 ],
1606 'MOD' => [
1607 'category' => Category::CATEGORY_MATH_AND_TRIG,
1608 'functionCall' => [MathTrig\Operations::class, 'mod'],
1609 'argumentCount' => '2',
1610 ],
1611 'MODE' => [
1612 'category' => Category::CATEGORY_STATISTICAL,
1613 'functionCall' => [Statistical\Averages::class, 'mode'],
1614 'argumentCount' => '1+',
1615 ],
1616 'MODE.MULT' => [
1617 'category' => Category::CATEGORY_STATISTICAL,
1618 'functionCall' => [Functions::class, 'DUMMY'],
1619 'argumentCount' => '1+',
1620 ],
1621 'MODE.SNGL' => [
1622 'category' => Category::CATEGORY_STATISTICAL,
1623 'functionCall' => [Statistical\Averages::class, 'mode'],
1624 'argumentCount' => '1+',
1625 ],
1626 'MONTH' => [
1627 'category' => Category::CATEGORY_DATE_AND_TIME,
1628 'functionCall' => [DateTimeExcel\DateParts::class, 'month'],
1629 'argumentCount' => '1',
1630 ],
1631 'MROUND' => [
1632 'category' => Category::CATEGORY_MATH_AND_TRIG,
1633 'functionCall' => [MathTrig\Round::class, 'multiple'],
1634 'argumentCount' => '2',
1635 ],
1636 'MULTINOMIAL' => [
1637 'category' => Category::CATEGORY_MATH_AND_TRIG,
1638 'functionCall' => [MathTrig\Factorial::class, 'multinomial'],
1639 'argumentCount' => '1+',
1640 ],
1641 'MUNIT' => [
1642 'category' => Category::CATEGORY_MATH_AND_TRIG,
1643 'functionCall' => [MathTrig\MatrixFunctions::class, 'identity'],
1644 'argumentCount' => '1',
1645 ],
1646 'N' => [
1647 'category' => Category::CATEGORY_INFORMATION,
1648 'functionCall' => [Information\Value::class, 'asNumber'],
1649 'argumentCount' => '1',
1650 ],
1651 'NA' => [
1652 'category' => Category::CATEGORY_INFORMATION,
1653 'functionCall' => [Information\ExcelError::class, 'NA'],
1654 'argumentCount' => '0',
1655 ],
1656 'NEGBINOMDIST' => [
1657 'category' => Category::CATEGORY_STATISTICAL,
1658 'functionCall' => [Statistical\Distributions\Binomial::class, 'negative'],
1659 'argumentCount' => '3',
1660 ],
1661 'NEGBINOM.DIST' => [
1662 'category' => Category::CATEGORY_STATISTICAL,
1663 'functionCall' => [Functions::class, 'DUMMY'],
1664 'argumentCount' => '4',
1665 ],
1666 'NETWORKDAYS' => [
1667 'category' => Category::CATEGORY_DATE_AND_TIME,
1668 'functionCall' => [DateTimeExcel\NetworkDays::class, 'count'],
1669 'argumentCount' => '2-3',
1670 ],
1671 'NETWORKDAYS.INTL' => [
1672 'category' => Category::CATEGORY_DATE_AND_TIME,
1673 'functionCall' => [Functions::class, 'DUMMY'],
1674 'argumentCount' => '2-4',
1675 ],
1676 'NOMINAL' => [
1677 'category' => Category::CATEGORY_FINANCIAL,
1678 'functionCall' => [Financial\InterestRate::class, 'nominal'],
1679 'argumentCount' => '2',
1680 ],
1681 'NORMDIST' => [
1682 'category' => Category::CATEGORY_STATISTICAL,
1683 'functionCall' => [Statistical\Distributions\Normal::class, 'distribution'],
1684 'argumentCount' => '4',
1685 ],
1686 'NORM.DIST' => [
1687 'category' => Category::CATEGORY_STATISTICAL,
1688 'functionCall' => [Statistical\Distributions\Normal::class, 'distribution'],
1689 'argumentCount' => '4',
1690 ],
1691 'NORMINV' => [
1692 'category' => Category::CATEGORY_STATISTICAL,
1693 'functionCall' => [Statistical\Distributions\Normal::class, 'inverse'],
1694 'argumentCount' => '3',
1695 ],
1696 'NORM.INV' => [
1697 'category' => Category::CATEGORY_STATISTICAL,
1698 'functionCall' => [Statistical\Distributions\Normal::class, 'inverse'],
1699 'argumentCount' => '3',
1700 ],
1701 'NORMSDIST' => [
1702 'category' => Category::CATEGORY_STATISTICAL,
1703 'functionCall' => [Statistical\Distributions\StandardNormal::class, 'cumulative'],
1704 'argumentCount' => '1',
1705 ],
1706 'NORM.S.DIST' => [
1707 'category' => Category::CATEGORY_STATISTICAL,
1708 'functionCall' => [Statistical\Distributions\StandardNormal::class, 'distribution'],
1709 'argumentCount' => '1,2',
1710 ],
1711 'NORMSINV' => [
1712 'category' => Category::CATEGORY_STATISTICAL,
1713 'functionCall' => [Statistical\Distributions\StandardNormal::class, 'inverse'],
1714 'argumentCount' => '1',
1715 ],
1716 'NORM.S.INV' => [
1717 'category' => Category::CATEGORY_STATISTICAL,
1718 'functionCall' => [Statistical\Distributions\StandardNormal::class, 'inverse'],
1719 'argumentCount' => '1',
1720 ],
1721 'NOT' => [
1722 'category' => Category::CATEGORY_LOGICAL,
1723 'functionCall' => [Logical\Operations::class, 'NOT'],
1724 'argumentCount' => '1',
1725 ],
1726 'NOW' => [
1727 'category' => Category::CATEGORY_DATE_AND_TIME,
1728 'functionCall' => [DateTimeExcel\Current::class, 'now'],
1729 'argumentCount' => '0',
1730 ],
1731 'NPER' => [
1732 'category' => Category::CATEGORY_FINANCIAL,
1733 'functionCall' => [Financial\CashFlow\Constant\Periodic::class, 'periods'],
1734 'argumentCount' => '3-5',
1735 ],
1736 'NPV' => [
1737 'category' => Category::CATEGORY_FINANCIAL,
1738 'functionCall' => [Financial\CashFlow\Variable\Periodic::class, 'presentValue'],
1739 'argumentCount' => '2+',
1740 ],
1741 'NUMBERSTRING' => [
1742 'category' => Category::CATEGORY_TEXT_AND_DATA,
1743 'functionCall' => [Functions::class, 'DUMMY'],
1744 'argumentCount' => '?',
1745 ],
1746 'NUMBERVALUE' => [
1747 'category' => Category::CATEGORY_TEXT_AND_DATA,
1748 'functionCall' => [TextData\Format::class, 'NUMBERVALUE'],
1749 'argumentCount' => '1+',
1750 ],
1751 'OCT2BIN' => [
1752 'category' => Category::CATEGORY_ENGINEERING,
1753 'functionCall' => [Engineering\ConvertOctal::class, 'toBinary'],
1754 'argumentCount' => '1,2',
1755 ],
1756 'OCT2DEC' => [
1757 'category' => Category::CATEGORY_ENGINEERING,
1758 'functionCall' => [Engineering\ConvertOctal::class, 'toDecimal'],
1759 'argumentCount' => '1',
1760 ],
1761 'OCT2HEX' => [
1762 'category' => Category::CATEGORY_ENGINEERING,
1763 'functionCall' => [Engineering\ConvertOctal::class, 'toHex'],
1764 'argumentCount' => '1,2',
1765 ],
1766 'ODD' => [
1767 'category' => Category::CATEGORY_MATH_AND_TRIG,
1768 'functionCall' => [MathTrig\Round::class, 'odd'],
1769 'argumentCount' => '1',
1770 ],
1771 'ODDFPRICE' => [
1772 'category' => Category::CATEGORY_FINANCIAL,
1773 'functionCall' => [Functions::class, 'DUMMY'],
1774 'argumentCount' => '8,9',
1775 ],
1776 'ODDFYIELD' => [
1777 'category' => Category::CATEGORY_FINANCIAL,
1778 'functionCall' => [Functions::class, 'DUMMY'],
1779 'argumentCount' => '8,9',
1780 ],
1781 'ODDLPRICE' => [
1782 'category' => Category::CATEGORY_FINANCIAL,
1783 'functionCall' => [Functions::class, 'DUMMY'],
1784 'argumentCount' => '7,8',
1785 ],
1786 'ODDLYIELD' => [
1787 'category' => Category::CATEGORY_FINANCIAL,
1788 'functionCall' => [Functions::class, 'DUMMY'],
1789 'argumentCount' => '7,8',
1790 ],
1791 'OFFSET' => [
1792 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
1793 'functionCall' => [LookupRef\Offset::class, 'OFFSET'],
1794 'argumentCount' => '3-5',
1795 'passCellReference' => true,
1796 'passByReference' => [true],
1797 ],
1798 'OR' => [
1799 'category' => Category::CATEGORY_LOGICAL,
1800 'functionCall' => [Logical\Operations::class, 'logicalOr'],
1801 'argumentCount' => '1+',
1802 ],
1803 'PDURATION' => [
1804 'category' => Category::CATEGORY_FINANCIAL,
1805 'functionCall' => [Financial\CashFlow\Single::class, 'periods'],
1806 'argumentCount' => '3',
1807 ],
1808 'PEARSON' => [
1809 'category' => Category::CATEGORY_STATISTICAL,
1810 'functionCall' => [Statistical\Trends::class, 'CORREL'],
1811 'argumentCount' => '2',
1812 ],
1813 'PERCENTILE' => [
1814 'category' => Category::CATEGORY_STATISTICAL,
1815 'functionCall' => [Statistical\Percentiles::class, 'PERCENTILE'],
1816 'argumentCount' => '2',
1817 ],
1818 'PERCENTILE.EXC' => [
1819 'category' => Category::CATEGORY_STATISTICAL,
1820 'functionCall' => [Functions::class, 'DUMMY'],
1821 'argumentCount' => '2',
1822 ],
1823 'PERCENTILE.INC' => [
1824 'category' => Category::CATEGORY_STATISTICAL,
1825 'functionCall' => [Statistical\Percentiles::class, 'PERCENTILE'],
1826 'argumentCount' => '2',
1827 ],
1828 'PERCENTRANK' => [
1829 'category' => Category::CATEGORY_STATISTICAL,
1830 'functionCall' => [Statistical\Percentiles::class, 'PERCENTRANK'],
1831 'argumentCount' => '2,3',
1832 ],
1833 'PERCENTRANK.EXC' => [
1834 'category' => Category::CATEGORY_STATISTICAL,
1835 'functionCall' => [Functions::class, 'DUMMY'],
1836 'argumentCount' => '2,3',
1837 ],
1838 'PERCENTRANK.INC' => [
1839 'category' => Category::CATEGORY_STATISTICAL,
1840 'functionCall' => [Statistical\Percentiles::class, 'PERCENTRANK'],
1841 'argumentCount' => '2,3',
1842 ],
1843 'PERMUT' => [
1844 'category' => Category::CATEGORY_STATISTICAL,
1845 'functionCall' => [Statistical\Permutations::class, 'PERMUT'],
1846 'argumentCount' => '2',
1847 ],
1848 'PERMUTATIONA' => [
1849 'category' => Category::CATEGORY_STATISTICAL,
1850 'functionCall' => [Statistical\Permutations::class, 'PERMUTATIONA'],
1851 'argumentCount' => '2',
1852 ],
1853 'PHONETIC' => [
1854 'category' => Category::CATEGORY_TEXT_AND_DATA,
1855 'functionCall' => [Functions::class, 'DUMMY'],
1856 'argumentCount' => '1',
1857 ],
1858 'PHI' => [
1859 'category' => Category::CATEGORY_STATISTICAL,
1860 'functionCall' => [Functions::class, 'DUMMY'],
1861 'argumentCount' => '1',
1862 ],
1863 'PI' => [
1864 'category' => Category::CATEGORY_MATH_AND_TRIG,
1865 'functionCall' => 'pi',
1866 'argumentCount' => '0',
1867 ],
1868 'PMT' => [
1869 'category' => Category::CATEGORY_FINANCIAL,
1870 'functionCall' => [Financial\CashFlow\Constant\Periodic\Payments::class, 'annuity'],
1871 'argumentCount' => '3-5',
1872 ],
1873 'POISSON' => [
1874 'category' => Category::CATEGORY_STATISTICAL,
1875 'functionCall' => [Statistical\Distributions\Poisson::class, 'distribution'],
1876 'argumentCount' => '3',
1877 ],
1878 'POISSON.DIST' => [
1879 'category' => Category::CATEGORY_STATISTICAL,
1880 'functionCall' => [Statistical\Distributions\Poisson::class, 'distribution'],
1881 'argumentCount' => '3',
1882 ],
1883 'POWER' => [
1884 'category' => Category::CATEGORY_MATH_AND_TRIG,
1885 'functionCall' => [MathTrig\Operations::class, 'power'],
1886 'argumentCount' => '2',
1887 ],
1888 'PPMT' => [
1889 'category' => Category::CATEGORY_FINANCIAL,
1890 'functionCall' => [Financial\CashFlow\Constant\Periodic\Payments::class, 'interestPayment'],
1891 'argumentCount' => '4-6',
1892 ],
1893 'PRICE' => [
1894 'category' => Category::CATEGORY_FINANCIAL,
1895 'functionCall' => [Financial\Securities\Price::class, 'price'],
1896 'argumentCount' => '6,7',
1897 ],
1898 'PRICEDISC' => [
1899 'category' => Category::CATEGORY_FINANCIAL,
1900 'functionCall' => [Financial\Securities\Price::class, 'priceDiscounted'],
1901 'argumentCount' => '4,5',
1902 ],
1903 'PRICEMAT' => [
1904 'category' => Category::CATEGORY_FINANCIAL,
1905 'functionCall' => [Financial\Securities\Price::class, 'priceAtMaturity'],
1906 'argumentCount' => '5,6',
1907 ],
1908 'PROB' => [
1909 'category' => Category::CATEGORY_STATISTICAL,
1910 'functionCall' => [Functions::class, 'DUMMY'],
1911 'argumentCount' => '3,4',
1912 ],
1913 'PRODUCT' => [
1914 'category' => Category::CATEGORY_MATH_AND_TRIG,
1915 'functionCall' => [MathTrig\Operations::class, 'product'],
1916 'argumentCount' => '1+',
1917 ],
1918 'PROPER' => [
1919 'category' => Category::CATEGORY_TEXT_AND_DATA,
1920 'functionCall' => [TextData\CaseConvert::class, 'proper'],
1921 'argumentCount' => '1',
1922 ],
1923 'PV' => [
1924 'category' => Category::CATEGORY_FINANCIAL,
1925 'functionCall' => [Financial\CashFlow\Constant\Periodic::class, 'presentValue'],
1926 'argumentCount' => '3-5',
1927 ],
1928 'QUARTILE' => [
1929 'category' => Category::CATEGORY_STATISTICAL,
1930 'functionCall' => [Statistical\Percentiles::class, 'QUARTILE'],
1931 'argumentCount' => '2',
1932 ],
1933 'QUARTILE.EXC' => [
1934 'category' => Category::CATEGORY_STATISTICAL,
1935 'functionCall' => [Functions::class, 'DUMMY'],
1936 'argumentCount' => '2',
1937 ],
1938 'QUARTILE.INC' => [
1939 'category' => Category::CATEGORY_STATISTICAL,
1940 'functionCall' => [Statistical\Percentiles::class, 'QUARTILE'],
1941 'argumentCount' => '2',
1942 ],
1943 'QUOTIENT' => [
1944 'category' => Category::CATEGORY_MATH_AND_TRIG,
1945 'functionCall' => [MathTrig\Operations::class, 'quotient'],
1946 'argumentCount' => '2',
1947 ],
1948 'RADIANS' => [
1949 'category' => Category::CATEGORY_MATH_AND_TRIG,
1950 'functionCall' => [MathTrig\Angle::class, 'toRadians'],
1951 'argumentCount' => '1',
1952 ],
1953 'RAND' => [
1954 'category' => Category::CATEGORY_MATH_AND_TRIG,
1955 'functionCall' => [MathTrig\Random::class, 'rand'],
1956 'argumentCount' => '0',
1957 ],
1958 'RANDARRAY' => [
1959 'category' => Category::CATEGORY_MATH_AND_TRIG,
1960 'functionCall' => [MathTrig\Random::class, 'randArray'],
1961 'argumentCount' => '0-5',
1962 ],
1963 'RANDBETWEEN' => [
1964 'category' => Category::CATEGORY_MATH_AND_TRIG,
1965 'functionCall' => [MathTrig\Random::class, 'randBetween'],
1966 'argumentCount' => '2',
1967 ],
1968 'RANK' => [
1969 'category' => Category::CATEGORY_STATISTICAL,
1970 'functionCall' => [Statistical\Percentiles::class, 'RANK'],
1971 'argumentCount' => '2,3',
1972 ],
1973 'RANK.AVG' => [
1974 'category' => Category::CATEGORY_STATISTICAL,
1975 'functionCall' => [Functions::class, 'DUMMY'],
1976 'argumentCount' => '2,3',
1977 ],
1978 'RANK.EQ' => [
1979 'category' => Category::CATEGORY_STATISTICAL,
1980 'functionCall' => [Statistical\Percentiles::class, 'RANK'],
1981 'argumentCount' => '2,3',
1982 ],
1983 'RATE' => [
1984 'category' => Category::CATEGORY_FINANCIAL,
1985 'functionCall' => [Financial\CashFlow\Constant\Periodic\Interest::class, 'rate'],
1986 'argumentCount' => '3-6',
1987 ],
1988 'RECEIVED' => [
1989 'category' => Category::CATEGORY_FINANCIAL,
1990 'functionCall' => [Financial\Securities\Price::class, 'received'],
1991 'argumentCount' => '4-5',
1992 ],
1993 'REDUCE' => [
1994 'category' => Category::CATEGORY_LOGICAL,
1995 'functionCall' => [Functions::class, 'DUMMY'],
1996 'argumentCount' => '*',
1997 ],
1998 'REPLACE' => [
1999 'category' => Category::CATEGORY_TEXT_AND_DATA,
2000 'functionCall' => [TextData\Replace::class, 'replace'],
2001 'argumentCount' => '4',
2002 ],
2003 'REPLACEB' => [
2004 'category' => Category::CATEGORY_TEXT_AND_DATA,
2005 'functionCall' => [TextData\Replace::class, 'replace'],
2006 'argumentCount' => '4',
2007 ],
2008 'REPT' => [
2009 'category' => Category::CATEGORY_TEXT_AND_DATA,
2010 'functionCall' => [TextData\Concatenate::class, 'builtinREPT'],
2011 'argumentCount' => '2',
2012 ],
2013 'RIGHT' => [
2014 'category' => Category::CATEGORY_TEXT_AND_DATA,
2015 'functionCall' => [TextData\Extract::class, 'right'],
2016 'argumentCount' => '1,2',
2017 ],
2018 'RIGHTB' => [
2019 'category' => Category::CATEGORY_TEXT_AND_DATA,
2020 'functionCall' => [TextData\Extract::class, 'right'],
2021 'argumentCount' => '1,2',
2022 ],
2023 'ROMAN' => [
2024 'category' => Category::CATEGORY_MATH_AND_TRIG,
2025 'functionCall' => [MathTrig\Roman::class, 'evaluate'],
2026 'argumentCount' => '1,2',
2027 ],
2028 'ROUND' => [
2029 'category' => Category::CATEGORY_MATH_AND_TRIG,
2030 'functionCall' => [MathTrig\Round::class, 'round'],
2031 'argumentCount' => '1,2',
2032 ],
2033 'ROUNDBAHTDOWN' => [
2034 'category' => Category::CATEGORY_MATH_AND_TRIG,
2035 'functionCall' => [Functions::class, 'DUMMY'],
2036 'argumentCount' => '?',
2037 ],
2038 'ROUNDBAHTUP' => [
2039 'category' => Category::CATEGORY_MATH_AND_TRIG,
2040 'functionCall' => [Functions::class, 'DUMMY'],
2041 'argumentCount' => '?',
2042 ],
2043 'ROUNDDOWN' => [
2044 'category' => Category::CATEGORY_MATH_AND_TRIG,
2045 'functionCall' => [MathTrig\Round::class, 'down'],
2046 'argumentCount' => '1,2',
2047 ],
2048 'ROUNDUP' => [
2049 'category' => Category::CATEGORY_MATH_AND_TRIG,
2050 'functionCall' => [MathTrig\Round::class, 'up'],
2051 'argumentCount' => '1,2',
2052 ],
2053 'ROW' => [
2054 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2055 'functionCall' => [LookupRef\RowColumnInformation::class, 'ROW'],
2056 'argumentCount' => '-1',
2057 'passCellReference' => true,
2058 'passByReference' => [true],
2059 ],
2060 'ROWS' => [
2061 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2062 'functionCall' => [LookupRef\RowColumnInformation::class, 'ROWS'],
2063 'argumentCount' => '1',
2064 ],
2065 'RRI' => [
2066 'category' => Category::CATEGORY_FINANCIAL,
2067 'functionCall' => [Financial\CashFlow\Single::class, 'interestRate'],
2068 'argumentCount' => '3',
2069 ],
2070 'RSQ' => [
2071 'category' => Category::CATEGORY_STATISTICAL,
2072 'functionCall' => [Statistical\Trends::class, 'RSQ'],
2073 'argumentCount' => '2',
2074 ],
2075 'RTD' => [
2076 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2077 'functionCall' => [Functions::class, 'DUMMY'],
2078 'argumentCount' => '1+',
2079 ],
2080 'SEARCH' => [
2081 'category' => Category::CATEGORY_TEXT_AND_DATA,
2082 'functionCall' => [TextData\Search::class, 'insensitive'],
2083 'argumentCount' => '2,3',
2084 ],
2085 'SCAN' => [
2086 'category' => Category::CATEGORY_LOGICAL,
2087 'functionCall' => [Functions::class, 'DUMMY'],
2088 'argumentCount' => '*',
2089 ],
2090 'SEARCHB' => [
2091 'category' => Category::CATEGORY_TEXT_AND_DATA,
2092 'functionCall' => [TextData\Search::class, 'insensitive'],
2093 'argumentCount' => '2,3',
2094 ],
2095 'SEC' => [
2096 'category' => Category::CATEGORY_MATH_AND_TRIG,
2097 'functionCall' => [MathTrig\Trig\Secant::class, 'sec'],
2098 'argumentCount' => '1',
2099 ],
2100 'SECH' => [
2101 'category' => Category::CATEGORY_MATH_AND_TRIG,
2102 'functionCall' => [MathTrig\Trig\Secant::class, 'sech'],
2103 'argumentCount' => '1',
2104 ],
2105 'SECOND' => [
2106 'category' => Category::CATEGORY_DATE_AND_TIME,
2107 'functionCall' => [DateTimeExcel\TimeParts::class, 'second'],
2108 'argumentCount' => '1',
2109 ],
2110 'SEQUENCE' => [
2111 'category' => Category::CATEGORY_MATH_AND_TRIG,
2112 'functionCall' => [MathTrig\MatrixFunctions::class, 'sequence'],
2113 'argumentCount' => '1-4',
2114 ],
2115 'SERIESSUM' => [
2116 'category' => Category::CATEGORY_MATH_AND_TRIG,
2117 'functionCall' => [MathTrig\SeriesSum::class, 'evaluate'],
2118 'argumentCount' => '4',
2119 ],
2120 'SHEET' => [
2121 'category' => Category::CATEGORY_INFORMATION,
2122 'functionCall' => [Functions::class, 'DUMMY'],
2123 'argumentCount' => '0,1',
2124 ],
2125 'SHEETS' => [
2126 'category' => Category::CATEGORY_INFORMATION,
2127 'functionCall' => [Functions::class, 'DUMMY'],
2128 'argumentCount' => '0,1',
2129 ],
2130 'SIGN' => [
2131 'category' => Category::CATEGORY_MATH_AND_TRIG,
2132 'functionCall' => [MathTrig\Sign::class, 'evaluate'],
2133 'argumentCount' => '1',
2134 ],
2135 'SIN' => [
2136 'category' => Category::CATEGORY_MATH_AND_TRIG,
2137 'functionCall' => [MathTrig\Trig\Sine::class, 'sin'],
2138 'argumentCount' => '1',
2139 ],
2140 'SINGLE' => [
2141 'category' => Category::CATEGORY_MICROSOFT_INTERNAL,
2142 'functionCall' => [Internal\ExcelArrayPseudoFunctions::class, 'single'],
2143 'argumentCount' => '1',
2144 'passCellReference' => true,
2145 'passByReference' => [true],
2146 ],
2147 'SINH' => [
2148 'category' => Category::CATEGORY_MATH_AND_TRIG,
2149 'functionCall' => [MathTrig\Trig\Sine::class, 'sinh'],
2150 'argumentCount' => '1',
2151 ],
2152 'SKEW' => [
2153 'category' => Category::CATEGORY_STATISTICAL,
2154 'functionCall' => [Statistical\Deviations::class, 'skew'],
2155 'argumentCount' => '1+',
2156 ],
2157 'SKEW.P' => [
2158 'category' => Category::CATEGORY_STATISTICAL,
2159 'functionCall' => [Functions::class, 'DUMMY'],
2160 'argumentCount' => '1+',
2161 ],
2162 'SLN' => [
2163 'category' => Category::CATEGORY_FINANCIAL,
2164 'functionCall' => [Financial\Depreciation::class, 'SLN'],
2165 'argumentCount' => '3',
2166 ],
2167 'SLOPE' => [
2168 'category' => Category::CATEGORY_STATISTICAL,
2169 'functionCall' => [Statistical\Trends::class, 'SLOPE'],
2170 'argumentCount' => '2',
2171 ],
2172 'SMALL' => [
2173 'category' => Category::CATEGORY_STATISTICAL,
2174 'functionCall' => [Statistical\Size::class, 'small'],
2175 'argumentCount' => '2',
2176 ],
2177 'SORT' => [
2178 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2179 'functionCall' => [LookupRef\Sort::class, 'sort'],
2180 'argumentCount' => '1-4',
2181 ],
2182 'SORTBY' => [
2183 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2184 'functionCall' => [LookupRef\Sort::class, 'sortBy'],
2185 'argumentCount' => '2+',
2186 ],
2187 'SQRT' => [
2188 'category' => Category::CATEGORY_MATH_AND_TRIG,
2189 'functionCall' => [MathTrig\Sqrt::class, 'sqrt'],
2190 'argumentCount' => '1',
2191 ],
2192 'SQRTPI' => [
2193 'category' => Category::CATEGORY_MATH_AND_TRIG,
2194 'functionCall' => [MathTrig\Sqrt::class, 'pi'],
2195 'argumentCount' => '1',
2196 ],
2197 'STANDARDIZE' => [
2198 'category' => Category::CATEGORY_STATISTICAL,
2199 'functionCall' => [Statistical\Standardize::class, 'execute'],
2200 'argumentCount' => '3',
2201 ],
2202 'STDEV' => [
2203 'category' => Category::CATEGORY_STATISTICAL,
2204 'functionCall' => [Statistical\StandardDeviations::class, 'STDEV'],
2205 'argumentCount' => '1+',
2206 ],
2207 'STDEV.S' => [
2208 'category' => Category::CATEGORY_STATISTICAL,
2209 'functionCall' => [Statistical\StandardDeviations::class, 'STDEV'],
2210 'argumentCount' => '1+',
2211 ],
2212 'STDEV.P' => [
2213 'category' => Category::CATEGORY_STATISTICAL,
2214 'functionCall' => [Statistical\StandardDeviations::class, 'STDEVP'],
2215 'argumentCount' => '1+',
2216 ],
2217 'STDEVA' => [
2218 'category' => Category::CATEGORY_STATISTICAL,
2219 'functionCall' => [Statistical\StandardDeviations::class, 'STDEVA'],
2220 'argumentCount' => '1+',
2221 ],
2222 'STDEVP' => [
2223 'category' => Category::CATEGORY_STATISTICAL,
2224 'functionCall' => [Statistical\StandardDeviations::class, 'STDEVP'],
2225 'argumentCount' => '1+',
2226 ],
2227 'STDEVPA' => [
2228 'category' => Category::CATEGORY_STATISTICAL,
2229 'functionCall' => [Statistical\StandardDeviations::class, 'STDEVPA'],
2230 'argumentCount' => '1+',
2231 ],
2232 'STEYX' => [
2233 'category' => Category::CATEGORY_STATISTICAL,
2234 'functionCall' => [Statistical\Trends::class, 'STEYX'],
2235 'argumentCount' => '2',
2236 ],
2237 'SUBSTITUTE' => [
2238 'category' => Category::CATEGORY_TEXT_AND_DATA,
2239 'functionCall' => [TextData\Replace::class, 'substitute'],
2240 'argumentCount' => '3,4',
2241 ],
2242 'SUBTOTAL' => [
2243 'category' => Category::CATEGORY_MATH_AND_TRIG,
2244 'functionCall' => [MathTrig\Subtotal::class, 'evaluate'],
2245 'argumentCount' => '2+',
2246 'passCellReference' => true,
2247 ],
2248 'SUM' => [
2249 'category' => Category::CATEGORY_MATH_AND_TRIG,
2250 'functionCall' => [MathTrig\Sum::class, 'sumErroringStrings'],
2251 'argumentCount' => '1+',
2252 ],
2253 'SUMIF' => [
2254 'category' => Category::CATEGORY_MATH_AND_TRIG,
2255 'functionCall' => [Statistical\Conditional::class, 'SUMIF'],
2256 'argumentCount' => '2,3',
2257 ],
2258 'SUMIFS' => [
2259 'category' => Category::CATEGORY_MATH_AND_TRIG,
2260 'functionCall' => [Statistical\Conditional::class, 'SUMIFS'],
2261 'argumentCount' => '3+',
2262 ],
2263 'SUMPRODUCT' => [
2264 'category' => Category::CATEGORY_MATH_AND_TRIG,
2265 'functionCall' => [MathTrig\Sum::class, 'product'],
2266 'argumentCount' => '1+',
2267 ],
2268 'SUMSQ' => [
2269 'category' => Category::CATEGORY_MATH_AND_TRIG,
2270 'functionCall' => [MathTrig\SumSquares::class, 'sumSquare'],
2271 'argumentCount' => '1+',
2272 ],
2273 'SUMX2MY2' => [
2274 'category' => Category::CATEGORY_MATH_AND_TRIG,
2275 'functionCall' => [MathTrig\SumSquares::class, 'sumXSquaredMinusYSquared'],
2276 'argumentCount' => '2',
2277 ],
2278 'SUMX2PY2' => [
2279 'category' => Category::CATEGORY_MATH_AND_TRIG,
2280 'functionCall' => [MathTrig\SumSquares::class, 'sumXSquaredPlusYSquared'],
2281 'argumentCount' => '2',
2282 ],
2283 'SUMXMY2' => [
2284 'category' => Category::CATEGORY_MATH_AND_TRIG,
2285 'functionCall' => [MathTrig\SumSquares::class, 'sumXMinusYSquared'],
2286 'argumentCount' => '2',
2287 ],
2288 'SWITCH' => [
2289 'category' => Category::CATEGORY_LOGICAL,
2290 'functionCall' => [Logical\Conditional::class, 'statementSwitch'],
2291 'argumentCount' => '3+',
2292 ],
2293 'SYD' => [
2294 'category' => Category::CATEGORY_FINANCIAL,
2295 'functionCall' => [Financial\Depreciation::class, 'SYD'],
2296 'argumentCount' => '4',
2297 ],
2298 'T' => [
2299 'category' => Category::CATEGORY_TEXT_AND_DATA,
2300 'functionCall' => [TextData\Text::class, 'test'],
2301 'argumentCount' => '1',
2302 ],
2303 'TAKE' => [
2304 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2305 'functionCall' => [LookupRef\ChooseRowsEtc::class, 'take'],
2306 'argumentCount' => '2-3',
2307 ],
2308 'TAN' => [
2309 'category' => Category::CATEGORY_MATH_AND_TRIG,
2310 'functionCall' => [MathTrig\Trig\Tangent::class, 'tan'],
2311 'argumentCount' => '1',
2312 ],
2313 'TANH' => [
2314 'category' => Category::CATEGORY_MATH_AND_TRIG,
2315 'functionCall' => [MathTrig\Trig\Tangent::class, 'tanh'],
2316 'argumentCount' => '1',
2317 ],
2318 'TBILLEQ' => [
2319 'category' => Category::CATEGORY_FINANCIAL,
2320 'functionCall' => [Financial\TreasuryBill::class, 'bondEquivalentYield'],
2321 'argumentCount' => '3',
2322 ],
2323 'TBILLPRICE' => [
2324 'category' => Category::CATEGORY_FINANCIAL,
2325 'functionCall' => [Financial\TreasuryBill::class, 'price'],
2326 'argumentCount' => '3',
2327 ],
2328 'TBILLYIELD' => [
2329 'category' => Category::CATEGORY_FINANCIAL,
2330 'functionCall' => [Financial\TreasuryBill::class, 'yield'],
2331 'argumentCount' => '3',
2332 ],
2333 'TDIST' => [
2334 'category' => Category::CATEGORY_STATISTICAL,
2335 'functionCall' => [Statistical\Distributions\StudentT::class, 'distribution'],
2336 'argumentCount' => '3',
2337 ],
2338 'T.DIST' => [
2339 'category' => Category::CATEGORY_STATISTICAL,
2340 'functionCall' => [Statistical\Distributions\StudentT::class, 'tDotDist'],
2341 'argumentCount' => '3',
2342 ],
2343 'T.DIST.2T' => [
2344 'category' => Category::CATEGORY_STATISTICAL,
2345 'functionCall' => [Statistical\Distributions\StudentT::class, 'tDotDistDot2T'],
2346 'argumentCount' => '2',
2347 ],
2348 'T.DIST.RT' => [
2349 'category' => Category::CATEGORY_STATISTICAL,
2350 'functionCall' => [Statistical\Distributions\StudentT::class, 'tDotDistDotRT'],
2351 'argumentCount' => '2',
2352 ],
2353 'TEXT' => [
2354 'category' => Category::CATEGORY_TEXT_AND_DATA,
2355 'functionCall' => [TextData\Format::class, 'TEXTFORMAT'],
2356 'argumentCount' => '2',
2357 ],
2358 'TEXTAFTER' => [
2359 'category' => Category::CATEGORY_TEXT_AND_DATA,
2360 'functionCall' => [TextData\Extract::class, 'after'],
2361 'argumentCount' => '2-6',
2362 ],
2363 'TEXTBEFORE' => [
2364 'category' => Category::CATEGORY_TEXT_AND_DATA,
2365 'functionCall' => [TextData\Extract::class, 'before'],
2366 'argumentCount' => '2-6',
2367 ],
2368 'TEXTJOIN' => [
2369 'category' => Category::CATEGORY_TEXT_AND_DATA,
2370 'functionCall' => [TextData\Concatenate::class, 'TEXTJOIN'],
2371 'argumentCount' => '3+',
2372 ],
2373 'TEXTSPLIT' => [
2374 'category' => Category::CATEGORY_TEXT_AND_DATA,
2375 'functionCall' => [TextData\Text::class, 'split'],
2376 'argumentCount' => '2-6',
2377 ],
2378 'THAIDAYOFWEEK' => [
2379 'category' => Category::CATEGORY_DATE_AND_TIME,
2380 'functionCall' => [Functions::class, 'DUMMY'],
2381 'argumentCount' => '?',
2382 ],
2383 'THAIDIGIT' => [
2384 'category' => Category::CATEGORY_TEXT_AND_DATA,
2385 'functionCall' => [Functions::class, 'DUMMY'],
2386 'argumentCount' => '?',
2387 ],
2388 'THAIMONTHOFYEAR' => [
2389 'category' => Category::CATEGORY_DATE_AND_TIME,
2390 'functionCall' => [Functions::class, 'DUMMY'],
2391 'argumentCount' => '?',
2392 ],
2393 'THAINUMSOUND' => [
2394 'category' => Category::CATEGORY_TEXT_AND_DATA,
2395 'functionCall' => [Functions::class, 'DUMMY'],
2396 'argumentCount' => '?',
2397 ],
2398 'THAINUMSTRING' => [
2399 'category' => Category::CATEGORY_TEXT_AND_DATA,
2400 'functionCall' => [Functions::class, 'DUMMY'],
2401 'argumentCount' => '?',
2402 ],
2403 'THAISTRINGLENGTH' => [
2404 'category' => Category::CATEGORY_TEXT_AND_DATA,
2405 'functionCall' => [Functions::class, 'DUMMY'],
2406 'argumentCount' => '?',
2407 ],
2408 'THAIYEAR' => [
2409 'category' => Category::CATEGORY_DATE_AND_TIME,
2410 'functionCall' => [Functions::class, 'DUMMY'],
2411 'argumentCount' => '?',
2412 ],
2413 'TIME' => [
2414 'category' => Category::CATEGORY_DATE_AND_TIME,
2415 'functionCall' => [DateTimeExcel\Time::class, 'fromHMS'],
2416 'argumentCount' => '3',
2417 ],
2418 'TIMEVALUE' => [
2419 'category' => Category::CATEGORY_DATE_AND_TIME,
2420 'functionCall' => [DateTimeExcel\TimeValue::class, 'fromString'],
2421 'argumentCount' => '1',
2422 ],
2423 'TINV' => [
2424 'category' => Category::CATEGORY_STATISTICAL,
2425 'functionCall' => [Statistical\Distributions\StudentT::class, 'inverse'],
2426 'argumentCount' => '2',
2427 ],
2428 'T.INV' => [
2429 'category' => Category::CATEGORY_STATISTICAL,
2430 'functionCall' => [Statistical\Distributions\StudentT::class, 'tDotInv'],
2431 'argumentCount' => '2',
2432 ],
2433 'T.INV.2T' => [
2434 'category' => Category::CATEGORY_STATISTICAL,
2435 'functionCall' => [Statistical\Distributions\StudentT::class, 'inverse'],
2436 'argumentCount' => '2',
2437 ],
2438 'TODAY' => [
2439 'category' => Category::CATEGORY_DATE_AND_TIME,
2440 'functionCall' => [DateTimeExcel\Current::class, 'today'],
2441 'argumentCount' => '0',
2442 ],
2443 'TOCOL' => [
2444 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2445 'functionCall' => [LookupRef\TorowTocol::class, 'tocol'],
2446 'argumentCount' => '1-3',
2447 ],
2448 'TOROW' => [
2449 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2450 'functionCall' => [LookupRef\TorowTocol::class, 'torow'],
2451 'argumentCount' => '1-3',
2452 ],
2453 'TRANSPOSE' => [
2454 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2455 'functionCall' => [LookupRef\Matrix::class, 'transpose'],
2456 'argumentCount' => '1',
2457 ],
2458 'TREND' => [
2459 'category' => Category::CATEGORY_STATISTICAL,
2460 'functionCall' => [Statistical\Trends::class, 'TREND'],
2461 'argumentCount' => '1-4',
2462 ],
2463 'TRIM' => [
2464 'category' => Category::CATEGORY_TEXT_AND_DATA,
2465 'functionCall' => [TextData\Trim::class, 'spaces'],
2466 'argumentCount' => '1',
2467 ],
2468 'TRIMMEAN' => [
2469 'category' => Category::CATEGORY_STATISTICAL,
2470 'functionCall' => [Statistical\Averages\Mean::class, 'trim'],
2471 'argumentCount' => '2',
2472 ],
2473 'TRUE' => [
2474 'category' => Category::CATEGORY_LOGICAL,
2475 'functionCall' => [Logical\Boolean::class, 'TRUE'],
2476 'argumentCount' => '0',
2477 ],
2478 'TRUNC' => [
2479 'category' => Category::CATEGORY_MATH_AND_TRIG,
2480 'functionCall' => [MathTrig\Trunc::class, 'evaluate'],
2481 'argumentCount' => '1,2',
2482 ],
2483 'TTEST' => [
2484 'category' => Category::CATEGORY_STATISTICAL,
2485 'functionCall' => [Functions::class, 'DUMMY'],
2486 'argumentCount' => '4',
2487 ],
2488 'T.TEST' => [
2489 'category' => Category::CATEGORY_STATISTICAL,
2490 'functionCall' => [Functions::class, 'DUMMY'],
2491 'argumentCount' => '4',
2492 ],
2493 'TYPE' => [
2494 'category' => Category::CATEGORY_INFORMATION,
2495 'functionCall' => [Information\Value::class, 'type'],
2496 'argumentCount' => '1',
2497 ],
2498 'UNICHAR' => [
2499 'category' => Category::CATEGORY_TEXT_AND_DATA,
2500 'functionCall' => [TextData\CharacterConvert::class, 'characterUnicode'],
2501 'argumentCount' => '1',
2502 ],
2503 'UNICODE' => [
2504 'category' => Category::CATEGORY_TEXT_AND_DATA,
2505 'functionCall' => [TextData\CharacterConvert::class, 'codeUnicode'],
2506 'argumentCount' => '1',
2507 ],
2508 'UNIQUE' => [
2509 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2510 'functionCall' => [LookupRef\Unique::class, 'unique'],
2511 'argumentCount' => '1+',
2512 ],
2513 'UPPER' => [
2514 'category' => Category::CATEGORY_TEXT_AND_DATA,
2515 'functionCall' => [TextData\CaseConvert::class, 'upper'],
2516 'argumentCount' => '1',
2517 ],
2518 'USDOLLAR' => [
2519 'category' => Category::CATEGORY_FINANCIAL,
2520 'functionCall' => [Financial\Dollar::class, 'format'],
2521 'argumentCount' => '2',
2522 ],
2523 'VALUE' => [
2524 'category' => Category::CATEGORY_TEXT_AND_DATA,
2525 'functionCall' => [TextData\Format::class, 'VALUE'],
2526 'argumentCount' => '1',
2527 ],
2528 'VALUETOTEXT' => [
2529 'category' => Category::CATEGORY_TEXT_AND_DATA,
2530 'functionCall' => [TextData\Format::class, 'valueToText'],
2531 'argumentCount' => '1,2',
2532 ],
2533 'VAR' => [
2534 'category' => Category::CATEGORY_STATISTICAL,
2535 'functionCall' => [Statistical\Variances::class, 'VAR'],
2536 'argumentCount' => '1+',
2537 ],
2538 'VAR.P' => [
2539 'category' => Category::CATEGORY_STATISTICAL,
2540 'functionCall' => [Statistical\Variances::class, 'VARP'],
2541 'argumentCount' => '1+',
2542 ],
2543 'VAR.S' => [
2544 'category' => Category::CATEGORY_STATISTICAL,
2545 'functionCall' => [Statistical\Variances::class, 'VAR'],
2546 'argumentCount' => '1+',
2547 ],
2548 'VARA' => [
2549 'category' => Category::CATEGORY_STATISTICAL,
2550 'functionCall' => [Statistical\Variances::class, 'VARA'],
2551 'argumentCount' => '1+',
2552 ],
2553 'VARP' => [
2554 'category' => Category::CATEGORY_STATISTICAL,
2555 'functionCall' => [Statistical\Variances::class, 'VARP'],
2556 'argumentCount' => '1+',
2557 ],
2558 'VARPA' => [
2559 'category' => Category::CATEGORY_STATISTICAL,
2560 'functionCall' => [Statistical\Variances::class, 'VARPA'],
2561 'argumentCount' => '1+',
2562 ],
2563 'VDB' => [
2564 'category' => Category::CATEGORY_FINANCIAL,
2565 'functionCall' => [Functions::class, 'DUMMY'],
2566 'argumentCount' => '5-7',
2567 ],
2568 'VLOOKUP' => [
2569 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2570 'functionCall' => [LookupRef\VLookup::class, 'lookup'],
2571 'argumentCount' => '3,4',
2572 ],
2573 'VSTACK' => [
2574 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2575 'functionCall' => [LookupRef\Vstack::class, 'vstack'],
2576 'argumentCount' => '1+',
2577 ],
2578 'WEBSERVICE' => [
2579 'category' => Category::CATEGORY_WEB,
2580 'functionCall' => [Web\Service::class, 'webService'],
2581 'argumentCount' => '1',
2582 'passCellReference' => true,
2583 ],
2584 'WEEKDAY' => [
2585 'category' => Category::CATEGORY_DATE_AND_TIME,
2586 'functionCall' => [DateTimeExcel\Week::class, 'day'],
2587 'argumentCount' => '1,2',
2588 ],
2589 'WEEKNUM' => [
2590 'category' => Category::CATEGORY_DATE_AND_TIME,
2591 'functionCall' => [DateTimeExcel\Week::class, 'number'],
2592 'argumentCount' => '1,2',
2593 ],
2594 'WEIBULL' => [
2595 'category' => Category::CATEGORY_STATISTICAL,
2596 'functionCall' => [Statistical\Distributions\Weibull::class, 'distribution'],
2597 'argumentCount' => '4',
2598 ],
2599 'WEIBULL.DIST' => [
2600 'category' => Category::CATEGORY_STATISTICAL,
2601 'functionCall' => [Statistical\Distributions\Weibull::class, 'distribution'],
2602 'argumentCount' => '4',
2603 ],
2604 'WORKDAY' => [
2605 'category' => Category::CATEGORY_DATE_AND_TIME,
2606 'functionCall' => [DateTimeExcel\WorkDay::class, 'date'],
2607 'argumentCount' => '2-3',
2608 ],
2609 'WORKDAY.INTL' => [
2610 'category' => Category::CATEGORY_DATE_AND_TIME,
2611 'functionCall' => [Functions::class, 'DUMMY'],
2612 'argumentCount' => '2-4',
2613 ],
2614 'WRAPCOLS' => [
2615 'category' => Category::CATEGORY_MATH_AND_TRIG,
2616 'functionCall' => [Functions::class, 'DUMMY'],
2617 'argumentCount' => '2-3',
2618 ],
2619 'WRAPROWS' => [
2620 'category' => Category::CATEGORY_MATH_AND_TRIG,
2621 'functionCall' => [Functions::class, 'DUMMY'],
2622 'argumentCount' => '2-3',
2623 ],
2624 'XIRR' => [
2625 'category' => Category::CATEGORY_FINANCIAL,
2626 'functionCall' => [Financial\CashFlow\Variable\NonPeriodic::class, 'rate'],
2627 'argumentCount' => '2,3',
2628 ],
2629 'XLOOKUP' => [
2630 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2631 'functionCall' => [LookupRef\XLookup::class, 'lookup'],
2632 'argumentCount' => '3-6',
2633 ],
2634 'XNPV' => [
2635 'category' => Category::CATEGORY_FINANCIAL,
2636 'functionCall' => [Financial\CashFlow\Variable\NonPeriodic::class, 'presentValue'],
2637 'argumentCount' => '3',
2638 ],
2639 'XMATCH' => [
2640 'category' => Category::CATEGORY_LOOKUP_AND_REFERENCE,
2641 'functionCall' => [Functions::class, 'DUMMY'],
2642 'argumentCount' => '2,3',
2643 ],
2644 'XOR' => [
2645 'category' => Category::CATEGORY_LOGICAL,
2646 'functionCall' => [Logical\Operations::class, 'logicalXor'],
2647 'argumentCount' => '1+',
2648 ],
2649 'YEAR' => [
2650 'category' => Category::CATEGORY_DATE_AND_TIME,
2651 'functionCall' => [DateTimeExcel\DateParts::class, 'year'],
2652 'argumentCount' => '1',
2653 ],
2654 'YEARFRAC' => [
2655 'category' => Category::CATEGORY_DATE_AND_TIME,
2656 'functionCall' => [DateTimeExcel\YearFrac::class, 'fraction'],
2657 'argumentCount' => '2,3',
2658 ],
2659 'YIELD' => [
2660 'category' => Category::CATEGORY_FINANCIAL,
2661 'functionCall' => [Functions::class, 'DUMMY'],
2662 'argumentCount' => '6,7',
2663 ],
2664 'YIELDDISC' => [
2665 'category' => Category::CATEGORY_FINANCIAL,
2666 'functionCall' => [Financial\Securities\Yields::class, 'yieldDiscounted'],
2667 'argumentCount' => '4,5',
2668 ],
2669 'YIELDMAT' => [
2670 'category' => Category::CATEGORY_FINANCIAL,
2671 'functionCall' => [Financial\Securities\Yields::class, 'yieldAtMaturity'],
2672 'argumentCount' => '5,6',
2673 ],
2674 'ZTEST' => [
2675 'category' => Category::CATEGORY_STATISTICAL,
2676 'functionCall' => [Statistical\Distributions\StandardNormal::class, 'zTest'],
2677 'argumentCount' => '2-3',
2678 ],
2679 'Z.TEST' => [
2680 'category' => Category::CATEGORY_STATISTICAL,
2681 'functionCall' => [Statistical\Distributions\StandardNormal::class, 'zTest'],
2682 'argumentCount' => '2-3',
2683 ],
2684 ];
2685 }
2686