# File lib/caches/cachetastic_caches_base.rb, line 58
    def get(key)
      res = nil
      do_with_logging(:get, key) do
        retryable(:on => ArgumentError) do
          begin
            res = adapter.get(key.to_s)
            if res.nil?
              res = yield key if block_given?
            else
              res = unmarshall(res)
            end
            res
          rescue ArgumentError => e
            m = e.message.match(/class\/module .*/)
            if m
              m = m.to_s
              m.gsub!("class/module", '')
              m.gsub!("(ArgumentError)", '')
              require m.strip.underscore
              raise e
            end
          rescue Exception => e
            raise e
          end
        end
      end
      res
    end