From 9f16507564354422b64e437e547d8403b22b70c7 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Thu, 27 Mar 2025 14:38:31 +0100 Subject: lay a foundation for subresource listings --- shared/src/loader.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 shared/src/loader.rs (limited to 'shared/src/loader.rs') diff --git a/shared/src/loader.rs b/shared/src/loader.rs new file mode 100644 index 0000000..0172265 --- /dev/null +++ b/shared/src/loader.rs @@ -0,0 +1,13 @@ +use crate::{helper::ReadWrite, packets::Resource}; +use anyhow::Result; +use std::io::Cursor; + +pub trait ResLoader: Send + Sync { + fn get_raw(&self, res: Resource) -> impl Future>> + Send; + fn get( + &self, + res: &Resource, + ) -> impl Future> + Send { + async { R::read(&mut Cursor::new(self.get_raw(res.to_generic()).await?)) } + } +} -- cgit v1.2.3-70-g09d2