Skip to content

Commit 4e8a926

Browse files
author
Mark Baker
authored
Final part of breaking down the Engineering class for Excel Engineering functions into smaller individual/group classes (#1940)
* Final breaking down the Engineering class for Excel Engineering functions into smaller individual/group classes * Additional unhappy path tests for Complex Number functions * Fix return docblocks for floats to allow for error strings
1 parent e59c751 commit 4e8a926

32 files changed

+1082
-193
lines changed

src/PhpSpreadsheet/Calculation/Calculation.php

+26-26
Original file line numberDiff line numberDiff line change
@@ -565,7 +565,7 @@ class Calculation
565565
],
566566
'COMPLEX' => [
567567
'category' => Category::CATEGORY_ENGINEERING,
568-
'functionCall' => [Engineering::class, 'COMPLEX'],
568+
'functionCall' => [Engineering\Complex::class, 'COMPLEX'],
569569
'argumentCount' => '2,3',
570570
],
571571
'CONCAT' => [
@@ -1278,127 +1278,127 @@ class Calculation
12781278
],
12791279
'IMABS' => [
12801280
'category' => Category::CATEGORY_ENGINEERING,
1281-
'functionCall' => [Engineering::class, 'IMABS'],
1281+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMABS'],
12821282
'argumentCount' => '1',
12831283
],
12841284
'IMAGINARY' => [
12851285
'category' => Category::CATEGORY_ENGINEERING,
1286-
'functionCall' => [Engineering::class, 'IMAGINARY'],
1286+
'functionCall' => [Engineering\Complex::class, 'IMAGINARY'],
12871287
'argumentCount' => '1',
12881288
],
12891289
'IMARGUMENT' => [
12901290
'category' => Category::CATEGORY_ENGINEERING,
1291-
'functionCall' => [Engineering::class, 'IMARGUMENT'],
1291+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMARGUMENT'],
12921292
'argumentCount' => '1',
12931293
],
12941294
'IMCONJUGATE' => [
12951295
'category' => Category::CATEGORY_ENGINEERING,
1296-
'functionCall' => [Engineering::class, 'IMCONJUGATE'],
1296+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMCONJUGATE'],
12971297
'argumentCount' => '1',
12981298
],
12991299
'IMCOS' => [
13001300
'category' => Category::CATEGORY_ENGINEERING,
1301-
'functionCall' => [Engineering::class, 'IMCOS'],
1301+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMCOS'],
13021302
'argumentCount' => '1',
13031303
],
13041304
'IMCOSH' => [
13051305
'category' => Category::CATEGORY_ENGINEERING,
1306-
'functionCall' => [Engineering::class, 'IMCOSH'],
1306+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMCOSH'],
13071307
'argumentCount' => '1',
13081308
],
13091309
'IMCOT' => [
13101310
'category' => Category::CATEGORY_ENGINEERING,
1311-
'functionCall' => [Engineering::class, 'IMCOT'],
1311+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMCOT'],
13121312
'argumentCount' => '1',
13131313
],
13141314
'IMCSC' => [
13151315
'category' => Category::CATEGORY_ENGINEERING,
1316-
'functionCall' => [Engineering::class, 'IMCSC'],
1316+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMCSC'],
13171317
'argumentCount' => '1',
13181318
],
13191319
'IMCSCH' => [
13201320
'category' => Category::CATEGORY_ENGINEERING,
1321-
'functionCall' => [Engineering::class, 'IMCSCH'],
1321+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMCSCH'],
13221322
'argumentCount' => '1',
13231323
],
13241324
'IMDIV' => [
13251325
'category' => Category::CATEGORY_ENGINEERING,
1326-
'functionCall' => [Engineering::class, 'IMDIV'],
1326+
'functionCall' => [Engineering\ComplexOperations::class, 'IMDIV'],
13271327
'argumentCount' => '2',
13281328
],
13291329
'IMEXP' => [
13301330
'category' => Category::CATEGORY_ENGINEERING,
1331-
'functionCall' => [Engineering::class, 'IMEXP'],
1331+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMEXP'],
13321332
'argumentCount' => '1',
13331333
],
13341334
'IMLN' => [
13351335
'category' => Category::CATEGORY_ENGINEERING,
1336-
'functionCall' => [Engineering::class, 'IMLN'],
1336+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMLN'],
13371337
'argumentCount' => '1',
13381338
],
13391339
'IMLOG10' => [
13401340
'category' => Category::CATEGORY_ENGINEERING,
1341-
'functionCall' => [Engineering::class, 'IMLOG10'],
1341+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMLOG10'],
13421342
'argumentCount' => '1',
13431343
],
13441344
'IMLOG2' => [
13451345
'category' => Category::CATEGORY_ENGINEERING,
1346-
'functionCall' => [Engineering::class, 'IMLOG2'],
1346+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMLOG2'],
13471347
'argumentCount' => '1',
13481348
],
13491349
'IMPOWER' => [
13501350
'category' => Category::CATEGORY_ENGINEERING,
1351-
'functionCall' => [Engineering::class, 'IMPOWER'],
1351+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMPOWER'],
13521352
'argumentCount' => '2',
13531353
],
13541354
'IMPRODUCT' => [
13551355
'category' => Category::CATEGORY_ENGINEERING,
1356-
'functionCall' => [Engineering::class, 'IMPRODUCT'],
1356+
'functionCall' => [Engineering\ComplexOperations::class, 'IMPRODUCT'],
13571357
'argumentCount' => '1+',
13581358
],
13591359
'IMREAL' => [
13601360
'category' => Category::CATEGORY_ENGINEERING,
1361-
'functionCall' => [Engineering::class, 'IMREAL'],
1361+
'functionCall' => [Engineering\Complex::class, 'IMREAL'],
13621362
'argumentCount' => '1',
13631363
],
13641364
'IMSEC' => [
13651365
'category' => Category::CATEGORY_ENGINEERING,
1366-
'functionCall' => [Engineering::class, 'IMSEC'],
1366+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMSEC'],
13671367
'argumentCount' => '1',
13681368
],
13691369
'IMSECH' => [
13701370
'category' => Category::CATEGORY_ENGINEERING,
1371-
'functionCall' => [Engineering::class, 'IMSECH'],
1371+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMSECH'],
13721372
'argumentCount' => '1',
13731373
],
13741374
'IMSIN' => [
13751375
'category' => Category::CATEGORY_ENGINEERING,
1376-
'functionCall' => [Engineering::class, 'IMSIN'],
1376+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMSIN'],
13771377
'argumentCount' => '1',
13781378
],
13791379
'IMSINH' => [
13801380
'category' => Category::CATEGORY_ENGINEERING,
1381-
'functionCall' => [Engineering::class, 'IMSINH'],
1381+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMSINH'],
13821382
'argumentCount' => '1',
13831383
],
13841384
'IMSQRT' => [
13851385
'category' => Category::CATEGORY_ENGINEERING,
1386-
'functionCall' => [Engineering::class, 'IMSQRT'],
1386+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMSQRT'],
13871387
'argumentCount' => '1',
13881388
],
13891389
'IMSUB' => [
13901390
'category' => Category::CATEGORY_ENGINEERING,
1391-
'functionCall' => [Engineering::class, 'IMSUB'],
1391+
'functionCall' => [Engineering\ComplexOperations::class, 'IMSUB'],
13921392
'argumentCount' => '2',
13931393
],
13941394
'IMSUM' => [
13951395
'category' => Category::CATEGORY_ENGINEERING,
1396-
'functionCall' => [Engineering::class, 'IMSUM'],
1396+
'functionCall' => [Engineering\ComplexOperations::class, 'IMSUM'],
13971397
'argumentCount' => '1+',
13981398
],
13991399
'IMTAN' => [
14001400
'category' => Category::CATEGORY_ENGINEERING,
1401-
'functionCall' => [Engineering::class, 'IMTAN'],
1401+
'functionCall' => [Engineering\ComplexFunctions::class, 'IMTAN'],
14021402
'argumentCount' => '1',
14031403
],
14041404
'INDEX' => [

0 commit comments

Comments
 (0)