Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re^3: Templating algorithm - pass in variables vs callback?

by lachoy (Parson)
on Mar 01, 2005 at 02:36 UTC ( #435264=note: print w/replies, xml ) Need Help??


in reply to Re^2: Templating algorithm - pass in variables vs callback?
in thread Templating algorithm - pass in variables vs callback?

No, that's not what I'm talking about. Systems like Template Toolkit allow you to pass an object to a template as the value of one of the hash keys you pass in. You can then call methods on the object from the template and they're called just like normal method. For instance, given the dummy class:

package Foo; sub new { return bless ( { count => 1 } ) } sub count { $_[0]->{count}++ } 1;

And the following template code:

use Foo; use Template; my $template = Template->new(); $template->process( \*DATA, { bar => Foo->new() } ) || die "Cannot process: ", $template->error(), "\n"; __DATA__ I am calling methods on the object named 'bar': Call: [% bar.count %] Call: [% bar.count %] Call: [% bar.count %]

You'll see:

I am calling methods on the object named 'bar': Call: 1 Call: 2 Call: 3

Chris
M-x auto-bs-mode

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://435264]
help
Chatterbox?
[Tux]: C99 is not supported on HP-UX before 11.31
[Tux]: at least not reliable. And perl itself requires C89 (but probes if it can safely use some C99 features)
Eily takes a peek in the last hour of CB to discover that LanX woke up is boobs with some Queen :P
[Eily]: s/\K\bis\b/h/
[Tux]: you left the space in
[Tux]: and that \K is not required
[Tanktalus]: 11.31 is already 10 years old... you still need to support versions older than that? My condolences :)
[Eily]: meh, got confused. s/(?=\bis\b)/h/ will work better :)
[Eily]: \K keeps the thing on the left, not the right (IE, it's like look behind, not look ahead)

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (11)
As of 2017-09-20 16:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    During the recent solar eclipse, I:









    Results (237 votes). Check out past polls.

    Notices?