perl-embperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thompson, John" <jth...@midwestern.edu>
Subject RE: Execute( sub =>...) and (object => ...)
Date Tue, 22 Jun 2010 19:31:18 GMT
Ok so I figured out that the Execute( param => ... ) still goes into
@param not @_. Any idea why the ( object => $template ) isn't working?

 

From: Thompson, John [mailto:jthomp@midwestern.edu] 
Sent: Tuesday, June 22, 2010 10:50 AM
To: embperl@perl.apache.org
Subject: Execute( sub =>...) and (object => ...)

 

I am attempting to #1 determine if a function is defined in a template
and if so #2 call it sending it parameters all from outside the
template.

 

I first thought I might just grep for [$ sub name $] and if found do:

 

my $html;

Embperl::Execute({inputfile  => $template},

                                               sub    => 'name'

                                           param  =>
[$param1,$param2,$param3],

                                           output => \$html});

 

But it doesn't seem that "param" feeds the subroutine (and it doesn't
feed the template either), so I can't figure out how to get parameters
to my function.

 

Then I thought I'd try to do:

 

my $object = Embperl::Execute({object  => $template});

if($object->can('name')) {

     $object->name($param1,$param2,$param3);

}

 

But for some reason, $object is always equal to zero. Does the template
need to have a package declaration? Not sure what I'm doing wrong.
Either of these ways would work, any help is appreciated.

 


Mime
View raw message