@stdlib/array-complex64 0.2.1 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,7 +22,7 @@
22
22
 
23
23
  /// <reference types="@stdlib/types"/>
24
24
 
25
- import { Iterator as Iter, IterableIterator } from '@stdlib/types/iter';
25
+ import { Iterator as Iter, IterableIterator, TypedIterator } from '@stdlib/types/iter';
26
26
  import { ArrayLike, RealOrComplexTypedArray, Complex64Array as Complex64ArrayInterface } from '@stdlib/types/array';
27
27
  import { ComplexLike, Complex64 } from '@stdlib/types/complex';
28
28
  import ArrayBuffer = require( '@stdlib/array-buffer' );
@@ -30,6 +30,16 @@ import ArrayBuffer = require( '@stdlib/array-buffer' );
30
30
  // Define a union type representing both iterable and non-iterable iterators:
31
31
  type Iterator = Iter | IterableIterator;
32
32
 
33
+ /**
34
+ * Locale-specific configuration options.
35
+ */
36
+ interface LocaleOptions<T = unknown> {
37
+ /**
38
+ * Configuration property.
39
+ */
40
+ [ key: string | symbol | number ]: T | undefined;
41
+ }
42
+
33
43
  /**
34
44
  * Callback invoked for each element in a source object.
35
45
  *
@@ -249,6 +259,15 @@ type QuaternaryReducer<U> = ( acc: U, value: Complex64, index: number, arr: Comp
249
259
  */
250
260
  type Reducer<U> = NullaryReducer<U> | UnaryReducer<U> | BinaryReducer<U> | TernaryReducer<U> | QuaternaryReducer<U>;
251
261
 
262
+ /**
263
+ * Comparator function.
264
+ *
265
+ * @param a - first value for comparison
266
+ * @param b - second value for comparison
267
+ * @returns number indicating comparison result
268
+ */
269
+ type CompareFcn = ( a: Complex64, b: Complex64 ) => number;
270
+
252
271
  /**
253
272
  * Class for creating a 64-bit complex number array.
254
273
  */
@@ -338,8 +357,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
338
357
  * arr.set( [ 1.0, -1.0 ], 0 );
339
358
  * arr.set( [ 9.0, -9.0 ], 9 );
340
359
  *
341
- * z = arr.get( -1 )
342
- * // return <Complex64>
360
+ * z = arr.at( -1 );
361
+ * // returns <Complex64>
343
362
  *
344
363
  * z = arr.at( 100 );
345
364
  * // returns undefined
@@ -349,6 +368,17 @@ declare class Complex64Array implements Complex64ArrayInterface {
349
368
  */
350
369
  at( i: number ): Complex64 | void;
351
370
 
371
+ /**
372
+ * Pointer to the underlying data buffer.
373
+ *
374
+ * @example
375
+ * var arr = new Complex64Array( 10 );
376
+ *
377
+ * var buf = arr.buffer;
378
+ * // returns <ArrayBuffer>
379
+ */
380
+ readonly buffer: ArrayBuffer;
381
+
352
382
  /**
353
383
  * Length (in bytes) of the array.
354
384
  *
@@ -402,9 +432,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
402
432
  * @returns modified array
403
433
  *
404
434
  * @example
405
- * var Complex64 = require( '@stdlib/complex-float32' );
406
- * var realf = require( '@stdlib/complex-realf' );
407
- * var imagf = require( '@stdlib/complex-imagf' );
435
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
436
+ * var realf = require( '@stdlib/complex-float32-real' );
437
+ * var imagf = require( '@stdlib/complex-float32-imag' );
408
438
  *
409
439
  * var arr = new Complex64Array( 4 );
410
440
  *
@@ -434,7 +464,7 @@ declare class Complex64Array implements Complex64ArrayInterface {
434
464
  * @returns iterator
435
465
  *
436
466
  * @example
437
- * var Complex64 = require( '@stdlib/complex-float32' );
467
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
438
468
  *
439
469
  * var arr = [
440
470
  * new Complex64( 1.0, 1.0 ),
@@ -459,7 +489,7 @@ declare class Complex64Array implements Complex64ArrayInterface {
459
489
  * var bool = it.next().done;
460
490
  * // returns true
461
491
  */
462
- entries(): Iterator;
492
+ entries(): TypedIterator<[number, Complex64]>;
463
493
 
464
494
  /**
465
495
  * Tests whether all elements in an array pass a test implemented by a predicate function.
@@ -469,8 +499,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
469
499
  * @returns boolean indicating whether all elements pass a test
470
500
  *
471
501
  * @example
472
- * var realf = require( '@stdlib/complex-realf' );
473
- * var imagf = require( '@stdlib/complex-imagf' );
502
+ * var realf = require( '@stdlib/complex-float32-real' );
503
+ * var imagf = require( '@stdlib/complex-float32-imag' );
474
504
  *
475
505
  * function predicate( v ) {
476
506
  * return ( realf( v ) === imagf( v ) );
@@ -496,8 +526,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
496
526
  * @returns modified typed array
497
527
  *
498
528
  * @example
499
- * var realf = require( '@stdlib/complex-realf' );
500
- * var imagf = require( '@stdlib/complex-imagf' );
529
+ * var realf = require( '@stdlib/complex-float32-real' );
530
+ * var imagf = require( '@stdlib/complex-float32-imag' );
501
531
  *
502
532
  * var arr = new Complex64Array( 3 );
503
533
  *
@@ -531,8 +561,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
531
561
  * @returns new array containing elements which pass a test implemented by a predicate function
532
562
  *
533
563
  * @example
534
- * var realf = require( '@stdlib/complex-realf' );
535
- * var imagf = require( '@stdlib/complex-imagf' );
564
+ * var realf = require( '@stdlib/complex-float32-real' );
565
+ * var imagf = require( '@stdlib/complex-float32-imag' );
536
566
  *
537
567
  * function predicate( v ) {
538
568
  * return ( realf( v ) === imagf( v ) );
@@ -569,9 +599,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
569
599
  * @returns array element or undefined
570
600
  *
571
601
  * @example
572
- * var realf = require( '@stdlib/complex-realf' );
573
- * var imagf = require( '@stdlib/complex-imagf' );
574
- * var Complex64 = require( '@stdlib/complex-float32' );
602
+ * var realf = require( '@stdlib/complex-float32-real' );
603
+ * var imagf = require( '@stdlib/complex-float32-imag' );
604
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
575
605
  *
576
606
  * function predicate( v ) {
577
607
  * return ( realf( v ) === imagf( v ) );
@@ -602,9 +632,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
602
632
  * @returns index or -1
603
633
  *
604
634
  * @example
605
- * var Complex64 = require( '@stdlib/complex-float32' );
606
- * var realf = require( '@stdlib/complex-realf' );
607
- * var imagf = require( '@stdlib/complex-imagf' );
635
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
636
+ * var realf = require( '@stdlib/complex-float32-real' );
637
+ * var imagf = require( '@stdlib/complex-float32-imag' );
608
638
  *
609
639
  * function predicate( v ) {
610
640
  * return ( realf( v ) === imagf( v ) );
@@ -629,9 +659,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
629
659
  * @returns array element or undefined
630
660
  *
631
661
  * @example
632
- * var realf = require( '@stdlib/complex-realf' );
633
- * var imagf = require( '@stdlib/complex-imagf' );
634
- * var Complex64 = require( '@stdlib/complex-float32' );
662
+ * var realf = require( '@stdlib/complex-float32-real' );
663
+ * var imagf = require( '@stdlib/complex-float32-imag' );
664
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
635
665
  *
636
666
  * function predicate( v ) {
637
667
  * return ( realf( v ) === imagf( v ) );
@@ -662,9 +692,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
662
692
  * @returns index or -1
663
693
  *
664
694
  * @example
665
- * var Complex64 = require( '@stdlib/complex-float32' );
666
- * var realf = require( '@stdlib/complex-realf' );
667
- * var imagf = require( '@stdlib/complex-imagf' );
695
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
696
+ * var realf = require( '@stdlib/complex-float32-real' );
697
+ * var imagf = require( '@stdlib/complex-float32-imag' );
668
698
  *
669
699
  * function predicate( v ) {
670
700
  * return ( realf( v ) === imagf( v ) );
@@ -689,7 +719,7 @@ declare class Complex64Array implements Complex64ArrayInterface {
689
719
  * @returns undefined
690
720
  *
691
721
  * @example
692
- * var Complex64 = require( '@stdlib/complex-float32' );
722
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
693
723
  *
694
724
  * function log( v, i ) {
695
725
  * console.log( '%s: %s', i, v.toString() );
@@ -702,9 +732,6 @@ declare class Complex64Array implements Complex64ArrayInterface {
702
732
  * arr.set( [ 3.0, 3.0 ], 2 );
703
733
  *
704
734
  * arr.forEach( log );
705
- * // => 0: 1 + 1i
706
- * // => 1: 2 + 2i
707
- * // => 2: 3 + 3i
708
735
  */
709
736
  forEach<U = unknown>( fcn: Callback<U>, thisArg?: ThisParameterType<Callback<U>> ): void;
710
737
 
@@ -771,13 +798,13 @@ declare class Complex64Array implements Complex64ArrayInterface {
771
798
  * arr.set( [ 2.0, 2.0 ], 3 );
772
799
  * arr.set( [ 5.0, 5.0 ], 4 );
773
800
  *
774
- * var idx = arr.indexOf( new Complex64( [ 2.0, 2.0 ] ) );
801
+ * var idx = arr.indexOf( new Complex64( 2.0, 2.0 ) );
775
802
  * // returns 1
776
803
  *
777
- * idx = arr.indexOf( new Complex64( [ 2.0, 2.0 ] ), 2 );
804
+ * idx = arr.indexOf( new Complex64( 2.0, 2.0 ), 2 );
778
805
  * // returns 3
779
806
  *
780
- * idx = arr.indexOf( new Complex64( [ 2.0, 2.0 ] ), -3 );
807
+ * idx = arr.indexOf( new Complex64( 2.0, 2.0 ), -3 );
781
808
  * // returns 3
782
809
  */
783
810
  indexOf( searchElement: ComplexLike, fromIndex?: number ): number;
@@ -802,6 +829,30 @@ declare class Complex64Array implements Complex64ArrayInterface {
802
829
  */
803
830
  join( separator?: string ): string;
804
831
 
832
+ /**
833
+ * Returns an iterator for iterating over each index key in a typed array.
834
+ *
835
+ * @returns iterator
836
+ *
837
+ * @example
838
+ * var arr = new Complex64Array( 2 );
839
+ *
840
+ * arr.set( [ 1.0, 1.0 ], 0 );
841
+ * arr.set( [ 2.0, 2.0 ], 1 );
842
+ *
843
+ * var iter = arr.keys();
844
+ *
845
+ * var v = iter.next().value;
846
+ * // returns 0
847
+ *
848
+ * v = iter.next().value;
849
+ * // returns 1
850
+ *
851
+ * var bool = iter.next().done;
852
+ * // returns true
853
+ */
854
+ keys(): TypedIterator<number>;
855
+
805
856
  /**
806
857
  * Returns the last index at which a given element can be found.
807
858
  *
@@ -810,7 +861,7 @@ declare class Complex64Array implements Complex64ArrayInterface {
810
861
  * @returns index or -1
811
862
  *
812
863
  * @example
813
- * var Complex64 = require( '@stdlib/complex-float32' );
864
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
814
865
  *
815
866
  * var arr = new Complex64Array( 5 );
816
867
  *
@@ -839,9 +890,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
839
890
  * @returns new array containing transformed elements
840
891
  *
841
892
  * @example
842
- * var Complex64 = require( '@stdlib/complex-float32' );
843
- * var realf = require( '@stdlib/complex-realf' );
844
- * var imagf = require( '@stdlib/complex-imagf' );
893
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
894
+ * var realf = require( '@stdlib/complex-float32-real' );
895
+ * var imagf = require( '@stdlib/complex-float32-imag' );
845
896
  *
846
897
  * function scale( v, i ) {
847
898
  * return new Complex64( 2.0*realf( v ), 2.0*imagf( v ) );
@@ -875,9 +926,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
875
926
  * @returns accumulated result
876
927
  *
877
928
  * @example
878
- * var realf = require( '@stdlib/complex-realf' );
879
- * var imagf = require( '@stdlib/complex-imagf' );
880
- * var caddf = require( '@stdlib/math-base-ops-caddf' );
929
+ * var realf = require( '@stdlib/complex-float32-real' );
930
+ * var imagf = require( '@stdlib/complex-float32-imag' );
931
+ * var caddf = require( '@stdlib/complex-float32-base-add' );
881
932
  *
882
933
  * var arr = new Complex64Array( 3 );
883
934
  *
@@ -896,14 +947,43 @@ declare class Complex64Array implements Complex64ArrayInterface {
896
947
  */
897
948
  reduce<U = unknown>( reducer: Reducer<U>, initialValue?: U ): U;
898
949
 
950
+ /**
951
+ * Applies a provided callback function to each element of the array, in reverse order, passing in the return value from the calculation on the following element and returning the accumulated result upon completion.
952
+ *
953
+ * @param reducer - callback function
954
+ * @param initialValue - initial value
955
+ * @returns accumulated result
956
+ *
957
+ * @example
958
+ * var realf = require( '@stdlib/complex-float32-real' );
959
+ * var imagf = require( '@stdlib/complex-float32-imag' );
960
+ * var caddf = require( '@stdlib/complex-float32-base-add' );
961
+ *
962
+ * var arr = new Complex64Array( 3 );
963
+ *
964
+ * arr.set( [ 1.0, 1.0 ], 0 );
965
+ * arr.set( [ 2.0, 2.0 ], 1 );
966
+ * arr.set( [ 3.0, 3.0 ], 2 );
967
+ *
968
+ * var z = arr.reduceRight( caddf );
969
+ * // returns <Complex64>
970
+ *
971
+ * var re = realf( z );
972
+ * // returns 6.0
973
+ *
974
+ * var im = imagf( z );
975
+ * // returns 6.0
976
+ */
977
+ reduceRight<U = unknown>( reducer: Reducer<U>, initialValue?: U ): U;
978
+
899
979
  /**
900
980
  * Reverses an array in-place.
901
981
  *
902
982
  * @returns reversed array
903
983
  *
904
984
  * @example
905
- * var realf = require( '@stdlib/complex-realf' );
906
- * var imagf = require( '@stdlib/complex-imagf' );
985
+ * var realf = require( '@stdlib/complex-float32-real' );
986
+ * var imagf = require( '@stdlib/complex-float32-imag' );
907
987
  *
908
988
  * var arr = new Complex64Array( 3 );
909
989
  *
@@ -975,8 +1055,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
975
1055
  * @throws target array lacks sufficient storage to accommodate source values
976
1056
  *
977
1057
  * @example
978
- * var realf = require( '@stdlib/complex-realf' );
979
- * var imagf = require( '@stdlib/complex-imagf' );
1058
+ * var realf = require( '@stdlib/complex-float32-real' );
1059
+ * var imagf = require( '@stdlib/complex-float32-imag' );
980
1060
  *
981
1061
  * var arr = new Complex64Array( 10 );
982
1062
  *
@@ -1011,8 +1091,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
1011
1091
  * @returns output array
1012
1092
  *
1013
1093
  * @example
1014
- * var realf = require( '@stdlib/complex-realf' );
1015
- * var imagf = require( '@stdlib/complex-imagf' );
1094
+ * var realf = require( '@stdlib/complex-float32-real' );
1095
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1016
1096
  *
1017
1097
  * var arr = new Complex64Array( 5 );
1018
1098
  *
@@ -1080,8 +1160,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
1080
1160
  * @returns boolean indicating whether at least one element passes a test
1081
1161
  *
1082
1162
  * @example
1083
- * var realf = require( '@stdlib/complex-realf' );
1084
- * var imagf = require( '@stdlib/complex-imagf' );
1163
+ * var realf = require( '@stdlib/complex-float32-real' );
1164
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1085
1165
  *
1086
1166
  * function predicate( v ) {
1087
1167
  * return ( realf( v ) === imagf( v ) );
@@ -1098,6 +1178,78 @@ declare class Complex64Array implements Complex64ArrayInterface {
1098
1178
  */
1099
1179
  some<U = unknown>( predicate: Predicate<U>, thisArg?: ThisParameterType<Predicate<U>> ): boolean;
1100
1180
 
1181
+ /**
1182
+ * Sorts an array in-place.
1183
+ *
1184
+ * @param compareFcn - comparison function
1185
+ * @returns sorted array
1186
+ *
1187
+ * @example
1188
+ * var realf = require( '@stdlib/complex-float32-real' );
1189
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1190
+ *
1191
+ * function compare( a, b ) {
1192
+ * var re1;
1193
+ * var re2;
1194
+ * var im1;
1195
+ * var im2;
1196
+ * re1 = realf( a );
1197
+ * re2 = realf( b );
1198
+ * if ( re1 < re2 ) {
1199
+ * return -1;
1200
+ * }
1201
+ * if ( re1 > re2 ) {
1202
+ * return 1;
1203
+ * }
1204
+ * im1 = imagf( a );
1205
+ * im2 = imagf( b );
1206
+ * if ( im1 < im2 ) {
1207
+ * return -1;
1208
+ * }
1209
+ * if ( im1 > im2 ) {
1210
+ * return 1;
1211
+ * }
1212
+ * return 0;
1213
+ * }
1214
+ *
1215
+ * var arr = new Complex64Array( 3 );
1216
+ *
1217
+ * arr.set( [ 3.0, -3.0 ], 0 );
1218
+ * arr.set( [ 1.0, -1.0 ], 1 );
1219
+ * arr.set( [ 2.0, -2.0 ], 2 );
1220
+ *
1221
+ * var out = arr.sort( compare );
1222
+ * // returns <Complex64Array>
1223
+ *
1224
+ * var z = out.get( 0 );
1225
+ * // returns <Complex64>
1226
+ *
1227
+ * var re = realf( z );
1228
+ * // returns 1.0
1229
+ *
1230
+ * var im = imagf( z );
1231
+ * // returns -1.0
1232
+ *
1233
+ * z = out.get( 1 );
1234
+ * // returns <Complex64>
1235
+ *
1236
+ * re = realf( z );
1237
+ * // returns 2.0
1238
+ *
1239
+ * im = imagf( z );
1240
+ * // returns -2.0
1241
+ *
1242
+ * z = out.get( 2 );
1243
+ * // returns <Complex64>
1244
+ *
1245
+ * re = realf( z );
1246
+ * // returns 3.0
1247
+ *
1248
+ * im = imagf( z );
1249
+ * // returns -3.0
1250
+ */
1251
+ sort( compareFcn: CompareFcn ): Complex64Array;
1252
+
1101
1253
  /**
1102
1254
  * Creates a new typed array view over the same underlying `ArrayBuffer` and with the same underlying data type as the host array.
1103
1255
  *
@@ -1107,8 +1259,8 @@ declare class Complex64Array implements Complex64ArrayInterface {
1107
1259
  * @returns subarray
1108
1260
  *
1109
1261
  * @example
1110
- * var realf = require( '@stdlib/complex-realf' );
1111
- * var imagf = require( '@stdlib/complex-imagf' );
1262
+ * var realf = require( '@stdlib/complex-float32-real' );
1263
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1112
1264
  *
1113
1265
  * var arr = new Complex64Array( 5 );
1114
1266
  *
@@ -1168,14 +1320,32 @@ declare class Complex64Array implements Complex64ArrayInterface {
1168
1320
  */
1169
1321
  subarray( begin?: number, end?: number ): Complex64Array;
1170
1322
 
1323
+ /**
1324
+ * Serializes an array as a locale-specific string.
1325
+ *
1326
+ * @param locales - locale identifier(s)
1327
+ * @param options - configuration options
1328
+ * @returns string
1329
+ *
1330
+ * @example
1331
+ * var arr = new Complex64Array( 2 );
1332
+ *
1333
+ * arr.set( [ 1.0, 1.0 ], 0 );
1334
+ * arr.set( [ 2.0, 2.0 ], 1 );
1335
+ *
1336
+ * var str = arr.toLocaleString();
1337
+ * // returns '1 + 1i,2 + 2i'
1338
+ */
1339
+ toLocaleString( locales?: string | Array<string>, options?: LocaleOptions ): string;
1340
+
1171
1341
  /**
1172
1342
  * Returns a new typed array containing the elements in reversed order.
1173
1343
  *
1174
1344
  * @returns reversed array
1175
1345
  *
1176
1346
  * @example
1177
- * var realf = require( '@stdlib/complex-realf' );
1178
- * var imagf = require( '@stdlib/complex-imagf' );
1347
+ * var realf = require( '@stdlib/complex-float32-real' );
1348
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1179
1349
  *
1180
1350
  * var arr = new Complex64Array( 3 );
1181
1351
  *
@@ -1215,6 +1385,78 @@ declare class Complex64Array implements Complex64ArrayInterface {
1215
1385
  */
1216
1386
  toReversed(): Complex64Array;
1217
1387
 
1388
+ /**
1389
+ * Returns a new typed array containing the elements in sorted order.
1390
+ *
1391
+ * @param compareFcn - comparison function
1392
+ * @returns sorted array
1393
+ *
1394
+ * @example
1395
+ * var realf = require( '@stdlib/complex-float32-real' );
1396
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1397
+ *
1398
+ * function compare( a, b ) {
1399
+ * var re1;
1400
+ * var re2;
1401
+ * var im1;
1402
+ * var im2;
1403
+ * re1 = realf( a );
1404
+ * re2 = realf( b );
1405
+ * if ( re1 < re2 ) {
1406
+ * return -1;
1407
+ * }
1408
+ * if ( re1 > re2 ) {
1409
+ * return 1;
1410
+ * }
1411
+ * im1 = imagf( a );
1412
+ * im2 = imagf( b );
1413
+ * if ( im1 < im2 ) {
1414
+ * return -1;
1415
+ * }
1416
+ * if ( im1 > im2 ) {
1417
+ * return 1;
1418
+ * }
1419
+ * return 0;
1420
+ * }
1421
+ *
1422
+ * var arr = new Complex64Array( 3 );
1423
+ *
1424
+ * arr.set( [ 3.0, -3.0 ], 0 );
1425
+ * arr.set( [ 1.0, -1.0 ], 1 );
1426
+ * arr.set( [ 2.0, -2.0 ], 2 );
1427
+ *
1428
+ * var out = arr.toSorted( compare );
1429
+ * // returns <Complex64Array>
1430
+ *
1431
+ * var z = out.get( 0 );
1432
+ * // returns <Complex64>
1433
+ *
1434
+ * var re = realf( z );
1435
+ * // returns 1.0
1436
+ *
1437
+ * var im = imagf( z );
1438
+ * // returns -1.0
1439
+ *
1440
+ * z = out.get( 1 );
1441
+ * // returns <Complex64>
1442
+ *
1443
+ * re = realf( z );
1444
+ * // returns 2.0
1445
+ *
1446
+ * im = imagf( z );
1447
+ * // returns -2.0
1448
+ *
1449
+ * z = out.get( 2 );
1450
+ * // returns <Complex64>
1451
+ *
1452
+ * re = realf( z );
1453
+ * // returns 3.0
1454
+ *
1455
+ * im = imagf( z );
1456
+ * // returns -3.0
1457
+ */
1458
+ toSorted( compareFcn: CompareFcn ): Complex64Array;
1459
+
1218
1460
  /**
1219
1461
  * Serializes an array as a string.
1220
1462
  *
@@ -1231,6 +1473,44 @@ declare class Complex64Array implements Complex64ArrayInterface {
1231
1473
  */
1232
1474
  toString(): string;
1233
1475
 
1476
+ /**
1477
+ * Returns an iterator for iterating over each value in a typed array.
1478
+ *
1479
+ * @returns iterator
1480
+ *
1481
+ * @example
1482
+ * var realf = require( '@stdlib/complex-float32-real' );
1483
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1484
+ * var arr = new Complex64Array( 2 );
1485
+ *
1486
+ * arr.set( [ 1.0, -1.0 ], 0 );
1487
+ * arr.set( [ 2.0, -2.0 ], 1 );
1488
+ *
1489
+ * var iter = arr.values();
1490
+ *
1491
+ * var v = iter.next().value;
1492
+ * // returns <Complex64>
1493
+ *
1494
+ * var re = realf( v );
1495
+ * // returns 1.0
1496
+ *
1497
+ * var im = imagf( v );
1498
+ * // returns -1.0
1499
+ *
1500
+ * v = iter.next().value;
1501
+ * // returns <Complex64>
1502
+ *
1503
+ * re = realf( v );
1504
+ * // returns 2.0
1505
+ *
1506
+ * im = imagf( v );
1507
+ * // returns -2.0
1508
+ *
1509
+ * var bool = iter.next().done;
1510
+ * // returns true
1511
+ */
1512
+ values(): TypedIterator<Complex64>;
1513
+
1234
1514
  /**
1235
1515
  * Returns a new typed array with the element at a provided index replaced with a provided value.
1236
1516
  *
@@ -1242,9 +1522,9 @@ declare class Complex64Array implements Complex64ArrayInterface {
1242
1522
  * @returns modified typed array
1243
1523
  *
1244
1524
  * @example
1245
- * var realf = require( '@stdlib/complex-realf' );
1246
- * var imagf = require( '@stdlib/complex-imagf' );
1247
- * var Complex64 = require( '@stdlib/complex-float32' );
1525
+ * var realf = require( '@stdlib/complex-float32-real' );
1526
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1527
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
1248
1528
  *
1249
1529
  * var arr = new Complex64Array( 3 );
1250
1530
  *
@@ -1446,7 +1726,7 @@ interface Complex64ArrayConstructor {
1446
1726
  * // returns 1
1447
1727
  *
1448
1728
  * @example
1449
- * var Complex64 = require( '@stdlib/complex-float32' );
1729
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
1450
1730
  *
1451
1731
  * var arr = Complex64Array.from( [ new Complex64( 1.0, 1.0 ) ] );
1452
1732
  * // returns <Complex64Array>
@@ -1455,9 +1735,9 @@ interface Complex64ArrayConstructor {
1455
1735
  * // returns 1
1456
1736
  *
1457
1737
  * @example
1458
- * var Complex64 = require( '@stdlib/complex-float32' );
1459
- * var realf = require( '@stdlib/complex-realf' );
1460
- * var imagf = require( '@stdlib/complex-imagf' );
1738
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
1739
+ * var realf = require( '@stdlib/complex-float32-real' );
1740
+ * var imagf = require( '@stdlib/complex-float32-imag' );
1461
1741
  *
1462
1742
  * function clbk( v ) {
1463
1743
  * return new Complex64( realf(v)*2.0, imagf(v)*2.0 );
@@ -1469,12 +1749,12 @@ interface Complex64ArrayConstructor {
1469
1749
  * var len = arr.length;
1470
1750
  * // returns 1
1471
1751
  */
1472
- from( src: ArrayLike<number | ComplexLike> | RealOrComplexTypedArray | Iterable<number | ComplexLike>, clbk?: FromCallback<U>, thisArg?: ThisParameterType<FromCallback<U>> ): Complex64Array;
1752
+ from<U = unknown>( src: ArrayLike<number | ComplexLike> | RealOrComplexTypedArray | Iterable<number | ComplexLike>, clbk?: FromCallback<U>, thisArg?: ThisParameterType<FromCallback<U>> ): Complex64Array;
1473
1753
 
1474
1754
  /**
1475
1755
  * Creates a new 64-bit complex number array from a variable number of arguments.
1476
1756
  *
1477
- * @param element - array elements
1757
+ * @param elements - array elements
1478
1758
  * @returns 64-bit complex number array
1479
1759
  *
1480
1760
  * @example
@@ -1560,3 +1840,5 @@ declare var ctor: Complex64ArrayConstructor;
1560
1840
  // EXPORTS //
1561
1841
 
1562
1842
  export = ctor;
1843
+
1844
+ // eslint-doctest-alias: Complex64Array
package/lib/from_array.js CHANGED
@@ -21,8 +21,8 @@
21
21
  // MODULES //
22
22
 
23
23
  var isComplexLike = require( '@stdlib/assert-is-complex-like' );
24
- var realf = require( '@stdlib/complex-realf' );
25
- var imagf = require( '@stdlib/complex-imagf' );
24
+ var realf = require( '@stdlib/complex-float32-real' );
25
+ var imagf = require( '@stdlib/complex-float32-imag' );
26
26
 
27
27
 
28
28
  // MAIN //
@@ -22,8 +22,8 @@
22
22
 
23
23
  var isArrayLikeObject = require( '@stdlib/assert-is-array-like-object' );
24
24
  var isComplexLike = require( '@stdlib/assert-is-complex-like' );
25
- var realf = require( '@stdlib/complex-realf' );
26
- var imagf = require( '@stdlib/complex-imagf' );
25
+ var realf = require( '@stdlib/complex-float32-real' );
26
+ var imagf = require( '@stdlib/complex-float32-imag' );
27
27
  var format = require( '@stdlib/string-format' );
28
28
 
29
29
 
@@ -22,8 +22,8 @@
22
22
 
23
23
  var isArrayLikeObject = require( '@stdlib/assert-is-array-like-object' );
24
24
  var isComplexLike = require( '@stdlib/assert-is-complex-like' );
25
- var realf = require( '@stdlib/complex-realf' );
26
- var imagf = require( '@stdlib/complex-imagf' );
25
+ var realf = require( '@stdlib/complex-float32-real' );
26
+ var imagf = require( '@stdlib/complex-float32-imag' );
27
27
  var format = require( '@stdlib/string-format' );
28
28
 
29
29