From c10d66ead349b20142e593a8b099ad637427cdc4 Mon Sep 17 00:00:00 2001 From: stdlib-bot Date: Mon, 14 Apr 2025 00:31:45 +0000 Subject: [PATCH] Transform error messages --- lib/get.js | 6 +++--- lib/iget.js | 4 ++-- lib/iset.js | 6 +++--- lib/main.js | 26 +++++++++++++------------- lib/set.js | 8 ++++---- lib/validate.js | 14 +++++++------- package.json | 2 +- 7 files changed, 33 insertions(+), 33 deletions(-) diff --git a/lib/get.js b/lib/get.js index aa0b526..db6c393 100644 --- a/lib/get.js +++ b/lib/get.js @@ -24,7 +24,7 @@ var isInteger = require( '@stdlib/assert-is-integer' ).isPrimitive; var getIndex = require( '@stdlib/ndarray-base-ind' ); -var format = require( '@stdlib/string-format' ); +var format = require( '@stdlib/error-tools-fmtprodmsg' ); // MAIN // @@ -50,13 +50,13 @@ function get() { var i; if ( arguments.length !== this._ndims ) { - throw new RangeError( format( 'invalid arguments. Number of indices must match the number of dimensions. ndims: `%u`. nargs: `%u`.', this._ndims, arguments.length ) ); + throw new RangeError( format( '0jp5M', this._ndims, arguments.length ) ); } idx = this._offset; M = this._submode.length; for ( i = 0; i < arguments.length; i++ ) { if ( !isInteger( arguments[ i ] ) ) { - throw new TypeError( format( 'invalid argument. Indices must be integer valued. Argument: `%u`. Value: `%s`.', i, arguments[ i ] ) ); + throw new TypeError( format( '0jp5N', i, arguments[ i ] ) ); } ind = getIndex( arguments[ i ], this._shape[ i ]-1, this._submode[ i%M ] ); // eslint-disable-line max-len idx += this._strides[ i ] * ind; diff --git a/lib/iget.js b/lib/iget.js index 58487d2..829b81b 100644 --- a/lib/iget.js +++ b/lib/iget.js @@ -25,7 +25,7 @@ var isInteger = require( '@stdlib/assert-is-integer' ).isPrimitive; var getIndex = require( '@stdlib/ndarray-base-ind' ); var parent = require( '@stdlib/ndarray-base-ctor' ); // eslint-disable-line stdlib/no-redeclare -var format = require( '@stdlib/string-format' ); +var format = require( '@stdlib/error-tools-fmtprodmsg' ); // VARIABLES // @@ -51,7 +51,7 @@ var base = parent.prototype.iget; function iget( idx ) { if ( this._ndims > 0 ) { if ( !isInteger( idx ) ) { - throw new TypeError( format( 'invalid argument. Index must be an integer. Value: `%s`.', idx ) ); + throw new TypeError( format( '0jp5O', idx ) ); } idx = getIndex( idx, this._length-1, this._mode ); return base.call( this, idx ); diff --git a/lib/iset.js b/lib/iset.js index d1df9cf..f4df08f 100644 --- a/lib/iset.js +++ b/lib/iset.js @@ -25,7 +25,7 @@ var isInteger = require( '@stdlib/assert-is-integer' ).isPrimitive; var getIndex = require( '@stdlib/ndarray-base-ind' ); var parent = require( '@stdlib/ndarray-base-ctor' ); // eslint-disable-line stdlib/no-redeclare -var format = require( '@stdlib/string-format' ); +var format = require( '@stdlib/error-tools-fmtprodmsg' ); // VARIABLES // @@ -52,11 +52,11 @@ var base = parent.prototype.iset; */ function iset( idx, v ) { if ( this._flags.READONLY ) { - throw new Error( 'invalid invocation. Cannot write to a read-only array.' ); + throw new Error( format('0jp0e') ); } if ( this._ndims > 0 ) { if ( !isInteger( idx ) ) { - throw new TypeError( format( 'invalid argument. Index must be an integer. Value: `%s`.', idx ) ); + throw new TypeError( format( '0jp5O', idx ) ); } idx = getIndex( idx, this._length-1, this._mode ); base.call( this, idx, v ); diff --git a/lib/main.js b/lib/main.js index 9f1aa64..fadb964 100644 --- a/lib/main.js +++ b/lib/main.js @@ -35,7 +35,7 @@ var numel = require( '@stdlib/ndarray-base-numel' ); var parent = require( '@stdlib/ndarray-base-ctor' ); // eslint-disable-line stdlib/no-redeclare var defaults = require( '@stdlib/ndarray-defaults' ); var inherit = require( '@stdlib/utils-inherit' ); -var format = require( '@stdlib/string-format' ); +var format = require( '@stdlib/error-tools-fmtprodmsg' ); var iget = require( './iget.js' ); var iset = require( './iset.js' ); var get = require( './get.js' ); @@ -115,42 +115,42 @@ function ndarray( dtype, buffer, shape, strides, offset, order, options ) { return new ndarray( dtype, buffer, shape, strides, offset, order, options ); // eslint-disable-line max-len } if ( !isDataType( dtype ) ) { - throw new TypeError( format( 'invalid argument. First argument must be a supported ndarray data type. Value: `%s`.', dtype ) ); + throw new TypeError( format( '0jp5P', dtype ) ); } if ( !isCollection( buffer ) ) { - throw new TypeError( format( 'invalid argument. Second argument must be an array-like object, typed-array-like, or a Buffer. Value: `%s`.', buffer ) ); + throw new TypeError( format( '0jp5Q', buffer ) ); } else if ( buffer.get && buffer.set && ( !isFunction( buffer.get ) || !isFunction( buffer.set ) ) ) { // eslint-disable-line max-len - throw new TypeError( format( 'invalid argument. Second argument `get` and `set` properties must be functions. Value: `%s`.', buffer ) ); + throw new TypeError( format( '0jp5R', buffer ) ); } if ( !isNonNegativeIntegerArray( shape ) ) { if ( !isCollection( shape) || shape.length > 0 ) { - throw new TypeError( format( 'invalid argument. Third argument must be an array-like object containing nonnegative integers. Value: `%s`.', shape ) ); + throw new TypeError( format( '0jp5S', shape ) ); } } ndims = shape.length; if ( ndims > MAX_DIMS ) { - throw new RangeError( format( 'invalid argument. Number of dimensions must not exceed %u due to stack limits. Value: `%u`.', MAX_DIMS, ndims ) ); + throw new RangeError( format( '0jp5T', MAX_DIMS, ndims ) ); } if ( !isIntegerArray( strides ) ) { - throw new TypeError( format( 'invalid argument. Fourth argument must be an array-like object containing integers. Value: `%s`.', strides ) ); + throw new TypeError( format( '0jp5U', strides ) ); } if ( ndims > 0 ) { if ( strides.length !== ndims ) { - throw new RangeError( format( 'invalid argument. Fourth argument length must match the number of dimensions. Expected number of dimensions: `%u`. Strides length: `%u`.', ndims, strides.length ) ); + throw new RangeError( format( '0jp5V', ndims, strides.length ) ); } } else if ( strides.length !== 1 ) { - throw new RangeError( 'invalid argument. Fourth argument length must be equal to 1 when creating a zero-dimensional ndarray.' ); + throw new RangeError( format('0jp0f') ); } else if ( strides[ 0 ] !== 0 ) { - throw new RangeError( format( 'invalid argument. Fourth argument must contain a single element equal to 0. Value: `%d`.', strides[ 0 ] ) ); + throw new RangeError( format( '0jpDt', strides[ 0 ] ) ); } if ( !isNonNegativeInteger( offset ) ) { - throw new TypeError( format( 'invalid argument. Fifth argument must be a nonnegative integer. Value: `%s`.', offset ) ); + throw new TypeError( format( '0jp5X', offset ) ); } if ( !isOrder( order ) ) { - throw new TypeError( format( 'invalid argument. Sixth argument must be a supported order. Value: `%s`.', order ) ); + throw new TypeError( format( '0jp5Y', order ) ); } if ( ndims > 0 && !isBufferLengthCompatible( buffer.length, shape, strides, offset ) && numel( shape ) > 0 ) { // eslint-disable-line max-len - throw new Error( 'invalid arguments. Input buffer is incompatible with the specified meta data. Ensure that the offset is valid with regard to the strides array and that the buffer has enough elements to satisfy the desired array shape.' ); + throw new Error( format('0jpCz') ); } opts = {}; opts.mode = INDEX_MODE; diff --git a/lib/set.js b/lib/set.js index e15e187..32d9532 100644 --- a/lib/set.js +++ b/lib/set.js @@ -24,7 +24,7 @@ var isInteger = require( '@stdlib/assert-is-integer' ).isPrimitive; var getIndex = require( '@stdlib/ndarray-base-ind' ); -var format = require( '@stdlib/string-format' ); +var format = require( '@stdlib/error-tools-fmtprodmsg' ); // MAIN // @@ -52,16 +52,16 @@ function set() { var i; if ( this._flags.READONLY ) { - throw new Error( 'invalid invocation. Cannot write to a read-only array.' ); + throw new Error( format('0jp0e') ); } if ( arguments.length !== this._ndims+1 ) { - throw new RangeError( format( 'invalid arguments. Number of indices must match the number of dimensions. ndims: `%u`. nargs: `%u`.', this._ndims, arguments.length ) ); + throw new RangeError( format( '0jp5M', this._ndims, arguments.length ) ); } idx = this._offset; M = this._submode.length; for ( i = 0; i < arguments.length-1; i++ ) { if ( !isInteger( arguments[ i ] ) ) { - throw new TypeError( format( 'invalid argument. Indices must be integer valued. Argument: `%i`. Value: `%s`.', i, arguments[ i ] ) ); + throw new TypeError( format( '0jpDu', i, arguments[ i ] ) ); } ind = getIndex( arguments[ i ], this._shape[ i ]-1, this._submode[ i%M ] ); // eslint-disable-line max-len idx += this._strides[ i ] * ind; diff --git a/lib/validate.js b/lib/validate.js index 5927ec4..c3d96da 100644 --- a/lib/validate.js +++ b/lib/validate.js @@ -25,7 +25,7 @@ var hasOwnProp = require( '@stdlib/assert-has-own-property' ); var isArrayLikeObject = require( '@stdlib/assert-is-array-like-object' ); var isIndexMode = require( '@stdlib/ndarray-base-assert-is-index-mode' ); var isBoolean = require( '@stdlib/assert-is-boolean' ).isPrimitive; -var format = require( '@stdlib/string-format' ); +var format = require( '@stdlib/error-tools-fmtprodmsg' ); // MAIN // @@ -55,25 +55,25 @@ var format = require( '@stdlib/string-format' ); function validate( opts, options ) { var i; if ( !isObject( options ) ) { - return new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', options ) ); + return new TypeError( format( '0jp2V', options ) ); } if ( hasOwnProp( options, 'mode' ) ) { opts.mode = options.mode; if ( !isIndexMode( opts.mode ) ) { - return new TypeError( format( 'invalid option. `%s` option must be a recognized mode. Option: `%s`.', 'mode', opts.mode ) ); + return new TypeError( format( '0jp5a', 'mode', opts.mode ) ); } } if ( hasOwnProp( options, 'submode' ) ) { opts.submode = options.submode; if ( !isArrayLikeObject( opts.submode ) ) { - return new TypeError( format( 'invalid option. `%s` option must be an array containing recognized modes. Option: `%s`.', 'submode', opts.submode ) ); + return new TypeError( format( '0jp5b', 'submode', opts.submode ) ); } if ( opts.submode.length === 0 ) { - return new TypeError( format( 'invalid option. `%s` option must be an array containing recognized modes. Option: `%s`.', 'submode', opts.submode.join( ',' ) ) ); + return new TypeError( format( '0jp5b', 'submode', opts.submode.join( ',' ) ) ); } for ( i = 0; i < opts.submode.length; i++ ) { if ( !isIndexMode( opts.submode[ i ] ) ) { - return new TypeError( format( 'invalid option. Each submode must be a recognized mode. Option: `%s`.', opts.submode[ i ] ) ); + return new TypeError( format( '0jp5c', opts.submode[ i ] ) ); } } opts.submode = opts.submode.slice(); @@ -81,7 +81,7 @@ function validate( opts, options ) { if ( hasOwnProp( options, 'readonly' ) ) { opts.readonly = options.readonly; if ( !isBoolean( opts.readonly ) ) { - return new TypeError( format( 'invalid option. `%s` option must be a boolean. Option: `%s`.', 'readonly', opts.readonly ) ); + return new TypeError( format( '0jp2o', 'readonly', opts.readonly ) ); } } return null; diff --git a/package.json b/package.json index 4407706..6f4ec1d 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ "@stdlib/ndarray-dtypes": "^0.3.0", "@stdlib/ndarray-index-modes": "^0.2.2", "@stdlib/ndarray-orders": "^0.2.2", - "@stdlib/string-format": "^0.2.2", + "@stdlib/error-tools-fmtprodmsg": "^0.2.2", "@stdlib/types": "^0.4.3", "@stdlib/utils-define-nonenumerable-read-only-property": "^0.2.2", "@stdlib/utils-inherit": "^0.2.2",