Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: Re: Re: OOP: Plugin Style Development

by Jenda (Abbot)
on Jul 23, 2002 at 19:21 UTC ( #184541=note: print w/ replies, xml ) Need Help??


in reply to Re: Re: OOP: Plugin Style Development
in thread OOP: Plugin Style Development

I'm not 100% it IS what is he doing. It doesn't hurt to explain it in more detail for others even if he does.

Anyway here's some code that implements the method checking:

# in package ShoppingCart @required_methods = qw(GetNext GetFirst Reset ...); sub initialize { my $self = shift; my $IO = shift; croak "The first parameter to 'new ShoppingCart' must be an IO objec +t!" unless ref $IO; foreach my $method (@required_methods) { croak("The IO object passed to 'new ShoppingCart' does not impleme +nt the necessary methods!") unless $IO->can($method); } $self->{IO} = $IO; } ...

The test is not compile time, but currently it's the best you can get. AFAIK of course.

  Jenda


Comment on Re: Re: Re: OOP: Plugin Style Development
Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (7)
As of 2014-08-23 17:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (175 votes), past polls