method

load

Importance_0
Ruby on Rails latest stable (v7.1.3.2) - 0 notes - Class: Coder
  • 1.0.0
  • 1.1.6
  • 1.2.6
  • 2.0.3
  • 2.1.0
  • 2.2.1
  • 2.3.8
  • 3.0.0
  • 3.0.9
  • 3.1.0
  • 3.2.1
  • 3.2.8
  • 3.2.13
  • 4.0.2
  • 4.1.8
  • 4.2.1
  • 4.2.7
  • 4.2.9
  • 5.0.0.1
  • 5.1.7
  • 5.2.3
  • 6.0.0
  • 6.1.3.1
  • 6.1.7.7
  • 7.0.0
  • 7.1.3.2 (0)
  • 7.1.3.4 (0)
  • What's this?
load(dumped) public

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activesupport/lib/active_support/cache/coder.rb, line 48
      def load(dumped)
        return @serializer.load(dumped) if !signature?(dumped)

        type = dumped.unpack1(PACKED_TYPE_TEMPLATE)
        expires_at = dumped.unpack1(PACKED_EXPIRES_AT_TEMPLATE)
        version_length = dumped.unpack1(PACKED_VERSION_LENGTH_TEMPLATE)

        expires_at = nil if expires_at < 0
        version = load_version(dumped.byteslice(PACKED_VERSION_INDEX, version_length)) if version_length >= 0
        payload = dumped.byteslice((PACKED_VERSION_INDEX + [version_length, 0].max)..)

        compressor = @compressor if type & COMPRESSED_FLAG > 0
        serializer = STRING_DESERIALIZERS[type & ~COMPRESSED_FLAG] || @serializer

        LazyEntry.new(serializer, compressor, payload, version: version, expires_at: expires_at)
      end
Register or log in to add new notes.