diff --git a/lib/node_modules/@stdlib/array/from-scalar/benchmark/benchmark.js b/lib/node_modules/@stdlib/array/from-scalar/benchmark/benchmark.js
index 6bd318db3747..dee7380f8e1c 100644
--- a/lib/node_modules/@stdlib/array/from-scalar/benchmark/benchmark.js
+++ b/lib/node_modules/@stdlib/array/from-scalar/benchmark/benchmark.js
@@ -248,6 +248,32 @@ bench( format( '%s:dtype=float32', pkg ), function benchmark( b ) {
b.end();
});
+bench( format( '%s:dtype=float16', pkg ), function benchmark( b ) {
+ var values;
+ var v;
+ var i;
+
+ values = [
+ 1,
+ 2,
+ 3
+ ];
+
+ b.tic();
+ for ( i = 0; i < b.iterations; i++ ) {
+ v = scalar2array( values[ i%values.length ], 'float16' );
+ if ( v.length !== 1 ) {
+ b.fail( 'should return a single-element array' );
+ }
+ }
+ b.toc();
+ if ( !isCollection ) {
+ b.fail( 'should return an array' );
+ }
+ b.pass( 'benchmark finished' );
+ b.end();
+});
+
bench( format( '%s:dtype=int32', pkg ), function benchmark( b ) {
var values;
var v;
diff --git a/lib/node_modules/@stdlib/array/from-scalar/docs/types/index.d.ts b/lib/node_modules/@stdlib/array/from-scalar/docs/types/index.d.ts
index 31f2841bf06a..f5a8a5c22e91 100644
--- a/lib/node_modules/@stdlib/array/from-scalar/docs/types/index.d.ts
+++ b/lib/node_modules/@stdlib/array/from-scalar/docs/types/index.d.ts
@@ -21,7 +21,7 @@
///
import { ComplexLike, Complex64, Complex128 } from '@stdlib/types/complex';
-import { DataType, Complex128Array, Complex64Array, BooleanArray } from '@stdlib/types/array';
+import { DataType, Float16Array, Complex128Array, Complex64Array, BooleanArray } from '@stdlib/types/array';
/**
* Returns a single-element array containing a provided scalar value.
@@ -49,6 +49,19 @@ declare function scalar2array( value: number, dtype: 'float64' ): Float64Array;
*/
declare function scalar2array( value: number, dtype: 'float32' ): Float32Array;
+/**
+* Returns a single-element array containing a provided scalar value.
+*
+* @param value - scalar value
+* @param dtype - output array data type
+* @returns output array
+*
+* @example
+* var x = scalar2array( 1.0, 'float16' );
+* // returns [ 1.0 ]
+*/
+declare function scalar2array( value: number, dtype: 'float16' ): Float16Array;
+
/**
* Returns a single-element array containing a provided scalar value.
*
diff --git a/lib/node_modules/@stdlib/array/from-scalar/docs/types/test.ts b/lib/node_modules/@stdlib/array/from-scalar/docs/types/test.ts
index 700493ab68c9..fc9a39faa661 100644
--- a/lib/node_modules/@stdlib/array/from-scalar/docs/types/test.ts
+++ b/lib/node_modules/@stdlib/array/from-scalar/docs/types/test.ts
@@ -34,6 +34,7 @@ import array2scalar = require( './index' );
array2scalar( 1.0, 'float64' ); // $ExpectType Float64Array
array2scalar( 1.0, 'float32' ); // $ExpectType Float32Array
+ array2scalar( 1.0, 'float16' ); // $ExpectType Float16ArrayFallback
array2scalar( 1.0, 'complex128' ); // $ExpectType Complex128Array
array2scalar( 1.0, 'complex64' ); // $ExpectType Complex64Array
array2scalar( true, 'bool' ); // $ExpectType BooleanArray
diff --git a/lib/node_modules/@stdlib/array/from-scalar/test/test.js b/lib/node_modules/@stdlib/array/from-scalar/test/test.js
index a8f8d9af84db..e8d6ad9830d9 100644
--- a/lib/node_modules/@stdlib/array/from-scalar/test/test.js
+++ b/lib/node_modules/@stdlib/array/from-scalar/test/test.js
@@ -28,12 +28,14 @@ var Complex64Array = require( '@stdlib/array/complex64' );
var BooleanArray = require( '@stdlib/array/bool' );
var Float64Array = require( '@stdlib/array/float64' );
var Float32Array = require( '@stdlib/array/float32' );
+var Float16Array = require( '@stdlib/array/float16' );
var Int32Array = require( '@stdlib/array/int32' );
var isEqualBooleanArray = require( '@stdlib/assert/is-booleanarray' );
var isSameComplex128Array = require( '@stdlib/assert/is-same-complex128array' );
var isSameComplex64Array = require( '@stdlib/assert/is-same-complex64array' );
var isSameFloat64Array = require( '@stdlib/assert/is-same-float64array' );
var isSameFloat32Array = require( '@stdlib/assert/is-same-float32array' );
+var isSameFloat16Array = require( '@stdlib/assert/is-same-float16array' );
var isSameArray = require( '@stdlib/assert/is-same-array' );
var isInt32Array = require( '@stdlib/assert/is-int32array' );
var array2scalar = require( './../lib' );
@@ -162,6 +164,17 @@ tape( 'the function returns a single element containing a provided scalar value
t.end();
});
+tape( 'the function returns a single element containing a provided scalar value (dtype=float16)', function test( t ) {
+ var expected;
+ var actual;
+
+ actual = array2scalar( 3.0, 'float16' );
+ expected = new Float16Array( [ 3.0 ] );
+
+ t.strictEqual( isSameFloat16Array( actual, expected ), true, 'returns expected value' );
+ t.end();
+});
+
tape( 'the function returns a single element containing a provided scalar value (dtype=int32)', function test( t ) {
var expected;
var actual;