@stdlib/ndarray-vector-ctor 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +177 -0
- package/NOTICE +1 -0
- package/README.md +400 -0
- package/SECURITY.md +5 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +7 -0
- package/docs/types/index.d.ts +927 -0
- package/lib/factory.js +261 -0
- package/lib/index.js +147 -0
- package/lib/main.js +610 -0
- package/lib/validate.js +82 -0
- package/package.json +93 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../lib/validate.js", "../lib/main.js", "../lib/factory.js", "../lib/index.js"],
|
|
4
|
+
"sourcesContent": ["/**\n* @license Apache-2.0\n*\n* Copyright (c) 2025 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isObject = require( '@stdlib/assert-is-plain-object' );\nvar hasOwnProp = require( '@stdlib/assert-has-own-property' );\nvar isBoolean = require( '@stdlib/assert-is-boolean' ).isPrimitive;\nvar isIndexMode = require( '@stdlib/ndarray-base-assert-is-index-mode' );\nvar isOrder = require( '@stdlib/ndarray-base-assert-is-order' );\nvar format = require( '@stdlib/string-format' );\n\n\n// MAIN //\n\n/**\n* Validates function options.\n*\n* @private\n* @param {Object} opts - destination object\n* @param {Options} options - function options\n* @param {boolean} [options.readonly] - boolean indicating whether to return a read-only vector\n* @param {string} [options.mode] - specifies how to handle indices which exceed vector dimensions\n* @param {string} [options.order] - memory layout (either row-major or column-major)\n* @returns {(Error|null)} null or an error object\n*\n* @example\n* var opts = {};\n* var options = {\n* 'readonly': true\n* };\n* var err = validate( opts, options );\n* if ( err ) {\n* throw err;\n* }\n*/\nfunction validate( opts, options ) {\n\tif ( !isObject( options ) ) {\n\t\treturn new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', options ) );\n\t}\n\tif ( hasOwnProp( options, 'readonly' ) ) {\n\t\topts.readonly = options.readonly;\n\t\tif ( !isBoolean( opts.readonly ) ) {\n\t\t\treturn new TypeError( format( 'invalid option. `%s` option must be a boolean. Option: `%s`.', 'readonly', opts.readonly ) );\n\t\t}\n\t}\n\tif ( hasOwnProp( options, 'mode' ) ) {\n\t\topts.mode = options.mode;\n\t\tif ( !isIndexMode( opts.mode ) ) {\n\t\t\treturn new TypeError( format( 'invalid option. `%s` option must be a valid index mode. Option: `%s`.', 'mode', opts.mode ) );\n\t\t}\n\t}\n\tif ( hasOwnProp( options, 'order' ) ) {\n\t\topts.order = options.order;\n\t\tif ( !isOrder( opts.order ) ) {\n\t\t\treturn new TypeError( format( 'invalid option. `%s` option must be a memory layout. Option: `%s`.', 'order', opts.order ) );\n\t\t}\n\t}\n\treturn null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = validate;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2025 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable max-len */\n\n'use strict';\n\n// MODULES //\n\nvar isNonNegativeInteger = require( '@stdlib/assert-is-nonnegative-integer' ).isPrimitive;\nvar isIterableLike = require( '@stdlib/assert-is-iterable-like' );\nvar isCollection = require( '@stdlib/assert-is-collection' );\nvar isArrayBuffer = require( '@stdlib/assert-is-arraybuffer' );\nvar isPlainObject = require( '@stdlib/assert-is-plain-object' );\nvar isBuffer = require( '@stdlib/assert-is-buffer' );\nvar isDataType = require( '@stdlib/ndarray-base-assert-is-data-type' );\nvar hasOwnProp = require( '@stdlib/assert-has-own-property' );\nvar buffer = require( '@stdlib/ndarray-base-buffer' );\nvar typedarray = require( '@stdlib/array-typed' );\nvar copy = require( '@stdlib/array-base-copy' );\nvar ndarray = require( '@stdlib/ndarray-ctor' );\nvar defaults = require( '@stdlib/ndarray-defaults' );\nvar strides2offset = require( '@stdlib/ndarray-base-strides2offset' );\nvar arraybuffer2buffer = require( '@stdlib/buffer-from-arraybuffer' );\nvar array2buffer = require( '@stdlib/buffer-from-array' );\nvar copyBuffer = require( '@stdlib/buffer-from-buffer' );\nvar iterator2array = require( '@stdlib/array-from-iterator' );\nvar bytesPerElement = require( '@stdlib/ndarray-base-bytes-per-element' );\nvar ITERATOR_SYMBOL = require( '@stdlib/symbol-iterator' );\nvar format = require( '@stdlib/string-format' );\n\n\n// VARIABLES //\n\nvar DEFAULT_DTYPE = defaults.get( 'dtypes.default' );\nvar DEFAULT_ORDER = defaults.get( 'order' );\n\n\n// FUNCTIONS //\n\n/**\n* Tests whether a data type is a \"generic\" data type.\n*\n* @private\n* @param {string} dtype - data type\n* @returns {boolean} result\n*/\nfunction isGenericDataType( dtype ) {\n\treturn ( dtype === 'generic' );\n}\n\n/**\n* Tests whether a data type is a binary data type.\n*\n* @private\n* @param {string} dtype - data type\n* @returns {boolean} result\n*/\nfunction isBinaryDataType( dtype ) {\n\treturn ( dtype === 'binary' );\n}\n\n/**\n* Resolves the order of the output vector.\n*\n* @private\n* @param {*} options - options argument\n* @returns {string} order\n*/\nfunction resolveOrder( options ) {\n\tif ( hasOwnProp( options, 'order' ) ) {\n\t\treturn options.order;\n\t}\n\treturn DEFAULT_ORDER;\n}\n\n/**\n* Creates a one-dimensional ndarray from an ArrayBuffer.\n*\n* @private\n* @param {string} dtype - data type\n* @param {ArrayBuffer} buffer - ArrayBuffer\n* @param {NonNegativeInteger} length - number of indexed elements\n* @param {integer} stride - stride length (in units of elements)\n* @param {NonNegativeInteger} byteOffset - byte offset of the first indexed element\n* @param {string} order - memory layout (either row-major or column-major)\n* @param {Options} [options] - function options\n* @param {boolean} [options.readonly=false] - boolean indicating whether to return a read-only ndarray\n* @param {string} [options.mode='throw'] - specifies how to handle indices which exceed ndarray dimensions\n* @throws {TypeError} data type must be compatible with the provided ArrayBuffer\n* @returns {ndarray} one-dimensional ndarray\n*\n* @example\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var v = arraybuffer2vector( 'float64', buf, 4, 1, 0, 'row-major' );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 4\n*\n* @example\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var v = arraybuffer2vector( 'float32', buf, 8, 1, 0, 'row-major' );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 8\n*\n* @example\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var v = arraybuffer2vector( 'float64', buf, 4, -1, 32, 'row-major' );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 4\n*\n* @example\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var v = arraybuffer2vector( 'float64', buf, 2, -1, 24, 'row-major' );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 2\n*/\nfunction arraybuffer2vector( dtype, buffer, length, stride, byteOffset, order, options ) { // TODO: consider moving to `@stdlib/ndarray/from-arraybuffer` and generalize to n-dimensions such that `length` becomes `shape` and `stride` becomes `strides`\n\tvar buf;\n\tvar sh;\n\tvar st;\n\tvar N;\n\tvar o;\n\n\tif ( isGenericDataType( dtype ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. ArrayBuffer is incompatible with the specified data type. Value: `%s`.', dtype ) );\n\t}\n\to = byteOffset;\n\n\t// Compute the number of underlying elements across which the vector view will span:\n\tN = length * stride;\n\n\t// Adjust the byte offset to point to the element marking the beginning of the view:\n\tif ( stride < 0 ) { // TODO: the following is effectively unreachable code, as provided strides are never anything other than unity; however, we keep this around in the event that we want to extract this function to a separate package and would like to maintain generality\n\t\tN *= -1;\n\t\to -= N * bytesPerElement( dtype );\n\t}\n\t// Create the underlying ndarray buffer:\n\tif ( isBinaryDataType( dtype ) ) {\n\t\tbuf = arraybuffer2buffer( buffer, o, N );\n\t} else {\n\t\tbuf = typedarray( buffer, o, N, dtype );\n\t}\n\t// Resolve ndarray meta data:\n\tsh = [ length ];\n\tst = [ stride ];\n\to = strides2offset( sh, st );\n\n\t// Return a new ndarray instance:\n\tif ( arguments.length > 6 ) {\n\t\treturn new ndarray( dtype, buf, sh, st, o, order, options );\n\t}\n\treturn new ndarray( dtype, buf, sh, st, o, order );\n}\n\n/**\n* Returns a vector having a specified data type.\n*\n* @private\n* @param {(NonNegativeInteger|Collection|ArrayBuffer|Buffer|Iterable|Options)} arg - length, typed array, array-like object, buffer, iterable, or options object\n* @param {string} dtype - data type\n* @param {(Options|null)} options - function options\n* @param {boolean} [options.readonly=false] - boolean indicating whether to return a read-only ndarray\n* @param {string} [options.mode='throw'] - specifies how to handle indices which exceed ndarray dimensions\n* @returns {(ndarray|null)} one-dimensional ndarray\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var v = vectorWithDType( 10, 'float64', {} );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 10\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var v = vectorWithDType( [ 1, 2, 3, 4 ], 'generic', {} );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 4\n*\n* var dt = getDType( v );\n* // returns 'generic'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var v = vectorWithDType( buf, 'float64', {} );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 4\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var v = vectorWithDType( {}, 'float64', null );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 0\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var array2iterator = require( '@stdlib/array-to-iterator' );\n*\n* var v = vectorWithDType( array2iterator( [ 1, 2, 3, 4 ] ), 'generic', {} );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 4\n*\n* var dt = getDType( v );\n* // returns 'generic'\n*/\nfunction vectorWithDType( arg, dtype, options ) {\n\tvar opts;\n\tvar buf;\n\n\t// Note: in all of the following, we delegate option validation to the ndarray constructor...\n\tif ( options === null ) {\n\t\topts = {};\n\t} else {\n\t\topts = options;\n\t}\n\t// Case: vector( length )\n\tif ( isNonNegativeInteger( arg ) ) {\n\t\tbuf = buffer( dtype, arg );\n\t\treturn new ndarray( dtype, buf, [ buf.length ], [ 1 ], 0, resolveOrder( opts ), opts );\n\t}\n\t// Case: vector( Buffer )\n\tif ( isBuffer( arg ) ) {\n\t\tif ( isGenericDataType( dtype ) ) {\n\t\t\tbuf = copy( arg );\n\t\t} else if ( isBinaryDataType( dtype ) ) {\n\t\t\tbuf = copyBuffer( arg );\n\t\t} else {\n\t\t\tbuf = typedarray( arg, dtype );\n\t\t}\n\t\treturn new ndarray( dtype, buf, [ buf.length ], [ 1 ], 0, resolveOrder( opts ), opts );\n\t}\n\t// Case: vector( collection )\n\tif ( isCollection( arg ) ) {\n\t\tif ( isGenericDataType( dtype ) ) {\n\t\t\tbuf = copy( arg );\n\t\t} else if ( isBinaryDataType( dtype ) ) {\n\t\t\tbuf = array2buffer( arg ); // note: we assume that `arg` is an array of octets\n\t\t} else {\n\t\t\tbuf = typedarray( arg, dtype );\n\t\t}\n\t\treturn new ndarray( dtype, buf, [ buf.length ], [ 1 ], 0, resolveOrder( opts ), opts );\n\t}\n\t// Case: vector( ArrayBuffer )\n\tif ( isArrayBuffer( arg ) ) {\n\t\treturn arraybuffer2vector( dtype, arg, arg.byteLength/bytesPerElement( dtype ), 1, 0, resolveOrder( opts ), opts );\n\t}\n\t// Case: vector( Iterable )\n\tif ( isIterableLike( arg ) ) {\n\t\tbuf = arg[ ITERATOR_SYMBOL ]();\n\t\tbuf = iterator2array( buf );\n\t\tif ( isBinaryDataType( dtype ) ) {\n\t\t\tbuf = array2buffer( buf );\n\t\t} else if ( !isGenericDataType( dtype ) ) {\n\t\t\tbuf = typedarray( buf, dtype );\n\t\t}\n\t\treturn new ndarray( dtype, buf, [ buf.length ], [ 1 ], 0, resolveOrder( opts ), opts );\n\t}\n\t// Case: vector( options )\n\tif ( options === null && isPlainObject( arg ) ) {\n\t\tbuf = buffer( dtype, 0 );\n\t\treturn new ndarray( dtype, buf, [ buf.length ], [ 1 ], 0, resolveOrder( arg ), arg );\n\t}\n\treturn null;\n}\n\n\n// MAIN //\n\n/**\n* Creates a vector (i.e., a one-dimensional ndarray).\n*\n* ## Notes\n*\n* - This API is intended to match the conventions of `@stdlib/array/typed`, which has a similar signature.\n*\n* @param {(NonNegativeInteger|Collection|ArrayBuffer|Iterable)} [arg] - length, typed array, array-like object, buffer, or iterable\n* @param {NonNegativeInteger} [byteOffset=0] - byte offset\n* @param {NonNegativeInteger} [length] - view length\n* @param {string} [dtype='float64'] - data type\n* @param {Options} [options] - function options\n* @param {boolean} [options.readonly=false] - boolean indicating whether to return a read-only vector\n* @param {string} [options.mode='throw'] - specifies how to handle indices which exceed vector dimensions\n* @param {string} [options.order='row-major'] - memory layout (either row-major or column-major)\n* @throws {TypeError} first argument must be either a length, typed array, array-like object, buffer, iterable, data type, or options object\n* @throws {TypeError} must provide valid options\n* @returns {ndarray} one-dimensional ndarray\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var arr = vector();\n* // returns <ndarray>\n*\n* var len = numel( arr );\n* // returns 0\n*\n* var dt = getDType( arr );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var arr = vector( 2 );\n* // returns <ndarray>\n*\n* var len = numel( arr );\n* // returns 2\n*\n* var dt = getDType( arr );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var arr = vector( [ 1.0, 2.0 ] );\n* // returns <ndarray>\n*\n* var len = numel( arr );\n* // returns 2\n*\n* var dt = getDType( arr );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var arr = vector( [ 1.0, 2.0 ], 'float32' );\n* // returns <ndarray>\n*\n* var len = numel( arr );\n* // returns 2\n*\n* var dt = getDType( arr );\n* // returns 'float32'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var arr = vector( buf );\n* // returns <ndarray>\n*\n* var len = numel( arr );\n* // returns 4\n*\n* var dt = getDType( arr );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var arr = vector( buf, 16 );\n* // returns <ndarray>\n*\n* var len = numel( arr );\n* // returns 2\n*\n* var dt = getDType( arr );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n*\n* var buf = new ArrayBuffer( 64 );\n* var arr = vector( buf, 16, 2 );\n* // returns <ndarray>\n*\n* var len = numel( arr );\n* // returns 2\n*\n* var dt = getDType( arr );\n* // returns 'float64'\n*/\nfunction vector() {\n\tvar nargs;\n\tvar arg0;\n\tvar arg1;\n\tvar arg2;\n\tvar arg3;\n\tvar arg4;\n\tvar buf;\n\tvar out;\n\n\tnargs = arguments.length;\n\n\t// Case: vector()\n\tif ( nargs === 0 ) {\n\t\tbuf = buffer( DEFAULT_DTYPE, 0 );\n\t\treturn new ndarray( DEFAULT_DTYPE, buf, [ buf.length ], [ 1 ], 0, DEFAULT_ORDER );\n\t}\n\targ0 = arguments[ 0 ];\n\n\t// Case: vector( arg0 );\n\tif ( nargs === 1 ) {\n\t\tif ( isDataType( arg0 ) ) {\n\t\t\treturn vectorWithDType( 0, arg0, null );\n\t\t}\n\t\tout = vectorWithDType( arg0, DEFAULT_DTYPE, null );\n\t\tif ( out === null ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Must provide a length, ArrayBuffer, typed array, array-like object, iterable, data type, or options object. Value: `%s`.', arg0 ) );\n\t\t}\n\t\treturn out;\n\t}\n\targ1 = arguments[ 1 ];\n\n\t// Case: vector( arg0, arg1 )\n\tif ( nargs === 2 ) {\n\t\t// Case: vector( dtype, options )\n\t\tif ( isDataType( arg0 ) ) {\n\t\t\tif ( arg1 === null ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', arg1 ) );\n\t\t\t}\n\t\t\treturn vectorWithDType( 0, arg0, arg1 );\n\t\t}\n\t\t// Case: vector( arg0, dtype )\n\t\tif ( isDataType( arg1 ) ) {\n\t\t\tout = vectorWithDType( arg0, arg1, null );\n\t\t\tif ( out === null ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. First argument must be a length, ArrayBuffer, typed array, array-like object, or iterable. Value: `%s`.', arg0 ) );\n\t\t\t}\n\t\t\treturn out;\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset )\n\t\tif ( isNonNegativeInteger( arg1 ) ) {\n\t\t\tif ( !isArrayBuffer( arg0 ) ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. First argument must be an ArrayBuffer. Value: `%s`.', arg0 ) );\n\t\t\t}\n\t\t\treturn arraybuffer2vector( DEFAULT_DTYPE, arg0, (arg0.byteLength-arg1)/bytesPerElement( DEFAULT_DTYPE ), 1, arg1, DEFAULT_ORDER );\n\t\t}\n\t\t// Case: vector( arg0, options )\n\t\tif ( arg1 === null ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', arg1 ) );\n\t\t}\n\t\tout = vectorWithDType( arg0, DEFAULT_DTYPE, arg1 );\n\t\tif ( out === null ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. First argument must be a length, ArrayBuffer, typed array, array-like object, or iterable. Value: `%s`.', arg0 ) );\n\t\t}\n\t\treturn out;\n\t}\n\targ2 = arguments[ 2 ];\n\n\t// Case: vector( arg0, arg1, arg2 )\n\tif ( nargs === 3 ) {\n\t\t// Case: vector( ArrayBuffer, byteOffset, dtype )\n\t\tif ( isDataType( arg2 ) ) {\n\t\t\tif ( !isArrayBuffer( arg0 ) ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. First argument must be an ArrayBuffer. Value: `%s`.', arg0 ) );\n\t\t\t}\n\t\t\tif ( !isNonNegativeInteger( arg1 ) ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. Byte offset must be a nonnegative integer. Value: `%s`.', arg1 ) );\n\t\t\t}\n\t\t\treturn arraybuffer2vector( arg2, arg0, (arg0.byteLength-arg1)/bytesPerElement( arg2 ), 1, arg1, DEFAULT_ORDER );\n\t\t}\n\t\t// Case: vector( arg0, dtype, options )\n\t\tif ( isDataType( arg1 ) ) {\n\t\t\tif ( arg2 === null ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', arg2 ) );\n\t\t\t}\n\t\t\tout = vectorWithDType( arg0, arg1, arg2 );\n\t\t\tif ( out === null ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. First argument must be a length, ArrayBuffer, typed array, array-like object, or iterable. Value: `%s`.', arg0 ) );\n\t\t\t}\n\t\t\treturn out;\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset, arg2 )\n\t\tif ( !isArrayBuffer( arg0 ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. First argument must be an ArrayBuffer. Value: `%s`.', arg0 ) );\n\t\t}\n\t\tif ( !isNonNegativeInteger( arg1 ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Byte offset must be a nonnegative integer. Value: `%s`.', arg1 ) );\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset, length )\n\t\tif ( isNonNegativeInteger( arg2 ) ) {\n\t\t\treturn arraybuffer2vector( DEFAULT_DTYPE, arg0, arg2, 1, arg1, DEFAULT_ORDER );\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset, options )\n\t\tif ( arg2 === null ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', arg2 ) );\n\t\t}\n\t\treturn arraybuffer2vector( DEFAULT_DTYPE, arg0, (arg0.byteLength-arg1)/bytesPerElement( DEFAULT_DTYPE ), 1, arg1, resolveOrder( arg2 ), arg2 );\n\t}\n\targ3 = arguments[ 3 ];\n\n\t// Case: vector( ArrayBuffer, byteOffset, arg2, arg3 )\n\tif ( nargs === 4 ) {\n\t\tif ( !isArrayBuffer( arg0 ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. First argument must be an ArrayBuffer. Value: `%s`.', arg0 ) );\n\t\t}\n\t\tif ( !isNonNegativeInteger( arg1 ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Byte offset must be a nonnegative integer. Value: `%s`.', arg1 ) );\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset, length, dtype )\n\t\tif ( isNonNegativeInteger( arg2 ) ) {\n\t\t\tif ( isDataType( arg3 ) ) {\n\t\t\t\treturn arraybuffer2vector( arg3, arg0, arg2, 1, arg1, DEFAULT_ORDER );\n\t\t\t}\n\t\t\t// Case: vector( ArrayBuffer, byteOffset, length, options )\n\t\t\tif ( !isPlainObject( arg3 ) ) {\n\t\t\t\tthrow new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', arg3 ) );\n\t\t\t}\n\t\t\treturn arraybuffer2vector( DEFAULT_DTYPE, arg0, arg2, 1, arg1, resolveOrder( arg3 ), arg3 );\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset, dtype, options )\n\t\tif ( !isDataType( arg2 ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Third argument must be a recognized/supported data type. Value: `%s`.', arg2 ) );\n\t\t}\n\t\tif ( !isPlainObject( arg3 ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', arg3 ) );\n\t\t}\n\t\treturn arraybuffer2vector( arg2, arg0, (arg0.byteLength-arg1)/bytesPerElement( arg2 ), 1, arg1, resolveOrder( arg3 ), arg3 );\n\t}\n\targ4 = arguments[ 4 ];\n\n\t// Case: vector( ArrayBuffer, byteOffset, length, dtype, options )\n\tif ( !isArrayBuffer( arg0 ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. First argument must be an ArrayBuffer. Value: `%s`.', arg0 ) );\n\t}\n\tif ( !isNonNegativeInteger( arg1 ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Byte offset must be a nonnegative integer. Value: `%s`.', arg1 ) );\n\t}\n\tif ( !isNonNegativeInteger( arg2 ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Length must be a nonnegative integer. Value: `%s`.', arg2 ) );\n\t}\n\tif ( !isDataType( arg3 ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Fourth argument must be a recognized/supported data type. Value: `%s`.', arg3 ) );\n\t}\n\tif ( !isPlainObject( arg4 ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', arg4 ) );\n\t}\n\treturn arraybuffer2vector( arg3, arg0, arg2, 1, arg1, resolveOrder( arg4 ), arg4 );\n}\n\n\n// EXPORTS //\n\nmodule.exports = vector;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2025 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable max-len */\n\n'use strict';\n\n// MODULES //\n\nvar isNonNegativeInteger = require( '@stdlib/assert-is-nonnegative-integer' ).isPrimitive;\nvar isIterableLike = require( '@stdlib/assert-is-iterable-like' );\nvar isArrayBuffer = require( '@stdlib/assert-is-arraybuffer' );\nvar isCollection = require( '@stdlib/assert-is-collection' );\nvar isDataType = require( '@stdlib/ndarray-base-assert-is-data-type' );\nvar objectAssign = require( '@stdlib/object-assign' );\nvar format = require( '@stdlib/string-format' );\nvar validate = require( './validate.js' );\nvar main = require( './main.js' );\n\n\n// MAIN //\n\n/**\n* Returns a function for creating a vector (i.e., a one-dimensional ndarray).\n*\n* @param {string} dtype - data type\n* @param {Options} [options] - function options\n* @param {boolean} [options.readonly=false] - boolean indicating whether to return a read-only vector by default\n* @param {string} [options.mode='throw'] - specifies the default behavior when handling indices which exceed vector dimensions\n* @param {string} [options.order='row-major'] - default memory layout (either row-major or column-major)\n* @throws {TypeError} first argument must be a supported data type\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {Function} function for creating a vector\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var Float32Vector = factory( 'float32' );\n*\n* var arr = new Float32Vector( [ 1, 2, 3 ] );\n* // returns <ndarray>\n*\n* var dt = getDType( arr );\n* // returns 'float32'\n*\n* var len = numel( arr );\n* // returns 3\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var Float32Vector = factory( 'float32' );\n*\n* var arr = new Float32Vector( 3 );\n* // returns <ndarray>\n*\n* var dt = getDType( arr );\n* // returns 'float32'\n*\n* var len = numel( arr );\n* // returns 3\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var Float32Vector = factory( 'float32' );\n*\n* var buf = new ArrayBuffer( 12 );\n* var arr = new Float32Vector( buf );\n* // returns <ndarray>\n*\n* var dt = getDType( arr );\n* // returns 'float32'\n*\n* var len = numel( arr );\n* // returns 3\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var Float32Vector = factory( 'float32' );\n*\n* var buf = new ArrayBuffer( 12 );\n* var arr = new Float32Vector( buf, 4 );\n* // returns <ndarray>\n*\n* var dt = getDType( arr );\n* // returns 'float32'\n*\n* var len = numel( arr );\n* // returns 2\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n*\n* var Float32Vector = factory( 'float32' );\n*\n* var buf = new ArrayBuffer( 12 );\n* var arr = new Float32Vector( buf, 4, 1 );\n* // returns <ndarray>\n*\n* var dt = getDType( arr );\n* // returns 'float32'\n*\n* var len = numel( arr );\n* // returns 1\n*/\nfunction factory( dtype, options ) {\n\tvar opts;\n\tvar err;\n\tif ( !isDataType( dtype ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. First argument must be a supported data type. Value: `%s`.', dtype ) );\n\t}\n\topts = {};\n\tif ( arguments.length > 1 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\treturn vector;\n\n\t/**\n\t* Creates a vector (i.e., a one-dimensional ndarray).\n\t*\n\t* @private\n\t* @param {(NonNegativeInteger|Collection|ArrayBuffer|Iterable)} [arg] - length, typed array, array-like object, buffer, or iterable\n\t* @param {NonNegativeInteger} [byteOffset=0] - byte offset\n\t* @param {NonNegativeInteger} [length] - view length\n\t* @param {Options} [options] - function options\n\t* @param {boolean} [options.readonly] - boolean indicating whether to return a read-only vector\n\t* @param {string} [options.mode] - specifies how to handle indices which exceed vector dimensions\n\t* @param {string} [options.order] - memory layout (either row-major or column-major)\n\t* @throws {Error} unexpected error\n\t* @returns {ndarray} one-dimensional ndarray\n\t*/\n\tfunction vector() {\n\t\tvar options;\n\t\tvar nargs;\n\t\tvar arg0;\n\t\tvar arg1;\n\t\tvar err;\n\n\t\toptions = objectAssign( {}, opts );\n\t\tnargs = arguments.length;\n\n\t\t// Case: vector()\n\t\tif ( nargs === 0 ) {\n\t\t\treturn main( dtype, options );\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset, length, options )\n\t\tif ( nargs > 3 ) {\n\t\t\terr = validate( options, arguments[ 3 ] );\n\t\t\tif ( err ) {\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t\treturn main( arguments[ 0 ], arguments[ 1 ], arguments[ 2 ], dtype, options );\n\t\t}\n\t\t// Case: vector( ArrayBuffer, byteOffset, arg2 )\n\t\tif ( nargs === 3 ) {\n\t\t\t// Case: vector( ArrayBuffer, byteOffset, length )\n\t\t\tif ( isNonNegativeInteger( arguments[ 2 ] ) ) {\n\t\t\t\treturn main( arguments[ 0 ], arguments[ 1 ], arguments[ 2 ], dtype, options );\n\t\t\t}\n\t\t\t// Case: vector( ArrayBuffer, byteOffset, options )\n\t\t\terr = validate( options, arguments[ 2 ] );\n\t\t\tif ( err ) {\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t\treturn main( arguments[ 0 ], arguments[ 1 ], dtype, options );\n\t\t}\n\t\t// Case: vector( arg0, arg1 )\n\t\tif ( nargs === 2 ) {\n\t\t\targ0 = arguments[ 0 ];\n\t\t\targ1 = arguments[ 1 ];\n\n\t\t\t// Case: vector( length, options )\n\t\t\tif ( isNonNegativeInteger( arg0 ) ) {\n\t\t\t\terr = validate( options, arg1 );\n\t\t\t\tif ( err ) {\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\t\t\t\treturn main( arg0, dtype, options );\n\t\t\t}\n\t\t\t// Case: vector( ArrayBuffer, arg1 )\n\t\t\tif ( isArrayBuffer( arg0 ) ) {\n\t\t\t\t// Case: vector( ArrayBuffer, byteOffset )\n\t\t\t\tif ( isNonNegativeInteger( arg1 ) ) {\n\t\t\t\t\treturn main( arg0, arg1, dtype, options );\n\t\t\t\t}\n\t\t\t\t// Case: vector( ArrayBuffer, options )\n\t\t\t\terr = validate( options, arg1 );\n\t\t\t\tif ( err ) {\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\t\t\t\treturn main( arg0, dtype, options );\n\t\t\t}\n\t\t\t// Case: vector( collection, options )\n\t\t\tif ( isCollection( arg0 ) ) {\n\t\t\t\terr = validate( options, arg1 );\n\t\t\t\tif ( err ) {\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\t\t\t\treturn main( arg0, dtype, options );\n\t\t\t}\n\t\t\t// Case: vector( iterable, options )\n\t\t\terr = validate( options, arg1 );\n\t\t\tif ( err ) {\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t\treturn main( arg0, dtype, options );\n\t\t}\n\t\t// nargs === 1\n\t\targ0 = arguments[ 0 ];\n\n\t\t// Case: vector( length|ArrayBuffer|Collection|Iterable )\n\t\tif (\n\t\t\tisNonNegativeInteger( arg0 ) ||\n\t\t\tisArrayBuffer( arg0 ) ||\n\t\t\tisCollection( arg0 ) ||\n\t\t\tisIterableLike( arg0 )\n\t\t) {\n\t\t\treturn main( arg0, dtype, options );\n\t\t}\n\t\t// Case: vector( options )\n\t\terr = validate( options, arg0 );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t\treturn main( dtype, options );\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = factory;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2025 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Create a vector (i.e., a one-dimensional ndarray).\n*\n* @module @stdlib/ndarray-vector-ctor\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var vector = require( '@stdlib/ndarray-vector-ctor' );\n*\n* var v = vector();\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 0\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var vector = require( '@stdlib/ndarray-vector-ctor' );\n*\n* var v = vector( 2 );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 2\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var vector = require( '@stdlib/ndarray-vector-ctor' );\n*\n* var v = vector( [ 1.0, 2.0 ] );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 2\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var vector = require( '@stdlib/ndarray-vector-ctor' );\n*\n* var v = vector( [ 1.0, 2.0 ], 'float32' );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 2\n*\n* var dt = getDType( v );\n* // returns 'float32'\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var vector = require( '@stdlib/ndarray-vector-ctor' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var v = vector( buf );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 4\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var vector = require( '@stdlib/ndarray-vector-ctor' );\n*\n* var buf = new ArrayBuffer( 32 );\n* var v = vector( buf, 16 );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 2\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array-buffer' );\n* var getDType = require( '@stdlib/ndarray-dtype' );\n* var numel = require( '@stdlib/ndarray-numel' );\n* var vector = require( '@stdlib/ndarray-vector-ctor' );\n*\n* var buf = new ArrayBuffer( 64 );\n* var v = vector( buf, 16, 2 );\n* // returns <ndarray>\n*\n* var len = numel( v );\n* // returns 2\n*\n* var dt = getDType( v );\n* // returns 'float64'\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils-define-nonenumerable-read-only-property' );\nvar factory = require( './factory.js' );\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'factory', factory );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n\n// exports: { \"factory\": \"main.factory\" }\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["require_validate", "__commonJSMin", "exports", "module", "isObject", "hasOwnProp", "isBoolean", "isIndexMode", "isOrder", "format", "validate", "opts", "options", "require_main", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "isIterableLike", "isCollection", "isArrayBuffer", "isPlainObject", "isBuffer", "isDataType", "hasOwnProp", "buffer", "typedarray", "copy", "ndarray", "defaults", "strides2offset", "arraybuffer2buffer", "array2buffer", "copyBuffer", "iterator2array", "bytesPerElement", "ITERATOR_SYMBOL", "format", "DEFAULT_DTYPE", "DEFAULT_ORDER", "isGenericDataType", "dtype", "isBinaryDataType", "resolveOrder", "options", "arraybuffer2vector", "length", "stride", "byteOffset", "order", "buf", "sh", "st", "N", "o", "vectorWithDType", "arg", "opts", "vector", "nargs", "arg0", "arg1", "arg2", "arg3", "arg4", "out", "require_factory", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "isIterableLike", "isArrayBuffer", "isCollection", "isDataType", "objectAssign", "format", "validate", "main", "factory", "dtype", "options", "opts", "err", "vector", "nargs", "arg0", "arg1", "setReadOnly", "factory", "main"]
|
|
7
|
+
}
|