Simple argument parser.
Usage:
require("@plotdb/args")
result = args({
meta: {
file: {alias: "f", type: "string", desc: "filename"},
count: {alias: "c", type: "number", desc: "loop count"},
verbose: {alias: "v", type: "boolean", desc: "verbose for debugging"},
},
onerror: function(e) { process.exit(); }
});
opt = result.options;
console.log(
opt.file, opt.f,
opt.count, opt.count,
opt.verbose, opt.v
);
You can pass meta directly to args for simplicity:
args({
file: {alias: "f", type: "string", desc: "filename"},
count: {alias: "c", type: "number", desc: "loop count"},
verbose: {alias: "v", type: "boolean", desc: "verbose for debugging"},
})
@plotdb/args recognize meta property in the given object to determine if it's a simplified parameter. When meta is given, you can specify more options:
args({
meta: { file: {...}, count: {...}, ...},
argv: ...
onerror: ...
})
where:
argv: an alternative array of arguments to parse. defaultprocess.argvwhen omitted.onerror: callback when parsing failed. silent exited (process.exit()) when omitted.
MIT