pub struct ObjTupleObject {
    pub class: TupleRef,
    pub values: Vec<ObjectRef>,
    memory_layout: MemoryLayout,
}
Expand description

A heterogenous, compile-time known collection of objects. Todo: Consider making the construction of tuples which share all but a few elements with another tuple cheaper.

Fields§

§class: TupleRef§values: Vec<ObjectRef>§memory_layout: MemoryLayout

Implementations§

source§

impl ObjTupleObject

source

pub fn new(values: Vec<ObjectRef>) -> Self

source

pub fn length(&self) -> usize

Trait Implementations§

source§

impl Debug for ObjTupleObject

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ObjTupleObject

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl HasClass for ObjTupleObject

source§

fn create_properties(ctx: &TypeContext) -> ObjectProperties

Returns all properties that belong to this class
source§

fn static_class(ctx: &TypeContext) -> ClassRef

Returns the static class that belongs to this Object
source§

impl ObjectPayload for ObjTupleObject

source§

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

The class specific to this object. Contains additionally to the class generics and the memory layout Read more
source§

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>)

Converts this object into json components so it can be rendered in minecraft chat
source§

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§

impl PartialEq for ObjTupleObject

source§

fn eq(&self, other: &ObjTupleObject) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for ObjTupleObject

source§

impl StructuralEq for ObjTupleObject

source§

impl StructuralPartialEq for ObjTupleObject

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

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,

§

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,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> ValidPayload for Twhere T: Any + Debug + Display + PartialEq + Eq + ObjectPayload + HasClass,

source§

fn as_any(&self) -> &(dyn Any + 'static)

source§

fn eq(&self, other: &ObjectRef) -> bool

Tests whether this object is equal to another object
source§

fn into_object(self, ctx: &TypeContext) -> ObjectRef

source§

fn get_static_class(&self, ctx: &TypeContext) -> Rc<Class>

source§

impl<T> ValidReturnType for Twhere T: ObjectPayload,

source§

fn into_result( self, ctx: &mut FunctionContext<'_, '_, '_> ) -> Option<Result<ObjectRef, LangErrorKind>>