1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
use std::io::{Read, Seek, Write}; use crate::result::ArchiveResult; pub trait ArchiveRead where Self: Sized, { type Reader: Read + Seek; fn new(reader: Self::Reader) -> ArchiveResult<Self>; } pub trait ArchiveWrite where Self: Sized, { type Writer: Write; fn new(write: Self::Writer) -> ArchiveResult<Self>; }