diff options
Diffstat (limited to 'src/format/mod.rs')
-rw-r--r-- | src/format/mod.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/format/mod.rs b/src/format/mod.rs new file mode 100644 index 0000000..9f6d30d --- /dev/null +++ b/src/format/mod.rs @@ -0,0 +1,17 @@ +//! Traits and structs for conversion between various formats. +//! As the source format may not provide the same information as the +//! target format, all formats must allow for omittable information. + +use std::io::{ self, BufRead, Write }; + +use log::Event; + +pub mod weechat3; + +pub trait Encode<W> where W: Write { + fn encode(&self, output: W, event: &Event) -> io::Result<()>; +} + +pub trait Decode<R, O> where R: BufRead, O: Iterator<Item = ::Result<Event>> { + fn decode(&mut self, input: R) -> O; +} |