aboutsummaryrefslogtreecommitdiff
path: root/src/archive.rs
diff options
context:
space:
mode:
authorIgor Tolmachev <me@igorek.dev>2024-06-10 23:38:08 +0900
committerIgor Tolmachev <me@igorek.dev>2024-06-23 15:34:34 +0900
commitbd77f62e99a5300dfa52aef3a7040414b28ebfd6 (patch)
tree4965b7fc0392264f9a8c44c00ed254019747b4b5 /src/archive.rs
parent9003b81813ff171edfc6101868c226c5c7d1957c (diff)
downloadarchivator-bd77f62e99a5300dfa52aef3a7040414b28ebfd6.tar.gz
archivator-bd77f62e99a5300dfa52aef3a7040414b28ebfd6.zip
Reset branch
Diffstat (limited to 'src/archive.rs')
-rw-r--r--src/archive.rs42
1 files changed, 0 insertions, 42 deletions
diff --git a/src/archive.rs b/src/archive.rs
deleted file mode 100644
index ef74de9..0000000
--- a/src/archive.rs
+++ /dev/null
@@ -1,42 +0,0 @@
1use crate::io::{ArchiveRead, ArchiveWrite};
2use crate::result::ArchiveResult;
3use std::fs::File;
4use std::path::Path;
5
6pub struct Archive<IO> {
7 pub io: IO,
8}
9
10impl<IO: ArchiveRead> Archive<IO> {
11 pub fn file_reader(path: impl AsRef<Path>) -> ArchiveResult<Self>
12 where
13 IO: ArchiveRead<Reader = File>,
14 {
15 Self::reader(File::open(path)?)
16 }
17
18 pub fn reader(reader: IO::Reader) -> ArchiveResult<Self> {
19 Ok(Self {
20 io: IO::new(reader)?,
21 })
22 }
23}
24
25impl<IO: ArchiveRead> Archive<IO> {}
26
27impl<IO: ArchiveWrite> Archive<IO> {
28 pub fn file_writer(path: impl AsRef<Path>) -> ArchiveResult<Self>
29 where
30 IO: ArchiveWrite<Writer = File>,
31 {
32 Self::writer(File::create(path)?)
33 }
34
35 pub fn writer(writer: IO::Writer) -> ArchiveResult<Self> {
36 Ok(Self {
37 io: IO::new(writer)?,
38 })
39 }
40}
41
42impl<IO: ArchiveWrite> Archive<IO> {}