lset, generalize _sock_send_bulk to any number of arguments
[perl-Redis.git] / lib / Redis.pm
index d55af09..cb78dc9 100644 (file)
@@ -97,8 +97,9 @@ sub _sock_send_ok {
 }
 
 sub _sock_send_bulk {
-       my ( $self, $command, $key, $value ) = @_;
-       print $sock "$command $key " . length($value) . "\r\n$value\r\n";
+       my $self = shift;
+       my $value = pop;
+       print $sock join(' ',@_) . ' ' . length($value) . "\r\n$value\r\n";
        _sock_ok();
 }
 
@@ -326,6 +327,28 @@ sub ltrim {
        $self->_sock_send_ok( 'LTRIM', $key, $start, $end );
 }
 
+=head2 lindex
+
+  $r->lindex( $key, $index );
+
+=cut
+
+sub lindex {
+       my ( $self, $key, $index ) = @_;
+       $self->_sock_result_bulk( 'LINDEX', $key, $index );
+}
+
+=head2 lset
+
+  $r->lset( $key, $index, $value );
+
+=cut
+
+sub lset {
+       my ( $self, $key, $index, $value ) = @_;
+       $self->_sock_send_bulk( 'LSET', $key, $index, $value );
+}
+
 =head1 AUTHOR
 
 Dobrica Pavlinusic, C<< <dpavlin at rot13.org> >>