pub enum Value<'gc> {
Null,
Bool(bool),
Int(i64),
Float(f64),
Str(Str<'gc>),
Table(Table<'gc>),
Function(Function<'gc>),
UserData(AnyUserData<'gc>),
Error(GcError<'gc>),
}Expand description
Enum of all lucia values.
Variants§
Null
null - A null value.
Bool(bool)
bool - A true / false value.
Int(i64)
int - A 64-bit integer.
Float(f64)
float - A 64-bit floating point number.
Str(Str<'gc>)
str - A UTF-8 string.
Table(Table<'gc>)
table - A table.
Function(Function<'gc>)
function - A function.
UserData(AnyUserData<'gc>)
userdata - An UserData.
Error(GcError<'gc>)
error - An error.
Implementations§
Trait Implementations§
Source§impl<'gc> Collect for Value<'gc>
impl<'gc> Collect for Value<'gc>
Source§fn needs_trace() -> bool
fn needs_trace() -> bool
As an optimization, if this type can never hold a
Gc pointer and trace is unnecessary
to call, you may implement this method and return false. The default implementation returns
true, signaling that Collect::trace must be called.Source§fn trace(&self, cc: &Collection)
fn trace(&self, cc: &Collection)
Must call
Collect::trace on all held Gc pointers. If this type holds inner types that
implement Collect, a valid implementation would simply call Collect::trace on all the
held values to ensure this.Source§impl<'gc> From<AnyCallback<'gc>> for Value<'gc>
impl<'gc> From<AnyCallback<'gc>> for Value<'gc>
Source§fn from(v: AnyCallback<'gc>) -> Value<'gc>
fn from(v: AnyCallback<'gc>) -> Value<'gc>
Converts to this type from the input type.
Source§impl<'gc> FromIterator<Value<'gc>> for TableEntries<'gc>
impl<'gc> FromIterator<Value<'gc>> for TableEntries<'gc>
Source§impl<'gc> Stashable<'gc> for Value<'gc>
impl<'gc> Stashable<'gc> for Value<'gc>
type Stashed = StaticValue
fn stash(self, roots: &DynamicRootSet<'gc>, mc: &Mutation<'gc>) -> Self::Stashed
impl<'gc> Copy for Value<'gc>
impl<'gc> Eq for Value<'gc>
Auto Trait Implementations§
impl<'gc> Freeze for Value<'gc>
impl<'gc> !RefUnwindSafe for Value<'gc>
impl<'gc> !Send for Value<'gc>
impl<'gc> !Sync for Value<'gc>
impl<'gc> Unpin for Value<'gc>
impl<'gc> !UnwindSafe for Value<'gc>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.