wgtk/space/section/mod.rs
1//! Compiled space sections structures definitions.
2
3use std::io::{self, Read, Seek};
4
5
6mod bwtb;
7mod bwst;
8mod bwal;
9mod bwcs;
10mod bwsg;
11mod bwt2;
12
13pub use bwtb::*;
14pub use bwst::*;
15pub use bwal::*;
16pub use bwcs::*;
17pub use bwsg::*;
18pub use bwt2::*;
19
20
21/// Alias for 4-bytes array, which is used to identify sections in a compiled space.
22pub type SectionId = [u8; 4];
23
24
25/// Common trait for section in compiled space binaries.
26pub trait Section: Sized {
27
28 const ID: &'static SectionId;
29
30 fn decode<R: Read + Seek>(read: &mut R) -> io::Result<Self>;
31
32}