Opt-in conversion of raw Redis replies into stable Elixir values.
Commands return raw RESP values by default. Pass response: :typed to
Redis.command/3, Redis.pipeline/3, or Redis.transaction/3 to parse
replies whose shape is known:
HGETALLandCONFIG GETreturn maps.SMEMBERS,SDIFF,SINTER, andSUNIONreturnMapSets.INFOreturns a flat key/value map. Values remain strings.CLIENT LISTreturns a list ofRedis.Response.Clientstructs.CLIENT INFOreturns oneRedis.Response.Client.XRANGEandXREVRANGEreturnRedis.Response.StreamEntrystructs.XREADandXREADGROUPreturnRedis.Response.Streamstructs.
Unsupported commands are returned unchanged. This makes typed mode safe for mixed pipelines and preserves access to module-specific replies.
Summary
Functions
Parses one raw reply using its command.
Functions
@spec parse([term()], term()) :: {:ok, term()} | {:error, Redis.ResponseError.t()}
Parses one raw reply using its command.
Unknown commands return {:ok, response} unchanged. A malformed reply for a
supported command returns {:error, %Redis.ResponseError{}}.