Shortcut for creating Aggregate actors.
Shortcut to the args of the current command.
Utility for handling boundary args that wrap around ends of sequences and count backwards when negative.
The current command - normally will be set when a Command arrives via the actor's receive method.
Timeout for a single command.
Compiles a Lua script given by a command, and runs a success function when successful - storing it in the case of LOAD SCRIPT on a KeyNode, or running it in the case of EVAL on a CLientNode.
Flag that enables detailed command debugging.
Retrieves a duration config setting as milliseconds, and handles the value not being a duration value, so we can do something like set it to "off", in which case we default to 0.
Utility for dropping extraneous zeros from floats when converting to strings, for consistency with Redis' INCRBYFLOAT/HINCRBYFLOAT commands and sorted set scores.
Utility for glob-style filtering.
Utility for selecting a random item.
Sends a Response (usually the result of a command) back to the command's destination (usually a ClientNode sending a Command).
Shortcut route method for sending command input without a constructed Command instance, using the state of the current command (eg: db, clientID).
Sends an unrouted Command to one or more KeyNode actors, either by routing by key, or broadcasting to all.
Runs a compiled Lua script by constructing a temporary ScriptRunner actor, and sending it the orignal command received so that it can eventually reply to it directly.
CommandRunner for ScriptingClient, which is given a distinct name, so that ClientNode can compose together multiple CommandRunner methods to form its own.
Utility for scan-style commands, namely SCAN/SSCAN/HSCAN/ZSCAN.
Constructs the SHA1 digest of a given script - this happens on the ClientNode so that we can leverage the routing normally used for keys when sending the script to a KeyNode to be stored.
Utility for slicing sequences, for commands such as SLICE, GETRANGE, LRANGE, etc.
Stops the actor - we define this shortcut to give subclassing traits the chance to override it and inject extra shutdown behavior that concrete actors need not know about.