pub struct UtcProjection<'a> { /* private fields */ }Expand description
File-native projection of a Utc.
Wraps a reference to the source UTC. Unlike
UtiProjection, UTC has no single
dispatch table that must resolve at projection time; the typed
list dispatch (feats, classes, spells) happens at snapshot time
against their respective 2DAs. The projection still exists as the
stable handle that one or more UtcSnapshots build from, which
matters for cross-scope analysis (mod conflict, vanilla vs modded,
save / module VFS scoping).
Implementations§
Source§impl<'a> UtcProjection<'a>
impl<'a> UtcProjection<'a>
Sourcepub fn snapshot(&self, cache: &mut TwoDaCache<'_>) -> UtcSnapshot<'a>
pub fn snapshot(&self, cache: &mut TwoDaCache<'_>) -> UtcSnapshot<'a>
Resolves this projection against the given context, building a
UtcSnapshot.
Loads racialtypes.2da, appearance.2da, portraits.2da,
soundset.2da, classes.2da, spells.2da, and feat.2da
(each tolerated as missing) and caches the rows the UTC’s id
fields point at, plus the typed-variant dispatch of every
ClassList, SpecAbilityList, and FeatList entry. Multiple
snapshots can be built from one projection, each capturing its
own per-scope resolved data. The projection itself is
unchanged and remains reusable across calls.
Trait Implementations§
Source§impl<'a> Clone for UtcProjection<'a>
impl<'a> Clone for UtcProjection<'a>
Source§fn clone(&self) -> UtcProjection<'a>
fn clone(&self) -> UtcProjection<'a>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more