raptor wrote:
>
> script.pl
> ===========
> use Helper;
> my $callbackFunc = \&Helper::func;
> my $obj = new BigOne ( vals => $callbackFunc);
>
> BigOne.pm
> ==========
> my $vals = shift;
> ....
> if (ref $vals eq 'CODE') {
> ...........
> my $kv = &$vals( id => $selected, dbh => $$self{dbh} );
> ..............
> };
> ....
>
Let's say your vals gets executed in a subroutine call dispatch(),
then you can pass your args to dispatch() at runtime, and have
it call into your callback with these args, like
$bigOne->dispatch('vars', @args);
sub dispatch {
my($self, $sub_name, @args) = @_;
my $code = $self->{$sub_name};
my $kv = &$code(@args);
}
Binding your args at runtime will be the most flexible
This is actually how $Response->Include($include, @args) works,
by compiling $include files into a asp perl sub, and then
executing it with @args passed in.
--Josh
_________________________________________________________________
Joshua Chamas Chamas Enterprises Inc.
NodeWorks Founder Huntington Beach, CA USA
http://www.nodeworks.com 1-714-625-4051
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]