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

That is what he's doing. We're discussing how to implement the Helper pattern. :-)

------
We are the carpenters and bricklayers of the Information Age.

Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.

Replies are listed 'Best First'.
Re: Re: Re: OOP: Plugin Style Development
by Jenda (Abbot) on Jul 23, 2002 at 19:21 UTC

    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