Struct debris_llir::objects::obj_never::ObjNever
source · pub struct ObjNever;
Expand description
Signals that a block will never return.
The most interesting property of this type is its ability to match any other type.
This does not circumvent the entire type system, because any code that depends on
a value with the Never
type must not be evaluated (in llir).
Trait Implementations§
source§impl HasClass for ObjNever
impl HasClass for ObjNever
source§fn create_properties(ctx: &TypeContext) -> ObjectProperties
fn create_properties(ctx: &TypeContext) -> ObjectProperties
Returns all properties that belong to this class
source§fn static_class(ctx: &TypeContext) -> ClassRef
fn static_class(ctx: &TypeContext) -> ClassRef
Returns the static class that belongs to this Object
source§impl ObjectPayload for ObjNever
impl ObjectPayload for ObjNever
source§fn memory_layout(&self) -> &MemoryLayout
fn memory_layout(&self) -> &MemoryLayout
Returns the memory layout of this specific object
This method is usually only called once
source§fn create_class(&self, ctx: &TypeContext) -> ClassRef
fn create_class(&self, ctx: &TypeContext) -> ClassRef
The class specific to this object.
Contains additionally to the class generics and the memory layout Read more
source§fn runtime_class(&self, _ctx: &TypeContext) -> Option<ClassRef>
fn runtime_class(&self, _ctx: &TypeContext) -> Option<ClassRef>
Returns the class which the runtime encodable variant of this object would have.
Used to determine the class passed into the
promote
method of objects.source§fn get_property(&self, _ctx: &TypeContext, _ident: &Ident) -> Option<ObjectRef>
fn get_property(&self, _ctx: &TypeContext, _ident: &Ident) -> Option<ObjectRef>
May be overwritten by distinct payloads which carry properties
source§fn json_fmt(&self, buf: &mut Vec<JsonFormatComponent>)
fn json_fmt(&self, buf: &mut Vec<JsonFormatComponent>)
Converts this object into json components so it can be rendered in minecraft chat
source§impl PartialEq for ObjNever
impl PartialEq for ObjNever
impl Copy for ObjNever
impl Eq for ObjNever
impl StructuralEq for ObjNever
impl StructuralPartialEq for ObjNever
Auto Trait Implementations§
impl RefUnwindSafe for ObjNever
impl Send for ObjNever
impl Sync for ObjNever
impl Unpin for ObjNever
impl UnwindSafe for ObjNever
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
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.