XP is just a number | |
PerlMonks |
Rewriting sub code on import to add loggingby gryphon (Abbot) |
on May 13, 2008 at 23:00 UTC ( [id://686397]=perlquestion: print w/replies, xml ) | Need Help?? |
gryphon has asked for the wisdom of the Perl Monks concerning the following question: Greetings all,
I've got an application with a handful of modules in an inheritance tree, with a single super-class above it all from which the other modules eventually inherit, directly or indirectly. What I'd like to do is add in every sub a call to a logging method without having lots of duplicated code. So I thought what might work is to use the super-class's import() to find all the subroutines within the package and rewrite them, adding the call. I've failed miserably. Ultimately, here's what I'd like to have happen:
...gets rewritten to...
So far, this is what I've come up with (but I can't get it to work). This is import() from the super-class:
So part of the problem (apart from my inability to get this to work at all) is that the warn statements are outside the $code->() call. Is there a way I can append them inside the subroutine itself? gryphon
Back to
Seekers of Perl Wisdom
|
|