callers-path

caller's path with knobs

Usage no npm install needed!

<script type="module">
  import callersPath from 'https://cdn.skypack.dev/callers-path';
</script>

README

callers-path

build NPM version

V8 stacktrace API based caller's path

install

npm install --save callers-path

usage

example/moduleB.js

var callersPath = require('callers-path');
module.exports = function(){
  console.log(callersPath());
};

example/moduleA.js

var moduleB = require('./moduleB');
    moduleB();
// => example/moduleA.js

documentation

require('callers-path')([frames, origin])

  • frames if specified should be an integer bigger than 0 or Infinity.
  • origin if specified should be a function.
  • if no arguments, the default number of frames is 2 so the origin is the module itself. The stack is sliced by one.

why

You would like to set how many frames are recorded (Error.stackTraceLimit) and from which function the stack should be traced back (Error.captureStackTrace).

By default two frames are recorded, though you can even lower it to one providing a function from which start.

inspirated by

It serves for the same use cases implemented on this cool modules

test

npm test

license

LICENSE