evl
v2.0.0
Published
Function fallback when error.
Downloads
23
Maintainers
Readme
EVL
😈 Function fallback when error.
Likes NVL but for Error fallback.
Installation
Via npm:
npm install evl
Via Yarn:
yarn add evl
Usage
const evl = require('evl');
const err = () => {
throw new Error('An error. 😱');
};
const one = () => 1;
const two = () => 2;
const add = (a, b) => a + b;
const multiply = (a, b) => a * b;
/*
* No arguments
*/
const a = evl(one, two)(); // a is 1
const b = evl(err, two)(); // b is 2
/*
* With arguments
*/
// To call add(1, 2) or multiply(3, 4)
const c = evl(add, multiply)([1, 2], [3, 4]); // c is 3 (1 + 2 from add function)
// To call err(1, 2) or multiply(3, 4)
const d = evl(err, multiply)([1, 2], [3, 4]); // d is 12 (3 * 4 from multiply function)
You can also pass non-function.
const evl = require('evl');
const err = () => {
throw new Error('An error. 💩');
};
evl(err, 'I am fallback value.') // -> 'I am fallback value.'
API
evl(mainFunction, fallbackFunction)
Create an invoke function that will return the value from either of given functions.
mainFunction
Type: Function
A main function that you expect it to work.
If you pass non-function value to this parameter,
evl
will return it back from invoke function.
fallbackFunction
Type: Function
A fallback function that will work when main function throw an error.
If you pass non-function value to this parameter,
evl
will return it back from invoke function when main function not work.
invoke(mainFuncArgs, fallbackFuncArgs)
- Invoke Function
Return a value of either of given functions with given arguments.
If both
mainFunction
andfallbackFunction
have error,invoke
will returnnull
.
mainFuncArgs
Type: Array
Default: []
Arguments of evl
's mainFunction
.
fallbackFuncArgs
Type: Array
Default: []
Arguments of evl
's fallbackFunction
.