zstd_compression: Make use of std::span
Allows for the incoming data stream to be non-allocating.
This commit is contained in:
		@@ -32,7 +32,7 @@ std::vector<u8> CompressDataZSTDDefault(const u8* source, std::size_t source_siz
 | 
			
		||||
    return CompressDataZSTD(source, source_size, ZSTD_CLEVEL_DEFAULT);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
std::vector<u8> DecompressDataZSTD(const std::vector<u8>& compressed) {
 | 
			
		||||
std::vector<u8> DecompressDataZSTD(std::span<const u8> compressed) {
 | 
			
		||||
    const std::size_t decompressed_size =
 | 
			
		||||
        ZSTD_getDecompressedSize(compressed.data(), compressed.size());
 | 
			
		||||
    std::vector<u8> decompressed(decompressed_size);
 | 
			
		||||
 
 | 
			
		||||
@@ -4,6 +4,7 @@
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <span>
 | 
			
		||||
#include <vector>
 | 
			
		||||
 | 
			
		||||
#include "common/common_types.h"
 | 
			
		||||
@@ -40,6 +41,6 @@ namespace Common::Compression {
 | 
			
		||||
 *
 | 
			
		||||
 * @return the decompressed data.
 | 
			
		||||
 */
 | 
			
		||||
[[nodiscard]] std::vector<u8> DecompressDataZSTD(const std::vector<u8>& compressed);
 | 
			
		||||
[[nodiscard]] std::vector<u8> DecompressDataZSTD(std::span<const u8> compressed);
 | 
			
		||||
 | 
			
		||||
} // namespace Common::Compression
 | 
			
		||||
} // namespace Common::Compression
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user