Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

Re: Mixing OO & non OO code in a module

by hv (Parson)
on Jun 06, 2006 at 12:44 UTC ( #553800=note: print w/replies, xml ) Need Help??

in reply to Mixing OO & non OO code in a module

I'd normally make such things class methods - if I don't, I find I'm always forgetting to type My::Class::function(...) instead of My::Class->function(...), and it becomes a lot more convenient if I have the classname in a variable:

my $class = "My::Class"; my @coords = $class->look_at(something);


Replies are listed 'Best First'.
Re^2: Mixing OO & non OO code in a module
by jdhedden (Deacon) on Jun 06, 2006 at 16:25 UTC
    If your class doesn't get inherited, you can do it both ways using:
    sub function { # Allow calling as a subroutine or class method shift if ($_[0] eq __PACKAGE__); ... }
    If you're doing inheritance, you'd need something more involved, but you get the idea.

    Remember: There's always one more bug.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://553800]
[Corion]: Discipulus: I think Module::Corelist ( or corelist ) can tell you that
[Corion]: Meh - Module::CoreList
[choroba]: Just use List::Util 1.29
[choroba]: Be kind to people using old Perl with newer version of the module
[Corion]: But why not simply specify 'List::Util' => 1.29 in your prerequisites? People might install a more recent version of the module into their Perl
[Corion]: (what choroba said)
[Discipulus]: ah! simpler and cleaner
[Discipulus]: thanks! use List::Util 1.29 qw(pairmap ... just works!
Discipulus is preparing another of his CUFP..

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (12)
As of 2017-05-25 09:23 GMT
Find Nodes?
    Voting Booth?