X-Git-Url: https://git.saurik.com/redis.git/blobdiff_plain/5762b7f0f8d33eda021da908b6ddced684a2ba05..1259672feb4fcad189d413a341745990a844feda:/client-libraries/perl/lib/Redis/Hash.pm diff --git a/client-libraries/perl/lib/Redis/Hash.pm b/client-libraries/perl/lib/Redis/Hash.pm deleted file mode 100644 index e5f8f703..00000000 --- a/client-libraries/perl/lib/Redis/Hash.pm +++ /dev/null @@ -1,70 +0,0 @@ -package Redis::Hash; - -use strict; -use warnings; - -use Tie::Hash; -use base qw/Redis Tie::StdHash/; - -use Data::Dump qw/dump/; - -=head1 NAME - -Redis::Hash - tie perl hashes into Redis - -=head1 SYNOPSYS - - tie %name, 'Redis::Hash', 'prefix'; - -=cut - -# mandatory methods -sub TIEHASH { - my ($class,$name) = @_; - my $self = Redis->new; - $name .= ':' if $name; - $self->{name} = $name || ''; - bless $self => $class; -} - -sub STORE { - my ($self,$key,$value) = @_; - $self->set( $self->{name} . $key, $value ); -} - -sub FETCH { - my ($self,$key) = @_; - $self->get( $self->{name} . $key ); -} - -sub FIRSTKEY { - my $self = shift; - $self->{keys} = [ $self->keys( $self->{name} . '*' ) ]; - $self->NEXTKEY; -} - -sub NEXTKEY { - my $self = shift; - my $key = shift @{ $self->{keys} } || return; - my $name = $self->{name}; - $key =~ s{^$name}{} || warn "can't strip $name from $key"; - return $key; -} - -sub EXISTS { - my ($self,$key) = @_; - $self->exists( $self->{name} . $key ); -} - -sub DELETE { - my ($self,$key) = @_; - $self->del( $self->{name} . $key ); -} - -sub CLEAR { - my ($self) = @_; - $self->del( $_ ) foreach ( $self->keys( $self->{name} . '*' ) ); - $self->{keys} = []; -} - -1;