Socket
Socket
Sign inDemoInstall

callsites

Package Overview
Dependencies
0
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    callsites

Get callsites from the V8 stack trace API


Version published
Weekly downloads
43M
increased by0.54%
Maintainers
1
Install size
3.57 kB
Created
Weekly downloads
 

Package description

What is callsites?

The callsites npm package provides a way to get call sites of the V8 stack trace API in Node.js. It allows developers to inspect the call stack and retrieve information about the function calls that led to a certain point in the code.

What are callsites's main functionalities?

Getting call sites

This feature allows you to retrieve an array of call sites (stack frames) at the point where callsites() is invoked. Each call site is an object with methods that return information about that call site, such as the file name, line number, and column number.

const callsites = require('callsites');

function foo() {
  const sites = callsites();
  console.log(sites[0].getFileName()); // => '/path/to/file.js'
}

foo();

Inspecting call stack

This feature is used to inspect the call stack and get names of the calling functions. It can be useful for debugging or for understanding the flow of function calls leading up to a certain point.

const callsites = require('callsites');

function foo() {
  bar();
}

function bar() {
  const sites = callsites();
  console.log(sites.map(site => site.getFunctionName() || 'anonymous'));
}

foo();

Other packages similar to callsites

Readme

Source

callsites Build Status

Get callsites from the V8 stack trace API

Install

$ npm install --save callsites

Usage

var callsites = require('callsites');

function unicorn() {
	console.log(callsites()[0].getFileName());
	//=> /Users/sindresorhus/dev/callsites/test.js
}

unicorn();

API

Returns an array of callsite objects with the following methods:

  • getThis: returns the value of this
  • getTypeName: returns the type of this as a string. This is the name of the function stored in the constructor field of this, if available, otherwise the object's [[Class]] internal property.
  • getFunction: returns the current function
  • getFunctionName: returns the name of the current function, typically its name property. If a name property is not available an attempt will be made to try to infer a name from the function's context.
  • getMethodName: returns the name of the property of this or one of its prototypes that holds the current function
  • getFileName: if this function was defined in a script returns the name of the script
  • getLineNumber: if this function was defined in a script returns the current line number
  • getColumnNumber: if this function was defined in a script returns the current column number
  • getEvalOrigin: if this function was created using a call to eval returns a CallSite object representing the location where eval was called
  • isToplevel: is this a toplevel invocation, that is, is this the global object?
  • isEval: does this call take place in code defined by a call to eval?
  • isNative: is this call in native V8 code?
  • isConstructor: is this a constructor call?

License

MIT © Sindre Sorhus

Keywords

FAQs

Last updated on 19 Apr 2014

Did you know?

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc