rusty_vision/io/
writer.rs1use std::{
2 fs::File,
3 io::{BufWriter, Write},
4};
5
6use crate::{codec::encoders::Encoder, codec::Codex, error, image::Image};
7
8pub trait Writer {
9 fn write(&self, path: String, codec: Codex) -> Result<(), error::Error>;
10}
11
12impl Writer for Image {
13 fn write(&self, path: String, codec: Codex) -> Result<(), error::Error> {
14 let data = self.encode(codec)?;
15 let file = File::create(path).unwrap();
16 let mut writer = BufWriter::new(file);
17 writer.write_all(&data)?;
18
19 Ok(())
20 }
21}