Skip to content

Commit ef34fdc

Browse files
committed
Auto-generated commit
1 parent 2edbf09 commit ef34fdc

9 files changed

Lines changed: 21 additions & 99 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
<details>
2424

25+
- [`6ebb5c9`](https://github.com/stdlib-js/stdlib/commit/6ebb5c96300bde3f75f7cbae57fdecf8c5a08f93) - **refactor:** use generalized utility _(by Athan Reines)_
2526
- [`9c75b30`](https://github.com/stdlib-js/stdlib/commit/9c75b302a82df9b6c580b9f8afc647773e5684a3) - **feat:** add `ndarray/base/quinary-tiling-block-size` [(#9871)](https://github.com/stdlib-js/stdlib/pull/9871) _(by Muhammad Haris, Athan Reines)_
2627

2728
</details>

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ The function supports the following arguments:
118118
```javascript
119119
var dtypes = require( '@stdlib/ndarray-dtypes' );
120120
var cartesianPower = require( '@stdlib/array-base-cartesian-power' );
121-
var promotionRules = require( '@stdlib/ndarray-promotion-rules' );
121+
var promoteDataTypes = require( '@stdlib/ndarray-base-promote-dtypes' );
122122
var quinaryBlockSize = require( '@stdlib/ndarray-base-quinary-tiling-block-size' );
123123

124124
// Generate a list of input ndarray dtype quintuplets:
@@ -130,8 +130,8 @@ var b;
130130
var i;
131131
console.log( 'block_size, xdtype, ydtype, zdtype, wdtype, udtype, vdtype' );
132132
for ( i = 0; i < dt.length; i++ ) {
133-
t = promotionRules.apply( null, dt[ i ] );
134-
dt[ i ].push( ( t === -1 ) ? 'generic' : t );
133+
t = promoteDataTypes( dt[ i ] );
134+
dt[ i ].push( ( t === null ) ? 'generic' : t );
135135
b = quinaryBlockSize.apply( null, dt[ i ] );
136136
console.log( '%d, %s, %s, %s, %s, %s, %s', b, dt[i][0], dt[i][1], dt[i][2], dt[i][3], dt[i][4], dt[i][5] );
137137
}

dist/index.js

Lines changed: 3 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/index.js.map

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/index.js

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

2121
var dtypes = require( '@stdlib/ndarray-dtypes' );
2222
var cartesianPower = require( '@stdlib/array-base-cartesian-power' );
23-
var promotionRules = require( '@stdlib/ndarray-promotion-rules' );
23+
var promoteDataTypes = require( '@stdlib/ndarray-base-promote-dtypes' );
2424
var quinaryBlockSize = require( './../lib' );
2525

2626
// Generate a list of input ndarray dtype quintuplets:
@@ -32,8 +32,8 @@ var b;
3232
var i;
3333
console.log( 'block_size, xdtype, ydtype, zdtype, wdtype, udtype, vdtype' );
3434
for ( i = 0; i < dt.length; i++ ) {
35-
t = promotionRules.apply( null, dt[ i ] );
36-
dt[ i ].push( ( t === -1 ) ? 'generic' : t );
35+
t = promoteDataTypes( dt[ i ] );
36+
dt[ i ].push( ( t === null ) ? 'generic' : t );
3737
b = quinaryBlockSize.apply( null, dt[ i ] );
3838
console.log( '%d, %s, %s, %s, %s, %s, %s', b, dt[i][0], dt[i][1], dt[i][2], dt[i][3], dt[i][4], dt[i][5] );
3939
}

lib/defaults.js

Lines changed: 0 additions & 34 deletions
This file was deleted.

lib/main.js

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

2121
// MODULES //
2222

23-
var bytesPerElement = require( '@stdlib/ndarray-base-bytes-per-element' );
24-
var defaults = require( './defaults.js' );
23+
var blockSize = require( '@stdlib/ndarray-base-tiling-block-size' );
2524

2625

2726
// MAIN //
@@ -42,49 +41,7 @@ var defaults = require( './defaults.js' );
4241
* // returns <number>
4342
*/
4443
function quinaryBlockSize( dtypeX, dtypeY, dtypeZ, dtypeW, dtypeU, dtypeV ) {
45-
var nbx;
46-
var nby;
47-
var nbz;
48-
var nbw;
49-
var nbu;
50-
var nbv;
51-
var max;
52-
53-
nbx = bytesPerElement( dtypeX );
54-
nby = bytesPerElement( dtypeY );
55-
nbz = bytesPerElement( dtypeZ );
56-
nbw = bytesPerElement( dtypeW );
57-
nbu = bytesPerElement( dtypeU );
58-
nbv = bytesPerElement( dtypeV );
59-
if (
60-
nbx === null ||
61-
nby === null ||
62-
nbz === null ||
63-
nbw === null ||
64-
nbu === null ||
65-
nbv === null
66-
) {
67-
// e.g., "generic" arrays
68-
return defaults.BLOCK_SIZE_IN_ELEMENTS;
69-
}
70-
// Find the largest element size among all six arrays...
71-
max = nbx;
72-
if ( nby > max ) {
73-
max = nby;
74-
}
75-
if ( nbz > max ) {
76-
max = nbz;
77-
}
78-
if ( nbw > max ) {
79-
max = nbw;
80-
}
81-
if ( nbu > max ) {
82-
max = nbu;
83-
}
84-
if ( nbv > max ) {
85-
max = nbv;
86-
}
87-
return ( defaults.BLOCK_SIZE_IN_BYTES/max )|0; // asm type annotation
44+
return blockSize( [ dtypeX, dtypeY, dtypeZ, dtypeW, dtypeU, dtypeV ] );
8845
}
8946

9047

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@
3737
"url": "https://github.com/stdlib-js/stdlib/issues"
3838
},
3939
"dependencies": {
40-
"@stdlib/ndarray-base-bytes-per-element": "^0.2.2",
40+
"@stdlib/ndarray-base-tiling-block-size": "github:stdlib-js/ndarray-base-tiling-block-size#main",
4141
"@stdlib/types": "^0.4.3"
4242
},
4343
"devDependencies": {
4444
"@stdlib/array-base-cartesian-power": "^0.2.2",
4545
"@stdlib/assert-is-positive-integer": "^0.2.2",
46+
"@stdlib/ndarray-base-promote-dtypes": "github:stdlib-js/ndarray-base-promote-dtypes#main",
4647
"@stdlib/ndarray-dtypes": "^0.3.0",
47-
"@stdlib/ndarray-promotion-rules": "^0.3.0",
4848
"tape": "git+https://github.com/kgryte/tape.git#fix/globby",
4949
"istanbul": "^0.4.1",
5050
"tap-min": "git+https://github.com/Planeshifter/tap-min.git",

test/test.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ var tape = require( 'tape' );
2424
var isPositiveInteger = require( '@stdlib/assert-is-positive-integer' ).isPrimitive;
2525
var dtypes = require( '@stdlib/ndarray-dtypes' );
2626
var cartesianPower = require( '@stdlib/array-base-cartesian-power' );
27-
var promotionRules = require( '@stdlib/ndarray-promotion-rules' );
27+
var promoteDataTypes = require( '@stdlib/ndarray-base-promote-dtypes' );
2828
var quinaryBlockSize = require( './../lib' );
2929

3030

@@ -48,8 +48,8 @@ tape( 'the function returns a block size', function test( t ) {
4848
dt = cartesianPower( dtypes(), 5 );
4949

5050
for ( i = 0; i < dt.length; i++ ) {
51-
pt = promotionRules.apply( null, dt[ i ] );
52-
dt[ i ].push( ( pt === -1 ) ? 'generic' : pt );
51+
pt = promoteDataTypes( dt[ i ] );
52+
dt[ i ].push( ( pt === null ) ? 'generic' : pt );
5353
v = quinaryBlockSize( dt[ i ][ 0 ], dt[ i ][ 1 ], dt[ i ][ 2 ], dt[ i ][ 3 ], dt[ i ][ 4 ], dt[ i ][ 5 ] ); // eslint-disable-line max-len
5454
t.strictEqual( isPositiveInteger( v ), true, 'returns a positive integer when provided ('+dt[ i ].join( ', ' )+')' );
5555
}

0 commit comments

Comments
 (0)