oxygengine_core/assets/protocols/
text.rs1use crate::assets::protocol::{AssetLoadResult, AssetProtocol};
2use std::str::from_utf8;
3
4pub struct TextAsset(String);
5
6impl TextAsset {
7 pub fn get(&self) -> &str {
8 &self.0
9 }
10}
11
12pub struct TextAssetProtocol;
13
14impl AssetProtocol for TextAssetProtocol {
15 fn name(&self) -> &str {
16 "txt"
17 }
18
19 fn on_load(&mut self, data: Vec<u8>) -> AssetLoadResult {
20 let data = from_utf8(&data).unwrap().to_owned();
21 AssetLoadResult::Data(Box::new(TextAsset(data)))
22 }
23}