From fdc02f07cbd1994c1efb057f24a37a96faaa51fa Mon Sep 17 00:00:00 2001 From: zirkonya Date: Sun, 30 Aug 2026 17:12:05 +0200 Subject: add encode/decode implementation --- src/codec/encode.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src/codec/encode.rs') diff --git a/src/codec/encode.rs b/src/codec/encode.rs index ae5eb4e..7463995 100644 --- a/src/codec/encode.rs +++ b/src/codec/encode.rs @@ -269,6 +269,28 @@ impl Encode for bool { } } +// ~ Encode pointer + +impl Encode for std::sync::Arc +where + T: Encode, +{ + fn encode(&self, buffer: &mut dyn Write, ctx: &Context) -> Result { + let data = self.as_ref(); + data.encode(buffer, ctx) + } +} + +impl Encode for std::sync::Arc<[T]> +where + T: Encode, +{ + fn encode(&self, buffer: &mut dyn Write, ctx: &Context) -> Result { + let data = self.as_ref(); + data.encode(buffer, ctx) + } +} + impl_encode!(u8); impl_encode!(u16); impl_encode!(u32); -- cgit v1.2.3