http://www.perlmonks.org?node_id=89443


in reply to storing data via 2 sibling keys

How about something like this:
package Tie::HashNKeys; use strict; sub TIEHASH { my $class = shift; bless {}, $class; } sub STORE { $_[0]->{ join $;, sort split /$;/, $_[1] } = $_[2]; } sub FETCH { $_[0]->{ join $;, sort split /$;/, $_[1] }; }
Sample:
tie my %hash, 'Tie::HashNKeys'; $hash{'csUsers','csGroups'} = 'foo'; print $hash{'csGroups','csUsers'}; ## prints 'foo'
Is that kind of what you want?

Replies are listed 'Best First'.
Re: Re: storing data via 2 sibling keys
by AidanLee (Chaplain) on Jun 19, 2001 at 01:09 UTC
    And once more my horizon is widened. Thanks btrott, hadn't even considered ties. This will make for a nice transparent way of doing this. Does anyone know what Data::Dumper will think of it though?