oxygengine_core/assets/protocols/
binary.rs

1use crate::assets::protocol::{AssetLoadResult, AssetProtocol};
2
3pub struct BinaryAsset(Vec<u8>);
4
5impl BinaryAsset {
6    pub fn get(&self) -> &[u8] {
7        &self.0
8    }
9}
10
11pub struct BinaryAssetProtocol;
12
13impl AssetProtocol for BinaryAssetProtocol {
14    fn name(&self) -> &str {
15        "bin"
16    }
17
18    fn on_load(&mut self, data: Vec<u8>) -> AssetLoadResult {
19        AssetLoadResult::Data(Box::new(BinaryAsset(data)))
20    }
21}