lib.redis.impl.generator

*command-id*

dynamic

collect-optional

added in 3.0

(collect-optional arguments optionals key)

collect all optional variables

command-arguments

added in 3.0

(command-arguments args key custom multiple optionals)

function for command arguments

command-form

added in 3.0

(command-form k)(command-form k custom)

create the command form

command-params

added in 3.0

(command-params input)(command-params key custom)

create command params for form generation

(command-params :ttl) => ’{:id :ttl, :arguments ({:enum nil, :name “key”, :process lib.redis.impl.common/process:key, :command nil, :type :key, :multiple false, :sym key, :optional nil, :display nil}), :prefix (“TTL”), :return :data, :optionals false, :multiple false}

(command-params :set {})

command-parse

added in 3.0

(command-parse m)(command-parse {:keys [id flags], :as m} {:keys [replace], :as custom})

parse params for a given skeleton

command-redefs

added in 3.0

(command-redefs {:keys [sym process]})

creates redefinitions for let bindings

command-step

added in 3.0

(command-step {:keys [type sym name multiple command values]})

creates a command step

command-tmpl

added in 3.0

(command-tmpl {:keys [id prefix arguments return multiple optionals]})

creates a command function from data

command-type

added in 3.0

(command-type v)

normalizes a command type

expand-argument

added in 3.0

(expand-argument arg)

expands an argument

expand-enum

added in 3.0

(expand-enum {:keys [enum name command]})

expands the enum structure

expand-prelim

added in 3.0

(expand-prelim {:keys [type display sym name command enum multiple optional process], :as arg})

expands the initial argument

expand-process

added in 3.0

(expand-process {:keys [process type multiple], :as arg})

expands the argument for the :process keys

optional-tmpl

added in 3.0

(optional-tmpl {:keys [id arguments]})

creates the optional form from data

select-commands

added in 3.0

(select-commands {:keys [group include exclude custom replace]})

select commands and create a list of params