pub enum MarkerKind {
Posture(Posture),
ThreadSafety(ThreadSafety),
Abi(Abi),
Unchecked,
}Expand description
What a marker conveys to sema. Markers fall into independent “namespaces” — at most one posture marker may attach to a type, and (separately) at most one thread-safety marker. Future markers (e.g. capability tags, layout hints) plug in by adding a new variant without disturbing the existing ones.
Variants§
Posture(Posture)
ThreadSafety(ThreadSafety)
ADR-0084: thread-safety classification overrides. unsend is the
always-safe downgrade; checked_send and checked_sync are
user-asserted upgrades the compiler cannot verify on its own.
Abi(Abi)
ADR-0085: ABI markers — C ABI on fns, C layout on structs.
Unchecked
ADR-0088: marks a fn as unchecked — caller must wrap every call
in a checked { } block. Replaces the legacy unchecked keyword
(ADR-0028) and extends the unchecked surface to methods, interface
method signatures, and FFI imports under a single uniform spelling.
Trait Implementations§
Source§impl Clone for MarkerKind
impl Clone for MarkerKind
Source§fn clone(&self) -> MarkerKind
fn clone(&self) -> MarkerKind
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more