pub struct ReinterpretCodec { /* private fields */ }Expand description
Codec to reinterpret data between different compatible types.
Note that no conversion happens, only the meaning of the bits changes.
Reinterpreting to bytes, or to a same-sized unsigned integer type, or without the changing the dtype are supported.
Implementations§
Source§impl ReinterpretCodec
impl ReinterpretCodec
Sourcepub fn try_new(
encode_dtype: AnyArrayDType,
decode_dtype: AnyArrayDType,
) -> Result<Self, ReinterpretCodecError>
pub fn try_new( encode_dtype: AnyArrayDType, decode_dtype: AnyArrayDType, ) -> Result<Self, ReinterpretCodecError>
Try to create a ReinterpretCodec that reinterprets the input data
from decode_dtype to encode_dtype on encoding, and from
encode_dtype back to decode_dtype on decoding.
§Errors
Errors with ReinterpretCodecError::InvalidReinterpret if
encode_dtype and decode_dtype are incompatible.
Sourcepub const fn passthrough(dtype: AnyArrayDType) -> Self
pub const fn passthrough(dtype: AnyArrayDType) -> Self
Create a ReinterpretCodec that does not change the dtype.
Sourcepub const fn to_bytes(dtype: AnyArrayDType) -> Self
pub const fn to_bytes(dtype: AnyArrayDType) -> Self
Create a ReinterpretCodec that reinterprets dtype as
bytes.
Sourcepub const fn to_binary(dtype: AnyArrayDType) -> Self
pub const fn to_binary(dtype: AnyArrayDType) -> Self
Create a ReinterpretCodec that reinterprets dtype as its
binary equivalent.
Trait Implementations§
Source§impl Clone for ReinterpretCodec
impl Clone for ReinterpretCodec
Source§fn clone(&self) -> ReinterpretCodec
fn clone(&self) -> ReinterpretCodec
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Codec for ReinterpretCodec
impl Codec for ReinterpretCodec
Source§fn encode(&self, data: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
fn encode(&self, data: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
Encodes the
data and returns the result. Read moreSource§fn decode(&self, encoded: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
fn decode(&self, encoded: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
Decodes the
encoded data and returns the result. Read moreSource§fn decode_into(
&self,
encoded: AnyArrayView<'_>,
decoded: AnyArrayViewMut<'_>,
) -> Result<(), Self::Error>
fn decode_into( &self, encoded: AnyArrayView<'_>, decoded: AnyArrayViewMut<'_>, ) -> Result<(), Self::Error>
Source§impl<'de> Deserialize<'de> for ReinterpretCodec
impl<'de> Deserialize<'de> for ReinterpretCodec
Source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for ReinterpretCodec
impl JsonSchema for ReinterpretCodec
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl Serialize for ReinterpretCodec
impl Serialize for ReinterpretCodec
Source§impl StaticCodec for ReinterpretCodec
impl StaticCodec for ReinterpretCodec
Source§type Config<'de> = ReinterpretCodec
type Config<'de> = ReinterpretCodec
Configuration type, from which the codec can be created infallibly. Read more
Source§fn from_config(config: Self::Config<'_>) -> Self
fn from_config(config: Self::Config<'_>) -> Self
Instantiate a codec from its
configuration.Source§fn get_config(&self) -> StaticCodecConfig<'_, Self>
fn get_config(&self) -> StaticCodecConfig<'_, Self>
Get the configuration for this codec. Read more
Auto Trait Implementations§
impl Freeze for ReinterpretCodec
impl RefUnwindSafe for ReinterpretCodec
impl Send for ReinterpretCodec
impl Sync for ReinterpretCodec
impl Unpin for ReinterpretCodec
impl UnwindSafe for ReinterpretCodec
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DynCodec for Twhere
T: StaticCodec,
impl<T> DynCodec for Twhere
T: StaticCodec,
Source§type Type = StaticCodecType<T>
type Type = StaticCodecType<T>
Type object type for this codec.
Source§fn get_config<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn get_config<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
Serializes the configuration parameters for this codec. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more