index.js 284 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
'use strict';
const callsites = require('callsites');

module.exports = () => {
	const c = callsites();
	let caller;

	for (let i = 0; i < c.length; i++) {
		const hasReceiver = c[i].getTypeName() !== null;

		if (hasReceiver) {
			caller = i;
			break;
		}
	}

	return c[caller];
};