Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^3: perl inheritance

by JavaFan (Canon)
on Mar 23, 2012 at 19:10 UTC ( #961291=note: print w/ replies, xml ) Need Help??


in reply to Re^2: perl inheritance
in thread perl inheritance

Would this be invoked in the constructor of the derived class?
Of course not! This is something you need to be done once, and on class level. So, you'd do it outside of any method. That way, it get executed when you use the module.


Comment on Re^3: perl inheritance
Download Code
Re^4: perl inheritance
by Anonymous Monk on Mar 23, 2012 at 20:21 UTC
    This smells like a good place for an import method.. What do you think? thanks!
      Sounds like a bad idea to me. Why do you think that's a good idea?

      No, I wouldn't put it in an import module. A BEGIN block would be better. If you put it in import, you have no guarantee that the import method will ever actually be called. It's quite easy to load a module without ever calling the import method. Conversely, it's very easy for the import method to get called multiple times.

      I actually do something pretty similar to the technique being discussed in XML::LibXML::Augment.

      perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
        What's the advantage of using a BEGIN block for that? Do you really think there's something to gain putting those methods in place, before the other methods are compiled?
Re^4: perl inheritance
by Anonymous Monk on Mar 23, 2012 at 20:35 UTC

    this smells like it should go in an import method? What do you think ?

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://961291]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (7)
As of 2014-10-26 09:50 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (153 votes), past polls