blob: a5d0fc5ea358e25922578e74b6a67c846b11b916 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
use crate::io::{ArchiveRead, ArchiveWrite};
use crate::result::ArchiveResult;
use std::io::{Seek, Write};
use std::{fs::File, io::Read};
pub struct ZipReader<R: Read + Seek = File> {
reader: R,
}
impl<R: Read + Seek> ArchiveRead for ZipReader<R> {
type Reader = R;
fn new(reader: Self::Reader) -> ArchiveResult<Self> {
Ok(Self { reader })
}
}
pub struct ZipWriter<W: Write = File> {
writer: W,
}
impl<W: Write> ArchiveWrite for ZipWriter<W> {
type Writer = W;
fn new(writer: Self::Writer) -> ArchiveResult<Self> {
Ok(Self { writer })
}
}
|