Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

keep subpackges, delete root package

by bulk88 (Priest)
on Jun 24, 2012 at 22:38 UTC ( [id://978095]=perlquestion: print w/replies, xml ) Need Help??

bulk88 has asked for the wisdom of the Perl Monks concerning the following question:

I am trying to wipe a package of its local symbols, but not affect any sub packages under that package, to try to reload a module. The @ISA I noticed stays the same with Devel::Peek, so I put in the undef on @ISA. Are there any problems with this code which I dont see?
use strict; use Data::Dumper; use Devel::Peek; BEGIN { package p1::p2; use vars qw|$VERSION @ISA $num2 |; $VERSION = 0.02; @ISA = qw( Exporter Inherit2); $num2 = 2; sub s2 { return 2;} package p1; use vars qw|$VERSION @ISA $num1 |; $VERSION = 0.01; @ISA = qw( Exporter Inherit1 ); sub s1 {return 1;} $num1 = 1; package main; } BEGIN{ no strict 'refs'; #print Dumper(\%{*p1::}); undef(@{'p1::ISA'}); #magical foreach(keys %p1::){ unless(length($_) > 2 && substr($_, -2, 2) eq '::'){ delete ${p1::}{$_}; } } #print Dumper(\%{*p1::}); }

Replies are listed 'Best First'.
Re: keep subpackges, delete root package
by Anonymous Monk on Jun 25, 2012 at 01:19 UTC

    Are there any problems with this code which I dont see?

    Its not clear why you need to do this, so its hard to know if there are problems with the code

      Read my original post for an answer AM.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://978095]
Approved by muba
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (7)
As of 2024-04-25 11:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found