sub myPrint () { print "Teste 1\n"; } sub test() { no strict "refs"; no warnings;
my $subName = "::myPrint"; my $backup = \&myPrint; *$subName = sub() { print "Teste 2\n"; }; myPrint; *$subName = $backup; } myPrint; test; myPrint; On 8/3/05, marcos rebelo <[EMAIL PROTECTED]> wrote: > I need to redefine localy one subroutine and have it correctlly after. > Who do I do it? > > sub myPrint () { > print "Teste 1\n"; > } > > sub test { > no strict "refs"; > no warnings; > > my $str = "::myPrint"; > > # my $backup = $main::{myPrint}; > my $backup = *$str; > > *$str = sub() { > print "Teste 2\n"; > }; > > myPrint; > > *$str = $backup; > } > > myPrint; > test; > myPrint; > exit; > > Note: This is not beautyfull but I'm doing some test-cases and I don't > want to change the code to be tested. > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>