Skip to Content Skip to Search
Methods
M
N
V

Class Public methods

new(serializer, compressor, payload, **options)

# File activesupport/lib/active_support/cache/coder.rb, line 105
def initialize(serializer, compressor, payload, **options)
  super(payload, **options)
  @serializer = serializer
  @compressor = compressor
  @resolved = false
end

Instance Public methods

mismatched?(version)

# File activesupport/lib/active_support/cache/coder.rb, line 125
def mismatched?(version)
  super.tap { |mismatched| value if !mismatched }
rescue Cache::DeserializationError
  true
end

value()

# File activesupport/lib/active_support/cache/coder.rb, line 112
def value
  if !@resolved
    @value = begin
      @serializer.load(@compressor ? @compressor.inflate(@value) : @value)
    rescue => error
      ActiveSupport.error_reporter.report(error, source: "active_support.cache")
      raise DeserializationError, error.message
    end
    @resolved = true
  end
  @value
end