20 class CompressionCacheImpl;
34 std::optional<std::span<const std::uint8_t>>
find(const
void* data_ptr, const
size_t data_size);
35 std::span<const std::uint8_t>
store(const
void* data_ptr, const
size_t data_size, std::vector<std::uint8_t>&& data);
37 [[nodiscard]]
size_t size() const;
38 [[nodiscard]]
size_t count(const
void* data_ptr, const
size_t data_size) const;
39 [[nodiscard]]
bool empty() const;
43 std::unique_ptr<CompressionCacheImpl> m_pimpl;
48 const std::span<const std::uint8_t>& data,
53 const std::span<const std::uint8_t>& data,
58 std::span<const std::uint8_t> data);
std::span< const std::uint8_t > store(const void *data_ptr, const size_t data_size, std::vector< std::uint8_t > &&data)
std::optional< std::span< const std::uint8_t > > find(const void *data_ptr, const size_t data_size)
CompressionCache(CompressionCache &&) noexcept
size_t count(const void *data_ptr, const size_t data_size) const
SPARROW_IPC_API std::span< const std::uint8_t > compress(const CompressionType compression_type, const std::span< const std::uint8_t > &data, CompressionCache &cache)
SPARROW_IPC_API size_t get_compressed_size(const CompressionType compression_type, const std::span< const std::uint8_t > &data, CompressionCache &cache)
SPARROW_IPC_API std::variant< std::vector< std::uint8_t >, std::span< const std::uint8_t > > decompress(const CompressionType compression_type, std::span< const std::uint8_t > data)