Mercurial > pub > Impl
diff Lib/IMPL/Resources/Format.pm @ 49:16ada169ca75
migrating to the Eclipse IDE
author | wizard@linux-odin.local |
---|---|
date | Fri, 26 Feb 2010 10:49:21 +0300 |
parents | 818c74b038ae |
children | 196bf443b5e1 |
line wrap: on
line diff
--- a/Lib/IMPL/Resources/Format.pm Fri Feb 26 01:43:42 2010 +0300 +++ b/Lib/IMPL/Resources/Format.pm Fri Feb 26 10:49:21 2010 +0300 @@ -1,32 +1,32 @@ -package IMPL::Resources::Format; -use strict; -use warnings; - -require Exporter; -our @ISA = qw(Exporter); -our @EXPORT_OK = qw(&FormatMessage); - -sub FormatMessage { - my ($string,$args) = @_; - - $string =~ s/%(\w+(?:\.\w+)*)%/_getvalue($args,$1,"\[$1\]")/ge; - - return $string; -} - -sub _getvalue { - my ($obj,$path,$default) = @_; - - foreach my $chunk (split /\./,$path) { - if (eval { $obj->can( $chunk ) } ) { - $obj = $obj->$chunk(); - } elsif (UNIVERSAL::isa($obj,'HASH')) { - $obj = $obj->{$chunk}; - } else { - return $default; - } - } - return $obj; -} - -1; +package IMPL::Resources::Format; +use strict; +use warnings; + +require Exporter; +our @ISA = qw(Exporter); +our @EXPORT_OK = qw(&FormatMessage); + +sub FormatMessage { + my ($string,$args) = @_; + + $string =~ s/%(\w+(?:\.\w+)*)%/_getvalue($args,$1,"\[$1\]")/ge; + + return $string; +} + +sub _getvalue { + my ($obj,$path,$default) = @_; + + foreach my $chunk (split /\./,$path) { + if (eval { $obj->can( $chunk ) } ) { + $obj = $obj->$chunk(); + } elsif (UNIVERSAL::isa($obj,'HASH')) { + $obj = $obj->{$chunk}; + } else { + return $default; + } + } + return $obj; +} + +1;