sargs2multislice
Create a
MultiSlice
object from a comma-separated list of string-serializedMultiSlice
constructor arguments.
Usage
var sargs2multislice = require( '@stdlib/slice/base/sargs2multislice' );
sargs2multislice( str )
Creates a MultiSlice
object from a comma-separated list of string-serialized MultiSlice
constructor arguments.
var s = sargs2multislice( '0,Slice(2,10,1),1' );
// returns <MultiSlice>
var d = s.data;
// returns [ 0, <Slice>, 1 ]
The function returns null
if provided an invalid string.
var s = sargs2multislice( 'foo,bar' );
// returns null
Notes
This function is useful from wanting to create a
MultiSlice
object from an array of constructor arguments which has been serialized to a string (e.g., when working withProxy
objects supporting slicing].var Slice = require( '@stdlib/slice/ctor' ); var args = [ 0, new Slice( 2, 10, 1 ), 1 ]; // ... var sargs = args.toString(); // returns '0,Slice(2,10,1),1' // ... var s = sargs2multislice( sargs ); // returns <MultiSlice> var d = s.data; // returns [ 0, <Slice>, 1 ]
Examples
var sargs2multislice = require( '@stdlib/slice/base/sargs2multislice' );
var s = sargs2multislice( 'null,null,null' );
var d = s.data;
// returns [ null, null, null ]
s = sargs2multislice( '10,Slice(2,10,1),null' );
d = s.data;
// returns [ 10, <Slice>, null ]
s = sargs2multislice( '2,Slice(2,10,1),-5' );
d = s.data;
// returns [ 2, <Slice>, -5 ]
s = sargs2multislice( 'foo,bar' );
// returns null