@stdlib/blas-ext-base-cfill 0.1.0

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.
@@ -0,0 +1,112 @@
1
+ /*
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ // TypeScript Version: 4.1
20
+
21
+ /// <reference types="@stdlib/types"/>
22
+
23
+ import { Complex64Array } from '@stdlib/types/array';
24
+ import { Complex64 } from '@stdlib/types/complex';
25
+
26
+ /**
27
+ * Interface describing `cfill`.
28
+ */
29
+ interface Routine {
30
+ /**
31
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
32
+ *
33
+ * @param N - number of indexed elements
34
+ * @param alpha - scalar constant
35
+ * @param x - input array
36
+ * @param strideX - stride length
37
+ * @returns input array
38
+ *
39
+ * @example
40
+ * var Complex64Array = require( '@stdlib/array-complex64' );
41
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
42
+ *
43
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
44
+ *
45
+ * var alpha = new Complex64( 10.0, 10.0 );
46
+ *
47
+ * cfill( x.length, alpha, x, 1 );
48
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
49
+ */
50
+ ( N: number, alpha: Complex64, x: Complex64Array, strideX: number ): Complex64Array;
51
+
52
+ /**
53
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
54
+ *
55
+ * @param N - number of indexed elements
56
+ * @param alpha - scalar constant
57
+ * @param x - input array
58
+ * @param strideX - stride length
59
+ * @param offsetX - starting index
60
+ * @returns input array
61
+ *
62
+ * @example
63
+ * var Complex64Array = require( '@stdlib/array-complex64' );
64
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
65
+ *
66
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
67
+ *
68
+ * var alpha = new Complex64( 10.0, 10.0 );
69
+ *
70
+ * cfill.ndarray( x.length, alpha, x, 1, 0 );
71
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
72
+ */
73
+ ndarray( N: number, alpha: Complex64, x: Complex64Array, strideX: number, offsetX: number ): Complex64Array;
74
+ }
75
+
76
+ /**
77
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
78
+ *
79
+ * @param N - number of indexed elements
80
+ * @param alpha - scalar constant
81
+ * @param x - input array
82
+ * @param strideX - stride length
83
+ * @returns input array
84
+ *
85
+ * @example
86
+ * var Complex64Array = require( '@stdlib/array-complex64' );
87
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
88
+ *
89
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
90
+ *
91
+ * var alpha = new Complex64( 10.0, 10.0 );
92
+ *
93
+ * cfill( x.length, alpha, x, 1 );
94
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
95
+ *
96
+ * @example
97
+ * var Complex64Array = require( '@stdlib/array-complex64' );
98
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
99
+ *
100
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
101
+ *
102
+ * var alpha = new Complex64( 10.0, 10.0 );
103
+ *
104
+ * cfill.ndarray( x.length, alpha, x, 1, 0 );
105
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
106
+ */
107
+ declare var cfill: Routine;
108
+
109
+
110
+ // EXPORTS //
111
+
112
+ export = cfill;
@@ -0,0 +1,46 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ #ifndef STDLIB_BLAS_EXT_BASE_CFILL_H
20
+ #define STDLIB_BLAS_EXT_BASE_CFILL_H
21
+
22
+ #include "stdlib/complex/float32/ctor.h"
23
+ #include "stdlib/blas/base/shared.h"
24
+
25
+ /*
26
+ * If C++, prevent name mangling so that the compiler emits a binary file having undecorated names, thus mirroring the behavior of a C compiler.
27
+ */
28
+ #ifdef __cplusplus
29
+ extern "C" {
30
+ #endif
31
+
32
+ /**
33
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
34
+ */
35
+ void API_SUFFIX(stdlib_strided_cfill)( const CBLAS_INT N, const stdlib_complex64_t alpha, stdlib_complex64_t *X, const CBLAS_INT strideX );
36
+
37
+ /**
38
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant using alternative indexing semantics.
39
+ */
40
+ void API_SUFFIX(stdlib_strided_cfill_ndarray)( const CBLAS_INT N, const stdlib_complex64_t alpha, stdlib_complex64_t *X, const CBLAS_INT strideX, const CBLAS_INT offsetX );
41
+
42
+ #ifdef __cplusplus
43
+ }
44
+ #endif
45
+
46
+ #endif // !STDLIB_BLAS_EXT_BASE_CFILL_H
package/lib/cfill.js ADDED
@@ -0,0 +1,56 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ // MODULES //
22
+
23
+ var stride2offset = require( '@stdlib/strided-base-stride2offset' );
24
+ var ndarray = require( './ndarray.js' );
25
+
26
+
27
+ // MAIN //
28
+
29
+ /**
30
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
31
+ *
32
+ * @param {PositiveInteger} N - number of indexed elements
33
+ * @param {ComplexLike} alpha - scalar constant
34
+ * @param {Complex64Array} x - input array
35
+ * @param {integer} strideX - stride length
36
+ * @returns {Complex64Array} input array
37
+ *
38
+ * @example
39
+ * var Complex64Array = require( '@stdlib/array-complex64' );
40
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
41
+ *
42
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
43
+ *
44
+ * var alpha = new Complex64( 10.0, 10.0 );
45
+ *
46
+ * cfill( x.length, alpha, x, 1 );
47
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
48
+ */
49
+ function cfill( N, alpha, x, strideX ) {
50
+ return ndarray( N, alpha, x, strideX, stride2offset( N, strideX ) );
51
+ }
52
+
53
+
54
+ // EXPORTS //
55
+
56
+ module.exports = cfill;
@@ -0,0 +1,58 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ // MODULES //
22
+
23
+ var reinterpret = require( '@stdlib/strided-base-reinterpret-complex64' );
24
+ var addon = require( './../src/addon.node' );
25
+
26
+
27
+ // MAIN //
28
+
29
+ /**
30
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
31
+ *
32
+ * @param {PositiveInteger} N - number of indexed elements
33
+ * @param {ComplexLike} alpha - scalar constant
34
+ * @param {Complex64Array} x - input array
35
+ * @param {integer} strideX - stride length
36
+ * @returns {Complex64Array} input array
37
+ *
38
+ * @example
39
+ * var Complex64Array = require( '@stdlib/array-complex64' );
40
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
41
+ *
42
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
43
+ *
44
+ * var alpha = new Complex64( 10.0, 10.0 );
45
+ *
46
+ * cfill( x.length, alpha, x, 1 );
47
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
48
+ */
49
+ function cfill( N, alpha, x, strideX ) {
50
+ var view = reinterpret( x, 0 );
51
+ addon( N, alpha, view, strideX );
52
+ return x;
53
+ }
54
+
55
+
56
+ // EXPORTS //
57
+
58
+ module.exports = cfill;
package/lib/index.js ADDED
@@ -0,0 +1,62 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ /**
22
+ * Fill a single-precision complex floating-point strided array with a specified scalar constant.
23
+ *
24
+ * @module @stdlib/blas-ext-base-cfill
25
+ *
26
+ * @example
27
+ * var Complex64Array = require( '@stdlib/array-complex64' );
28
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
29
+ * var cfill = require( '@stdlib/blas-ext-base-cfill' );
30
+ *
31
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
32
+ *
33
+ * var alpha = new Complex64( 10.0, 10.0 );
34
+ *
35
+ * cfill( x.length, alpha, x, 1 );
36
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
37
+ */
38
+
39
+ // MODULES //
40
+
41
+ var join = require( 'path' ).join;
42
+ var tryRequire = require( '@stdlib/utils-try-require' );
43
+ var isError = require( '@stdlib/assert-is-error' );
44
+ var main = require( './main.js' );
45
+
46
+
47
+ // MAIN //
48
+
49
+ var cfill;
50
+ var tmp = tryRequire( join( __dirname, './native.js' ) );
51
+ if ( isError( tmp ) ) {
52
+ cfill = main;
53
+ } else {
54
+ cfill = tmp;
55
+ }
56
+
57
+
58
+ // EXPORTS //
59
+
60
+ module.exports = cfill;
61
+
62
+ // exports: { "ndarray": "cfill.ndarray" }
package/lib/main.js ADDED
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ // MODULES //
22
+
23
+ var setReadOnly = require( '@stdlib/utils-define-nonenumerable-read-only-property' );
24
+ var cfill = require( './cfill.js' );
25
+ var ndarray = require( './ndarray.js' );
26
+
27
+
28
+ // MAIN //
29
+
30
+ setReadOnly( cfill, 'ndarray', ndarray );
31
+
32
+
33
+ // EXPORTS //
34
+
35
+ module.exports = cfill;
package/lib/native.js ADDED
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ // MODULES //
22
+
23
+ var setReadOnly = require( '@stdlib/utils-define-nonenumerable-read-only-property' );
24
+ var cfill = require( './cfill.native.js' );
25
+ var ndarray = require( './ndarray.native.js' );
26
+
27
+
28
+ // MAIN //
29
+
30
+ setReadOnly( cfill, 'ndarray', ndarray );
31
+
32
+
33
+ // EXPORTS //
34
+
35
+ module.exports = cfill;
package/lib/ndarray.js ADDED
@@ -0,0 +1,126 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ // MODULES //
22
+
23
+ var reinterpret = require( '@stdlib/strided-base-reinterpret-complex64' );
24
+ var realf = require( '@stdlib/complex-float32-real' );
25
+ var imagf = require( '@stdlib/complex-float32-imag' );
26
+
27
+
28
+ // VARIABLES //
29
+
30
+ var M = 8;
31
+
32
+
33
+ // MAIN //
34
+
35
+ /**
36
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
37
+ *
38
+ * @param {PositiveInteger} N - number of indexed elements
39
+ * @param {ComplexLike} alpha - scalar constant
40
+ * @param {Complex64Array} x - input array
41
+ * @param {integer} strideX - stride length
42
+ * @param {NonNegativeInteger} offsetX - starting index
43
+ * @returns {Complex64Array} input array
44
+ *
45
+ * @example
46
+ * var Complex64Array = require( '@stdlib/array-complex64' );
47
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
48
+ *
49
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
50
+ *
51
+ * var alpha = new Complex64( 10.0, 10.0 );
52
+ *
53
+ * cfill( x.length, alpha, x, 1, 0 );
54
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
55
+ */
56
+ function cfill( N, alpha, x, strideX, offsetX ) {
57
+ var view;
58
+ var re;
59
+ var im;
60
+ var ix;
61
+ var m;
62
+ var i;
63
+
64
+ if ( N <= 0 ) {
65
+ return x;
66
+ }
67
+
68
+ // Decompose the constant into its real and imaginary components:
69
+ re = realf( alpha );
70
+ im = imagf( alpha );
71
+
72
+ // Reinterpret the complex input array as a real-valued array:
73
+ view = reinterpret( x, 0 );
74
+
75
+ // Adjust the stride and offset according to real-valued array:
76
+ ix = offsetX * 2;
77
+ strideX *= 2;
78
+
79
+ // Use loop unrolling if the stride is equal to `2`...
80
+ if ( strideX === 2 ) {
81
+ m = N % M;
82
+
83
+ // If we have a remainder, run a clean-up loop...
84
+ if ( m > 0 ) {
85
+ for ( i = 0; i < m; i++ ) {
86
+ view[ ix ] = re;
87
+ view[ ix+1 ] = im;
88
+ ix += strideX;
89
+ }
90
+ }
91
+ if ( N < M ) {
92
+ return x;
93
+ }
94
+ for ( i = m; i < N; i += M ) {
95
+ view[ ix ] = re;
96
+ view[ ix+1 ] = im;
97
+ view[ ix+2 ] = re;
98
+ view[ ix+3 ] = im;
99
+ view[ ix+4 ] = re;
100
+ view[ ix+5 ] = im;
101
+ view[ ix+6 ] = re;
102
+ view[ ix+7 ] = im;
103
+ view[ ix+8 ] = re;
104
+ view[ ix+9 ] = im;
105
+ view[ ix+10 ] = re;
106
+ view[ ix+11 ] = im;
107
+ view[ ix+12 ] = re;
108
+ view[ ix+13 ] = im;
109
+ view[ ix+14 ] = re;
110
+ view[ ix+15 ] = im;
111
+ ix += M * 2;
112
+ }
113
+ return x;
114
+ }
115
+ for ( i = 0; i < N; i++ ) {
116
+ view[ ix ] = re;
117
+ view[ ix+1 ] = im;
118
+ ix += strideX;
119
+ }
120
+ return x;
121
+ }
122
+
123
+
124
+ // EXPORTS //
125
+
126
+ module.exports = cfill;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @license Apache-2.0
3
+ *
4
+ * Copyright (c) 2024 The Stdlib Authors.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ // MODULES //
22
+
23
+ var reinterpret = require( '@stdlib/strided-base-reinterpret-complex64' );
24
+ var addon = require( './../src/addon.node' );
25
+
26
+
27
+ // MAIN //
28
+
29
+ /**
30
+ * Fills a single-precision complex floating-point strided array with a specified scalar constant.
31
+ *
32
+ * @param {PositiveInteger} N - number of indexed elements
33
+ * @param {ComplexLike} alpha - scalar constant
34
+ * @param {Complex64Array} x - input array
35
+ * @param {integer} strideX - stride length
36
+ * @param {NonNegativeInteger} offsetX - starting index
37
+ * @returns {Complex64Array} input array
38
+ *
39
+ * @example
40
+ * var Complex64Array = require( '@stdlib/array-complex64' );
41
+ * var Complex64 = require( '@stdlib/complex-float32-ctor' );
42
+ *
43
+ * var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] );
44
+ *
45
+ * var alpha = new Complex64( 10.0, 10.0 );
46
+ *
47
+ * cfill( x.length, alpha, x, 1, 0 );
48
+ * // x => <Complex64Array>[ 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0 ]
49
+ */
50
+ function cfill( N, alpha, x, strideX, offsetX ) {
51
+ var view = reinterpret( x, 0 );
52
+ addon.ndarray( N, alpha, view, strideX, offsetX );
53
+ return x;
54
+ }
55
+
56
+
57
+ // EXPORTS //
58
+
59
+ module.exports = cfill;
package/manifest.json ADDED
@@ -0,0 +1,82 @@
1
+ {
2
+ "options": {
3
+ "task": "build"
4
+ },
5
+ "fields": [
6
+ {
7
+ "field": "src",
8
+ "resolve": true,
9
+ "relative": true
10
+ },
11
+ {
12
+ "field": "include",
13
+ "resolve": true,
14
+ "relative": true
15
+ },
16
+ {
17
+ "field": "libraries",
18
+ "resolve": false,
19
+ "relative": false
20
+ },
21
+ {
22
+ "field": "libpath",
23
+ "resolve": true,
24
+ "relative": false
25
+ }
26
+ ],
27
+ "confs": [
28
+ {
29
+ "task": "build",
30
+ "src": [
31
+ "./src/main.c"
32
+ ],
33
+ "include": [
34
+ "./include"
35
+ ],
36
+ "libraries": [],
37
+ "libpath": [],
38
+ "dependencies": [
39
+ "@stdlib/blas-base-shared",
40
+ "@stdlib/napi-export",
41
+ "@stdlib/napi-argv",
42
+ "@stdlib/napi-argv-complex64",
43
+ "@stdlib/napi-argv-int64",
44
+ "@stdlib/napi-argv-strided-complex64array",
45
+ "@stdlib/complex-float32-ctor",
46
+ "@stdlib/strided-base-stride2offset"
47
+ ]
48
+ },
49
+ {
50
+ "task": "benchmark",
51
+ "src": [
52
+ "./src/main.c"
53
+ ],
54
+ "include": [
55
+ "./include"
56
+ ],
57
+ "libraries": [],
58
+ "libpath": [],
59
+ "dependencies": [
60
+ "@stdlib/blas-base-shared",
61
+ "@stdlib/complex-float32-ctor",
62
+ "@stdlib/strided-base-stride2offset"
63
+ ]
64
+ },
65
+ {
66
+ "task": "examples",
67
+ "src": [
68
+ "./src/main.c"
69
+ ],
70
+ "include": [
71
+ "./include"
72
+ ],
73
+ "libraries": [],
74
+ "libpath": [],
75
+ "dependencies": [
76
+ "@stdlib/blas-base-shared",
77
+ "@stdlib/complex-float32-ctor",
78
+ "@stdlib/strided-base-stride2offset"
79
+ ]
80
+ }
81
+ ]
82
+ }