Data type constructor.
var DataType = require( '@stdlib/ndarray/dtype-ctor' );Returns a data type instance.
var dt = new DataType( 'float64' );
// returns <DataType>The constructor supports the following parameters:
- value: data type value. Must be either a supported data type string, a struct constructor, or another data type instance.
- options: constructor options (optional).
The constructor supports the following options:
- description: data type description.
Alignment (in bytes) for the data type.
var dt = new DataType( 'float64' );
// returns <DataType>
var v = dt.alignment;
// returns 8If a data type does not have a known alignment, the returned value is -1.
Size (in bytes) for the data type.
var dt = new DataType( 'float64' );
// returns <DataType>
var v = dt.byteLength;
// returns 8If a data type does not have a known size, the returned value is -1.
Data type byte order.
var dt = new DataType( 'float64' );
// returns <DataType>
var v = dt.byteOrder;
// returns 'host'The byte order may be one of the following values:
- host: host platform byte order.
- little-endian: little-endian byte order.
- big-endian: big-endian byte order.
Single letter character abbreviation for the data type.
var dt = new DataType( 'float64' );
// returns <DataType>
var v = dt.char;
// returns 'd'If a data type does not have a corresponding single letter character abbreviation, the returned value is an empty string.
Data type description.
var dt = new DataType( 'float64' );
// returns <DataType>
var v = dt.description;
// returns '...'If a data type does not have an associated description, the returned value is an empty string.
Enumeration constant for the data type.
var dt = new DataType( 'float64' );
// returns <DataType>
var v = dt.enum;
// returns <number>If a data type does not have a corresponding known enumeration constant, the returned value is -1.
Note: enumeration constants should be treated as opaque values. One should not assume that a data type has a specific enumeration constant value.
Raw (original) data type value.
var dt = new DataType( 'float64' );
// returns <DataType>
var v = dt.value;
// returns 'float64'Returns a JSON representation of a DataType instance.
var dt = new DataType( 'float64' );
// returns <DataType>
var o = dt.toJSON();
// e.g., returns { 'type': 'DataType', 'value': 'float64', 'byteOrder': 'host', ... }JSON.stringify() implicitly calls this method when stringifying a DataType instance.
Returns a string representation of a DataType instance.
var dt = new DataType( 'float64' );
// returns <DataType>
var str = dt.toString();
// returns 'float64'Converts a DataType instance to a primitive value.
var dt = new DataType( 'float64' );
// returns <DataType>
var str = dt.valueOf();
// returns 'float64'This method returns the same value as #.toString().
var DataType = require( '@stdlib/ndarray/dtype-ctor' );
var dt = new DataType( 'complex128' );
console.log( 'type: %s', typeof dt );
// => 'type: object'
console.log( 'alignment: %d', dt.alignment );
// => 'alignment: 8'
console.log( 'byteLength: %d', dt.byteLength );
// => 'byteLength: 16'
console.log( 'byteOrder: %s', dt.byteOrder );
// => 'byteOrder: host'
console.log( 'char: %s', dt.char );
// => 'char: z'
console.log( 'JSON: %s', JSON.stringify( dt ) );
// e.g., => 'JSON: {"type": "DataType","value":"complex128","byteOrder":"host",...}'@stdlib/ndarray/ctor: multidimensional array constructor.@stdlib/ndarray/dtype: return the data type of a provided ndarray.