Martin H. Sluka
and 1 contributors

NAME

Tie::Hash::Abbrev::Smart - a hash which can be accessed using abbreviated keys

SYNOPSIS

  use Tie::Hash::Abbrev::Smart;

  tie my %hash, 'Tie::Hash::Abbrev::Smart';

  %hash = ( sonntag   =>0, montag =>1, dienstag=>2, mittwoch =>3,
            donnerstag=>4, freitag=>5, samstag =>6,
            sunday    =>0, monday =>1, tuesday =>2, wednesday=>3,
            thursday  =>4, friday =>5, saturday=>6 );

  print $hash{do}; # will print "4"
  print $hash{fr}; # will print "5"
  print $hash{t};  # undef

  my @deleted = tied(%hash)->delete_abbrev(qw(do fr t));
    # will delete elements "donnerstag", "freitag" and "friday";
      @deleted will be (4,5,5)

DESCRIPTION

This module implements a subclass of Tie::Hash::Abbrev. The contents of hashes tied to this class may be accessed via unambiguously abbreviated keys. (Please note, however, that this is not true for deleting hash elements; for that you can use "delete_abbrev()" in Tie::Hash::Abbrev via the object interface.)

In contrast to Tie::Hash::Abbrev, an abbreviation is still considered to be unambiguous even if more than one key starting with the respective string exists, as long as all of the corresponding elements have identical (string) values.

BUGS

None known so far.

AUTHOR

        Martin H. Sluka
        mailto:perl@sluka.de
        http://martin.sluka.de/

COPYRIGHT

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.

SEE ALSO

Tie::Hash::Abbrev