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 <dbook@cpan.org>

    Jan Henning Thorsen <jhthorsen@cpan.org>

CREDITS

    Thanks to Sergey Zasenko <undef@cpan.org> 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