Как я могу определить, из какого пакета был вызван мой конструктор? - PullRequest
2 голосов
/ 24 марта 2010

Я получил пакет с именем 1.pm, в котором конструктор вызывает подпрограмму, которая находится в том же пакете.

Теперь, если некоторые другие классы говорят, что 2.pm вызывает конструктор, определенный в 1.pm, как я могу определить, вызывается ли подпрограмма из 2.pm?

1 Ответ

5 голосов
/ 24 марта 2010

Используйте встроенный caller:

$package = caller;

Если вы хотите больше информации, вы можете использовать:

($package, $filename, $line) = caller;

См. perldoc -f caller .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...