Deliver float events from scylla table
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
use libc::size_t;
|
||||
use libc::{c_int, size_t};
|
||||
|
||||
extern "C" {
|
||||
pub fn bshuf_compress_lz4(
|
||||
@@ -8,6 +8,7 @@ extern "C" {
|
||||
elem_size: size_t,
|
||||
block_size: size_t,
|
||||
) -> i64;
|
||||
|
||||
pub fn bshuf_decompress_lz4(
|
||||
inp: *const u8,
|
||||
out: *const u8,
|
||||
@@ -15,6 +16,13 @@ extern "C" {
|
||||
elem_size: size_t,
|
||||
block_size: size_t,
|
||||
) -> i64;
|
||||
|
||||
pub fn LZ4_decompress_safe(
|
||||
source: *const u8,
|
||||
dest: *mut u8,
|
||||
compressedSize: c_int,
|
||||
maxDecompressedSize: c_int,
|
||||
) -> c_int;
|
||||
}
|
||||
|
||||
pub fn bitshuffle_compress(
|
||||
@@ -50,3 +58,13 @@ pub fn bitshuffle_decompress(
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn lz4_decompress(inp: &[u8], out: &mut [u8]) -> Result<usize, isize> {
|
||||
let max_out = out.len() as _;
|
||||
let ec = unsafe { LZ4_decompress_safe(inp.as_ptr(), out.as_mut_ptr(), inp.len() as _, max_out) };
|
||||
if ec < 0 {
|
||||
Err(ec as _)
|
||||
} else {
|
||||
Ok(ec as _)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user