overloading

1.0.4 • Public • Published

overloading

Define complex overloads for functions! Errors are thrown if no matching overload is found.

Example

var overloading = require('overloading');
var fooOverloads = overloading([
  [Function],
  [String, String]
]); 
 
function foo(one, two){
  switch(fooOverloads.find(arguments)){
    case 0:one();break;
    case 1:console.log(one + ' ' + two);break;
  }
}
 
foo('hello', 'world!');
//prints "hello world!"
foo(foo.bind(null, 'say', 'what?'));
//prints "say what?"

Package Sidebar

Install

npm i overloading

Weekly Downloads

1

Version

1.0.4

License

MIT

Last publish

Collaborators

  • jsdevel