New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

asunder

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

asunder

A small library useful for splitting apart callbacks by their arguments.

  • 0.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2
Maintainers
1
Weekly downloads
 
Created
Source

asunder

A small library useful for splitting apart callbacks by their arguments.

Supports node.js require, AMD define, or no module loader at all (in the browser).

Install

npm install asunder

Example

var a = require('asunder');
var fs = require('fs');

fs.readFile('./node_modules/asunder.js', a.split(onError, onData));

function onError(err) {
  // oh noes
}

function onData(data) {
  // oh yiss
}

// This will print 0 1 2 3 4 to the console (with newlines between).
[1,2,3,4,5].forEach(a.sarg(printIndex));

function printIndex(index) {
  console.log(index);
}

Methods

asunder.args(fn, start, [end], [context])

Returns a function that when called, will execute fn with arguments starting at the zero-based index of start and optionally ending at the argument index before end. Think of it like calling Array.prototype.slice on a set of arguments to pass along to fn, because really, that's all this is doing. Optionally define a context in which to call fn.

asunder.withArgs(start, [end])

A helper method to generate aliased asunder.args functions. For example, asunder.farg, asunder.sarg and asunder.targ are just asunder.withArgs(0), asunder.withArgs(1), and asunder.withArgs(2) respectively.

Example:

/* aliases for first, second, and third arguments */
asunder.farg = asunder.withArgs(0);
asunder.sarg = asunder.withArgs(1);
asunder.targ = asunder.withArgs(2);

asunder.farg(fn, [context])

Returns a function that when called, will exectute fn with the first argument passed in, ignoring all other arguments. Optionally, fn can be called with a context.

asunder.sarg(fn, [context])

The same as asunder.farg but uses the second argument passed in.

asunder.targ(fn, [context])

The same as asunder.farg but uses the third argument passed in.

asunder.split(fn1, fn2, ..., fnn)

Returns a function that splits up the passed in arguments and calls them with a given set of functions. If fewer functions are provided than arguments passed in, the last function will be called with all remaining arguments.

Example:

var a = require('asunder');

function multi(callback) {
  callback('a','b','c');
}

function log(n) {
  return function() {
    var args = Array.prototype.slice.call(arguments);
    console.log('args', n, ':', args.join(','));
  };
}

multi(a.split(log(1), log(2)));

// will print:
// a
// b,c

License

MIT

Keywords

FAQs

Package last updated on 26 Mar 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc