callee
v1.1.1
Published
retrieve calling function/method information
Downloads
809
Maintainers
Readme
callee
retrieve calling function/method information (tiny wrapper for callsite)
api
callee()
returns theCallSite
Object of the calling function. alias forcallee(1)
callee(2)
returns theCallSite
Object of the calling function of the calling function.callee('MyClass')
returns theCallSite
Object of the calling function, method or type with the name 'MyClass'callee('MyClass', true)
same as the above, but caches the callsite index (WARNING: use this with caution)callee.invalidate()
invalidates the cached callsite index
usage
const callee = require('callee')
function a() {
console.log('a', callee().getFunctionName())
b()
}
function b() {
console.log('b', callee().getFunctionName())
c()
}
let c = () => {
console.log('c', callee(2).getFunctionName())
d()
}
let d = () => {
console.log('d', callee().getFunctionName())
}
a()
it prints out:
a null
b a
c a
d c
CallSite methods
see: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/callsite/index.d.ts
getThis(): any;
getTypeName(): string;
getFunctionName(): string;
getMethodName(): string;
getFileName(): string;
getLineNumber(): number;
getColumnNumber(): number;
getFunction(): Function;
getEvalOrigin(): string;
isNative(): boolean;
isToplevel(): boolean;
isEval(): boolean;
isConstructor(): boolean;
getRelativeFileName(): string;
NOTE: getRelativeFileName()
is an added function
dependencies
single dependency: callsite
license
MIT
author
Andi Neck