pub struct ClassTemplateId(pub u32);Expand description
Classes plan (docs/superpowers/plans/2026-10-03-classes.md) Task 2’s
dense id for a class template (one per distinct (generic class or plain class definition, resolved parameter binding) — see classes.rs’s own
doc comment for the full rationale). Defined here, unconditionally,
rather than inside classes.rs itself (which is entirely
#[cfg(feature = "frontend")], like dedup/template above) for
exactly the reason TemplateId/TemplateKey already live here
instead of inside dedup.rs/template.rs: Task 3’s object-heap runtime
(vj-sim::objects) stores a ClassTemplateId in every live object’s
entry and must stay usable from vj-runtime, which depends on this
crate with default-features = false and therefore never reaches
sv-lang (see this crate’s Cargo.toml comment on that dependency
edge). A plain newtype has no sv-lang content to gate.
Tuple Fields§
§0: u32Trait Implementations§
Source§impl Clone for ClassTemplateId
impl Clone for ClassTemplateId
impl Copy for ClassTemplateId
Source§impl Debug for ClassTemplateId
impl Debug for ClassTemplateId
impl Eq for ClassTemplateId
Source§impl Hash for ClassTemplateId
impl Hash for ClassTemplateId
Source§impl PartialEq for ClassTemplateId
impl PartialEq for ClassTemplateId
impl StructuralPartialEq for ClassTemplateId
Auto Trait Implementations§
impl Freeze for ClassTemplateId
impl RefUnwindSafe for ClassTemplateId
impl Send for ClassTemplateId
impl Sync for ClassTemplateId
impl Unpin for ClassTemplateId
impl UnsafeUnpin for ClassTemplateId
impl UnwindSafe for ClassTemplateId
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.