Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: hash, a troublemaker?

by mce (Curate)
on May 12, 2004 at 12:22 UTC ( #352703=note: print w/ replies, xml ) Need Help??


in reply to hash, a troublemaker?

Hey,

Just for the fun of it.

#!/usr/local/bin/perl package MyTie; use Tie::Hash; @ISA=(Tie::ExtraHash); sub STORE { my $self=shift; my $key=shift; my $value=shift; if ( grep /^$key$/, @{$self->[1]} ) { warn "key $key not valid"; return undef; } return $self->[0]{$key}=$value; } 1; package main; use strict; use Data::Dumper; my $rhash; tie %$rhash, 'MyTie', [qw(not ok)]; $rhash->{b}=2; $rhash->{not}=2; warn Dumper($rhash); 1;
Of course, the solutions given above are much better, but isn't perl just a lot of fun.......
Of course, the compiler will not complain on this solution, so it is only a half solution.

---------------------------
Dr. Mark Ceulemans
Senior Consultant
BMC, Belgium


Comment on Re: hash, a troublemaker?
Download Code
Re: Re: hash, a troublemaker?
by davorg (Chancellor) on May 12, 2004 at 12:40 UTC
    Or, from the CPAN Tie::Hash::FixedKeys. (of course, the Hash::Util::lock_keys solution is better.)
    --
    <http://www.dave.org.uk>

    "The first rule of Perl club is you do not talk about Perl club."
    -- Chip Salzenberg

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://352703]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (11)
As of 2014-09-30 11:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (364 votes), past polls