Expand description
Marker types for invariance, store side-effects, and base types.
Structs§
- Phantom
Store Effect - A zero-sized phantom marker for indicating that the containing type has a side effect when storing (e.g. it has an invariant pointer).
Traits§
- Base
Type - Invariant
- Indicates that a type is invariant and thus can be stored in an object.
- Store
Copy - The type may move between objects without side effects. Notably, this is not implemented for invariant pointers or types that contain them, since an invariant pointer may reference an object’s Foreign Object Table. This is a little restrictive (technically intra-object pointers are safe to move intra-object), but it’s the best we can do at compile-time.