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];
| };
|
|