summaryrefslogtreecommitdiff
path: root/src/codec
diff options
context:
space:
mode:
authorzirkonya <zirkonya@iridium.lan>2026-07-25 19:45:02 +0200
committerzirkonya <zirkonya@iridium.lan>2026-07-25 19:45:02 +0200
commit08c8e9d37f3e0f9a82c3792c1927967631de73cd (patch)
tree6d97d62b7253280472e5f5818f7d45df4f5038ba /src/codec
parent467a22d3c955bec752f9d98cf0829e05a150721a (diff)
Add README LICENSE and setup encode & decode trait
Diffstat (limited to 'src/codec')
-rw-r--r--src/codec/decode.rs7
-rw-r--r--src/codec/encode.rs6
2 files changed, 13 insertions, 0 deletions
diff --git a/src/codec/decode.rs b/src/codec/decode.rs
new file mode 100644
index 0000000..65f08b5
--- /dev/null
+++ b/src/codec/decode.rs
@@ -0,0 +1,7 @@
+use std::io::{self, Read};
+
+pub trait Decode {
+ fn decode(reader: &impl Read) -> io::Result<Self>
+ where
+ Self: Sized;
+}
diff --git a/src/codec/encode.rs b/src/codec/encode.rs
new file mode 100644
index 0000000..f23913b
--- /dev/null
+++ b/src/codec/encode.rs
@@ -0,0 +1,6 @@
+use std::io::{self, Write};
+
+pub trait Encode {
+ fn encode(&self, write: &mut dyn Write) -> io::Result<usize>;
+ fn encoded_size(&self) -> Option<usize>;
+}