NAME
Locale::Maketext::TieHash::nbsp - Tying subroutine to a hash
VERSION
1.00
SYNOPSIS
use strict;
use warnings;
use Locale::Maketext::TieHash::nbsp;
without a special configuration (using entities)
tie my %nbsp, 'Locale::Maketext::TieHash::nbsp';
print $nbsp{'15 pieces'};
# result: '15 pieces'
configuration of unicode separator string
use charnames qw(:full);
tie my %nbsp, 'Locale::Maketext::TieHash::nbsp', separator => "\N{NO-BREAK SPACE}";
print $nbsp{'15 pieces'};
# result is eq "15\N{NO-BREAK SPACE}pieces"
configuration of visible string
To test the script, store an visible string.
tie my %nbsp, 'Locale::Maketext::TieHash::nbsp', separator => '~';
print $nbsp{'15 pieces'};
# result: '15~pieces'
configuration using a subroutine
tie my %nbsp, 'Locale::Maketext::TieHash::nbsp', sub {
(my $string = shift) =~ s{ }{*}msg;
return $string;
};
print $nbsp{'15 pieces'};
# result: '15*pieces'
read configuration
my %config = tied(%nbsp)->config();
write configuration
my %config = tied(%nbsp)->config(separator => $separator);
or
my %config = tied(%nbsp)->config(sub => $code_ref);
DESCRIPTION
Subroutines don't have interpreted into strings. The module ties a subroutine to a hash. The Subroutine is executed at fetch hash. At long last this is the same, only the notation is shorter.
Sometimes the subroutine 'sub' expects more than 1 parameter. Then submit a reference on an array as hash key.
SUBROUTINES/METHODS
method TIEHASH
tie my %nbsp, 'Locale::Maketext::TieHash::nbsp';
'TIEHASH' ties your hash and set the options defaults.
method config
Stores the seperator string or a subroutine.
tied(%nbsp)->config(
sub => sub {
(my $string = shift) =~ s{ }{ }msg;
return $string;
},
);
or
tied(%nbsp)->config(
separator => ' ',
);
'config' accepts all parameters as Hash and gives a Hash back with all set attributes.
method FETCH
Give your string as key of your hash. 'FETCH' will substitute the whitespace to ' ' and give it back as value.
# Substitute
print $nbsp{$string};
DIAGNOSTICS
All methods can croak at false parameters.
CONFIGURATION AND ENVIRONMENT
nothing
DEPENDENCIES
parent
Params::Validate Comfortable parameter validation
INCOMPATIBILITIES
not known
BUGS AND LIMITATIONS
not known
SEE ALSO
Locale::Maketext Localisation framework
AUTHOR
Steffen Winkler
LICENSE AND COPYRIGHT
Copyright (c) 2004 - 2009, Steffen Winkler <steffenw at cpan.org>
. All rights reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.