MCPcopy Create free account
hub / github.com/PerroEngine/Perro / mount_dlc_archive

Function mount_dlc_archive

perro_source/io_stack/perro_io/src/asset_io.rs:151–170  ·  view source on GitHub ↗
(name: &str, archive_path: impl AsRef<Path>)

Source from the content-addressed store, hash-verified

149 state.root = Some(Arc::new(root));
150 state.root_has_res_dir = has_res_dir;
151 state.archive = archive;
152 Ok(())
153}
154
155/// Install a project root, panicking when an embedded archive is invalid.
156///
157/// Use [`try_set_project_root`] for untrusted or fallible startup paths.
158pub fn set_project_root(root: ProjectRoot) {
159 try_set_project_root(root).expect("Failed to open PerroAssets archive");
160}
161
162pub fn set_demo_asset_filter(active: bool, excludes: Vec<String>) {
163 let compiled: Option<Arc<[CompiledPathPattern]>> = (!excludes.is_empty()).then(|| {
164 excludes
165 .iter()
166 .map(|pattern| CompiledPathPattern::new(pattern))
167 .collect()
168 });
169 let mut state = PROJECT_ASSET_STATE
170 .write()
171 .expect("required value must be present");
172 state.demo = active;
173 state.demo_excludes = compiled;

Callers 2

reload_dlc_mountsMethod · 0.85

Calls 5

is_reserved_dlc_nameFunction · 0.85
cloneMethod · 0.80
as_refMethod · 0.45
insertMethod · 0.45
writeMethod · 0.45