module RedisClient::CommandBuilder
Public Instance Methods
generate(args, kwargs = nil)
click to toggle source
# File lib/redis_client/command_builder.rb, line 8 def generate(args, kwargs = nil) command = args.flat_map do |element| case element when Hash element.flatten else element end end kwargs&.each do |key, value| if value if value == true command << key.name else command << key.name << value end end end command.map! do |element| case element when String element when Symbol element.name when Integer, Float element.to_s else raise TypeError, "Unsupported command argument type: #{element.class}" end end if command.empty? raise ArgumentError, "can't issue an empty redis command" end command end