named-positional-args
API support for arguments as both named and positional.
Depends on named-parameters lib for implementing the very helpful default
, coerce
, and require
features to manage API arguments
data types and values.
Install
npm install --save named-positional-args
Usage
Call your function API either of two ways, example:
; //1. named ; //2. positional
Implementation, example:
var namedPositionalArgs = ; { arguments = namedPositionalArgs; a = arguments0; b = arguments1; c = arguments2; //rest of code...}
ES6 destructuring:
Even better/simpler with { a b c = namedPositionalArgs; //rest of code...}
{ a b c = namedPositionalArgs ; //rest of code...}
Note: This is obviously silly to use for functions which only take a single {}
object param anyways! ;)
Warning: If you compress/mangle your code, this way might break it!! (since the function arg names might no longer align internally as expected). To avoid this limitation, you can instead use a csvArgs
string:
{ // these can get mangled now! a b c = namedPositionalArgs // these are the cannonical arg names ; //rest of code...}
API
.apply(funcName:Function, arguments)
: Starts the argument parsing chain.
-or-
.apply(csvArgs:String, arguments)
: Starts the argument parsing chain.
.default()
: see default
.coerce()
: see coerce
.require()
: see require (alias: .demand()
)
.args()
: Returns an Array
akin to arguments
.
.opts()
: Returns an Object
with arguments
as name: value
pairs.
Test
npm test