pub struct TypeInstance {
pub type_tag: Arc<str>,
pub fields: MapValue,
pub mutable: Option<GcPtr<Atom>>,
}Expand description
A record or reify instance. type_tag identifies the concrete type;
fields holds the key/value pairs (keyword → value).
Fields§
§type_tag: Arc<str>§fields: MapValue§mutable: Option<GcPtr<Atom>>Mutable deftype fields (^:unsynchronized-mutable /
^:volatile-mutable), held in an interior-mutable cell — an Atom over
a keyword→value map — so set! can update them in place. None for
defrecord, reify, and immutable deftypes. Instances are !Send,
so one shared cell needs no stronger volatility than an Atom.
Trait Implementations§
Source§impl Clone for TypeInstance
impl Clone for TypeInstance
Source§impl Debug for TypeInstance
impl Debug for TypeInstance
Source§impl Trace for TypeInstance
impl Trace for TypeInstance
fn trace(&self, visitor: &mut MarkVisitor)
fn gc_size_extra(&self) -> usize
Auto Trait Implementations§
impl !RefUnwindSafe for TypeInstance
impl !Send for TypeInstance
impl !Sync for TypeInstance
impl !UnwindSafe for TypeInstance
impl Freeze for TypeInstance
impl Unpin for TypeInstance
impl UnsafeUnpin for TypeInstance
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
Mutably borrows from an owned value. Read more