Hash::Case::Preserve - hash with enforced lower cased keys
Contents
Description
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.
Extends "DESCRIPTION" in Hash::Case.
Inheritance
Hash::Case::Preserve
is a Hash::Case
is a Tie::StdHash
License
Copyrights 2002-2020 by [Mark Overmeer <markov@cpan.org>]. 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://dev.perl.org/licenses/
perl v5.36.0 2022-10-13 Hash::Case::Preserve(3pm)
Methods
Extends "METHODS" in Hash::Case.
Constructors
Extends "Constructors" in Hash::Case.
$obj->addHashData(HASH)
Inherited, see "Constructors" in Hash::Case
$obj->addPairs(PAIRS)
Inherited, see "Constructors" in Hash::Case
$obj->setHash(HASH)
Inherited, 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 preferred 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.
Name
Hash::Case::Preserve - hash with enforced lower cased keys
See Also
This module is part of Hash-Case distribution version 1.05, built on February 06, 2020. Website:
http://perl.overmeer.net/CPAN/Synopsis
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
