The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Tie::Function - wrap functions in tied hash sugar

SYNOPSIS AND EXAMPLE

  use Tie::Function 0.01; 
  tie my %a, Tie::Function => sub{join '_'x$_[0],qw/( | )/};
  print "small: $a{1}\nmedium: $a{2}\nwide: $a{3}\n"; 
  # we split on $; to recover multiple arguments
  tie my %times, Tie::Function => sub{
        $_[0] * $_[1]
  };
  print "3 times 5 is $times{3,5}\n"

DESCRIPTION

Tie::Function simplifies wrapping functions in tied hash syntax so they can be interpolated in double-quoted literals without messy intermediate variables.

Here's how I use it the most:

   use HTML::Entities;
   use Tie::Function;
   tie my %Entitize => 'Tie::Function' => \&encode_entities;
   ...
   print <<EOF;
   <em>$Entitize{$somethingaboutsomething}</em><br>
   <textarea name="something"
   cols="60" rows="10">$Entitize{$something}</textarea>
   EOF
   ...

EXPORT

nothing

HISTORY

0.01

initial version

0.02

relaxed stricture, turned off warnings to silence "split on unitialized value" warning

AUTHOR

Copyright (C) 2004,2005 david nicol davidnico@cpan.org released under your choice of the GNU Public or Artistic licenses

SEE ALSO

perltie

Tie::OneOff

Interpolation

Tie::Filter

overload