module Kredis::Namespace

def namespace

def namespace
  if global_namespace
    if value = thread_namespace
      "#{global_namespace}:#{value}"
    else
      global_namespace
    end
  else
    thread_namespace
  end
end

def namespaced_key(key)

def namespaced_key(key)
  namespace ? "#{namespace}:#{key}" : key
end

def thread_namespace

def thread_namespace
  Thread.current[:kredis_thread_namespace]
end

def thread_namespace=(value)

def thread_namespace=(value)
  Thread.current[:kredis_thread_namespace] = value
end