tree: 0a2c0ee3ee0bbe7d446f3f211547fdd8ce4932d0 [path history] [tgz]
  1. .npmignore
  2. History.md
  3. index.js
  4. Makefile
  5. package.json
  6. Readme.md
node_modules/callsite/Readme.md

callstack

Access to v8's “raw” CallSites.

Installation

$ npm install callsite

Example

var stack = require('callsite');

foo();

function foo() {
  bar();
}

function bar() {
  baz();
}

function baz() {
  console.log();
  stack().forEach(function(site){
    console.log('  \033[36m%s\033[90m in %s:%d\033[0m'
      , site.getFunctionName() || 'anonymous'
      , site.getFileName()
      , site.getLineNumber());
  });
  console.log();
}

Why?

Because you can do weird, stupid, clever, wacky things such as:

License

MIT