Skip to main content

wowlab_engine_content/
catalog.rs

1//! Canonical engine-content catalog registration.
2
3use wowlab_engine_ports::ContentCatalog;
4
5use crate::{expansion_traits, generated};
6
7// docref:start spec-handlers-content-catalog
8static CONTENT_CATALOG: ContentCatalog = ContentCatalog::new(
9    generated::specs::SPEC_DESCRIPTORS,
10    generated::items::ITEM_RESOLVE_IDS,
11    expansion_traits::RESOLVE_DEPENDENCIES,
12);
13inventory::submit! { &CONTENT_CATALOG }
14// docref:end spec-handlers-content-catalog
15
16/// Force-link generated specs so the linker retains the catalog registration.
17#[doc(hidden)]
18#[inline(never)]
19#[must_use]
20pub fn force_link_generated_specs() -> usize {
21    generated::specs::force_link_generated_specs()
22}
23
24#[cfg(test)]
25mod tests;