NAME

   Protocol::Redis::Faster - Optimized pure-perl Redis protocol
   parser/encoder

SYNOPSIS

     use Protocol::Redis::Faster;
     my $redis = Protocol::Redis::Faster->new(api => 1) or die "API v1 not supported";

     $redis->parse("+foo\r\n");

     # get parsed message
     my $message = $redis->get_message;
     print "parsed message: ", $message->{data}, "\n";

     # asynchronous parsing interface
     $redis->on_message(sub {
         my ($redis, $message) = @_;
         print "parsed message: ", $message->{data}, "\n";
     });

     # parse pipelined message
     $redis->parse("+bar\r\n-error\r\n");

     # create message
     print "Get key message:\n",
       $redis->encode({type => '*', data => [
          {type => '$', data => 'string'},
          {type => '+', data => 'OK'}
     ]});

DESCRIPTION

   This module implements the Protocol::Redis API with more optimized
   pure-perl internals. See Protocol::Redis for usage documentation.

   This is a low level parsing module, if you are looking to use Redis in
   Perl, try Redis, Redis::hiredis, or Mojo::Redis.

BUGS

   Report any issues on the public bugtracker.

AUTHORS

   Dan Book <[email protected]>

   Jan Henning Thorsen <[email protected]>

CREDITS

   Thanks to Sergey Zasenko <[email protected]> for the original
   Protocol::Redis and defining the API.

COPYRIGHT AND LICENSE

   This software is Copyright (c) 2019 by Dan Book, Jan Henning Thorsen.

   This is free software, licensed under:

     The Artistic License 2.0 (GPL Compatible)

SEE ALSO

   Protocol::Redis