Skip to content

Commit dea93e7

Browse files
committed
fix: allow bool dtype in zeros via typed_and_generic
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: passed - task: lint_package_json status: na - task: lint_repl_help status: passed - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: passed - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: passed - task: lint_license_headers status: passed ---
1 parent aaa6e06 commit dea93e7

6 files changed

Lines changed: 22 additions & 3 deletions

File tree

lib/node_modules/@stdlib/array/zeros/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ The function recognizes the following data types:
6262
- `int8`: 8-bit two's complement signed integers
6363
- `uint8`: 8-bit unsigned integers
6464
- `uint8c`: 8-bit unsigned integers clamped to `0-255`
65+
- `bool`: boolean values
6566
- `generic`: generic JavaScript values
6667

6768
By default, the output array data type is `float64` (i.e., a [typed array][mdn-typed-array]). To specify an alternative data type, provide a `dtype` argument.

lib/node_modules/@stdlib/array/zeros/docs/repl.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
- int8: 8-bit two's complement signed integers.
1616
- uint8: 8-bit unsigned integers.
1717
- uint8c: 8-bit unsigned integers clamped to 0-255.
18+
- bool: boolean values.
1819
- generic: generic JavaScript values.
1920

2021
The default array data type is `float64`.

lib/node_modules/@stdlib/array/zeros/docs/types/index.d.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
/// <reference types="@stdlib/types"/>
2222

23-
import { NumericAndGenericDataTypeMap } from '@stdlib/types/array';
23+
import { DataTypeMap } from '@stdlib/types/array';
2424

2525
/**
2626
* Creates a zero-filled array having a specified length.
@@ -38,6 +38,7 @@ import { NumericAndGenericDataTypeMap } from '@stdlib/types/array';
3838
* - `int8`: 8-bit two's complement signed integers
3939
* - `uint8`: 8-bit unsigned integers
4040
* - `uint8c`: 8-bit unsigned integers clamped to `0-255`
41+
* - `bool`: boolean values
4142
* - `generic`: generic JavaScript values
4243
*
4344
* @param length - array length
@@ -52,7 +53,7 @@ import { NumericAndGenericDataTypeMap } from '@stdlib/types/array';
5253
* var arr = zeros( 2, 'float32' );
5354
* // returns <Float32Array>[ 0.0, 0.0 ]
5455
*/
55-
declare function zeros<T extends keyof NumericAndGenericDataTypeMap<number> = 'float64'>( length: number, dtype?: T ): NumericAndGenericDataTypeMap<number>[T];
56+
declare function zeros<U extends keyof DataTypeMap<number> = 'float64'>( length: number, dtype?: U ): DataTypeMap<number>[U];
5657

5758

5859
// EXPORTS //

lib/node_modules/@stdlib/array/zeros/docs/types/test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ import zeros = require( './index' );
3535
zeros( 10, 'uint16' ); // $ExpectType Uint16Array
3636
zeros( 10, 'uint8' ); // $ExpectType Uint8Array
3737
zeros( 10, 'uint8c' ); // $ExpectType Uint8ClampedArray
38+
zeros( 10, 'bool' ); // $ExpectType BooleanArray
3839
zeros( 10, 'generic' ); // $ExpectType number[]
3940
}
4041

lib/node_modules/@stdlib/array/zeros/lib/main.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ var format = require( '@stdlib/string/format' );
3333
// VARIABLES //
3434

3535
var DEFAULT_DTYPE = defaults.get( 'dtypes.default' );
36-
var DTYPES = dtypes( 'numeric_and_generic' );
36+
var DTYPES = dtypes( 'typed_and_generic' );
3737
var isValidDType = contains( DTYPES );
3838

3939

lib/node_modules/@stdlib/array/zeros/test/test.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ var Uint8Array = require( '@stdlib/array/uint8' );
3232
var Uint8ClampedArray = require( '@stdlib/array/uint8c' );
3333
var Complex64Array = require( '@stdlib/array/complex64' );
3434
var Complex128Array = require( '@stdlib/array/complex128' );
35+
var BooleanArray = require( '@stdlib/array/bool' );
3536
var reinterpret64 = require( '@stdlib/strided/base/reinterpret-complex64' );
3637
var reinterpret128 = require( '@stdlib/strided/base/reinterpret-complex128' );
3738
var instanceOf = require( '@stdlib/assert/instance-of' );
@@ -309,6 +310,20 @@ tape( 'the function returns a zero-filled array (dtype=uint8c)', function test(
309310
t.end();
310311
});
311312

313+
tape( 'the function returns a zero-filled array (dtype=bool)', function test( t ) {
314+
var expected;
315+
var arr;
316+
317+
expected = new BooleanArray( [ false, false, false, false, false ] );
318+
319+
arr = zeros( 5, 'bool' );
320+
t.strictEqual( instanceOf( arr, BooleanArray ), true, 'returns expected value' );
321+
t.strictEqual( arr.length, expected.length, 'returns expected value' );
322+
t.deepEqual( arr, expected, 'returns expected value' );
323+
324+
t.end();
325+
});
326+
312327
tape( 'the function returns a zero-filled array (dtype=generic)', function test( t ) {
313328
var expected;
314329
var arr;

0 commit comments

Comments
 (0)