isSameKindCast

Determine whether an ndarray data type can be safely cast to, or is of the same "kind" as, another ndarray data type.

Usage

var isSameKindCast = require( '@stdlib/ndarray/base/assert/is-same-kind-data-type-cast' );

isSameKindCast( from, to )

Returns a boolean indicating whether an ndarray data type can be safely cast to, or is of the same "kind" as, another ndarray data type (e.g., casting between signed integers or between floats).

var bool = isSameKindCast( 'float32', 'float64' );
// returns true

bool = isSameKindCast( 'uint16', 'int16' );
// returns false

Examples

var dtypes = require( '@stdlib/ndarray/dtypes' );
var isSameKindCast = require( '@stdlib/ndarray/base/assert/is-same-kind-data-type-cast' );

var DTYPES;
var bool;
var dt;
var i;
var j;

// Get a list of supported ndarray data types:
DTYPES = dtypes();

// For each data type, determine whether one can cast to another data type...
for ( i = 0; i < DTYPES.length; i++ ) {
    dt = DTYPES[ i ];
    for ( j = 0; j < DTYPES.length; j++ ) {
        bool = isSameKindCast( dt, DTYPES[ j ] );
        console.log( '%s => %s. Allowed cast? %s.', dt, DTYPES[ j ], bool );
    }
}
Did you find this page helpful?