pub trait EncodingCompressor:
Sync
+ Send
+ Debug {
// Required methods
fn id(&self) -> &str;
fn cost(&self) -> u8;
fn can_compress(&self, array: &ArrayData) -> Option<&dyn EncodingCompressor>;
fn compress<'a>(
&'a self,
array: &ArrayData,
like: Option<CompressionTree<'a>>,
ctx: SamplingCompressor<'a>,
) -> VortexResult<CompressedArray<'a>>;
fn used_encodings(&self) -> HashSet<EncodingRef>;
}
Required Methods§
fn id(&self) -> &str
fn cost(&self) -> u8
fn can_compress(&self, array: &ArrayData) -> Option<&dyn EncodingCompressor>
fn compress<'a>( &'a self, array: &ArrayData, like: Option<CompressionTree<'a>>, ctx: SamplingCompressor<'a>, ) -> VortexResult<CompressedArray<'a>>
fn used_encodings(&self) -> HashSet<EncodingRef>
Trait Implementations§
source§impl<'a, 'b: 'a> Arbitrary<'a> for &'b dyn EncodingCompressor
impl<'a, 'b: 'a> Arbitrary<'a> for &'b dyn EncodingCompressor
source§fn arbitrary(u: &mut Unstructured<'a>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'a>) -> Result<Self>
Generate an arbitrary value of
Self
from the given unstructured data. Read more§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read more