Methods
Included Modules
Constants
MARK_COMPRESSED | = | "\x01".b.freeze |
MARK_UNCOMPRESSED | = | "\x00".b.freeze |
Instance Public methods
_load(marked)
📝 Source code
# File activesupport/lib/active_support/cache/serializer_with_fallback.rb, line 110
def _load(marked)
dumped = marked.byteslice(1..-1)
dumped = Zlib::Inflate.inflate(dumped) if marked.start_with?(MARK_COMPRESSED)
Cache::Entry.unpack(marshal_load(dumped))
end
🔎 See on GitHub
dump(entry)
📝 Source code
# File activesupport/lib/active_support/cache/serializer_with_fallback.rb, line 95
def dump(entry)
MARK_UNCOMPRESSED + Marshal.dump(entry.pack)
end
🔎 See on GitHub
dump_compressed(entry, threshold)
📝 Source code
# File activesupport/lib/active_support/cache/serializer_with_fallback.rb, line 99
def dump_compressed(entry, threshold)
dumped = Marshal.dump(entry.pack)
if dumped.bytesize >= threshold
compressed = Zlib::Deflate.deflate(dumped)
return MARK_COMPRESSED + compressed if compressed.bytesize < dumped.bytesize
end
MARK_UNCOMPRESSED + dumped
end
🔎 See on GitHub
dumped?(dumped)
📝 Source code
# File activesupport/lib/active_support/cache/serializer_with_fallback.rb, line 116
def dumped?(dumped)
dumped.start_with?(MARK_UNCOMPRESSED, MARK_COMPRESSED)
end
🔎 See on GitHub