Hash::Case::Preserve - hash with enforced lower cased keys


Hash-Case documentation  | view source Contained in the Hash-Case distribution.

Index


NAME

Top

Hash::Case::Preserve - hash with enforced lower cased keys

INHERITANCE

Top

 Hash::Case::Preserve
   is a Hash::Case
   is a Tie::StdHash

SYNOPSIS

Top

 use Hash::Case::Preserve;
 tie my(%cphash), 'Hash::Case::Preserve';
 $cphash{StraNGeKeY} = 3;
 print keys %cphash;         # StraNGeKeY
 print $cphash{strangekey};  # 3
 print $cphash{STRANGEKEY};  # 3

DESCRIPTION

Top

Hash::Case::Preserve extends Hash::Case, which lets you play various trics with hash keys. This extension implements a fake hash which is case-insentive. The keys are administered in the casing as they were used: case-insensitive but case-preserving.

METHODS

Top

Constructors

$obj->addHashData(HASH)

See "Constructors" in Hash::Case

$obj->addPairs(PAIRS)

See "Constructors" in Hash::Case

$obj->setHash(HASH)

See "Constructors" in Hash::Case

tie(HASH, 'Hash::Case::Preserve', [VALUES,] OPTIONS)

Define HASH to be case insensitive, but case preserving. The hash is initialized with the VALUES, specified as ref-array (passing a list of key-value pairs) or ref-hash.

OPTIONS is a list of key/value pairs, which specify how the hash must handle preservation. Current options:

 Option--Default
 keep    'LAST'

. keep => 'FIRST' | 'LAST'

Which casing is the prefered casing? The FIRST appearance or the LAST. Only stores will affect the casing, deletes will undo the definition. Defaults to LAST, which is slightly faster.

SEE ALSO

Top

This module is part of Hash-Case distribution version 1.01, built on February 15, 2010. Website: http://perl.overmeer.net/hash-case/

LICENSE

Top

Copyrights 2002-2003,2007-2010 by Mark Overmeer. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html


Hash-Case documentation  | view source Contained in the Hash-Case distribution.