Net::Async::Redis::Protocol - simple implementation of the Redis wire protocol


Used internally by Net::Async::Redis and Net::Async::Redis::Server.


Given a Perl data structure, will return data suitable for sending back as a response as from a Redis server.

Note that this is not the correct format for client requests, see "encode_from_client" instead.


Handles client format encoding. Expects a list of data items, and will convert them into length-prefixed bulk strings as a single response item.


Decodes wire protocol data into Perl data structures.

Expects to be called with a reference to a byte string, and will extract as much as it can from that string (destructively).

Likely to call "item" or "item_error" zero or more times.