pub struct Gc<T>{ /* private fields */ }
Expand description
! Smart pointer to GCed data. See the module-level documentation for more details.
Implementations§
Trait Implementations§
Source§impl Callable for Gc<NativeFunction>
impl Callable for Gc<NativeFunction>
Source§impl From<Gc<NamespaceEnv>> for ModuleIdent
impl From<Gc<NamespaceEnv>> for ModuleIdent
Source§fn from(env: Gc<NamespaceEnv>) -> Self
fn from(env: Gc<NamespaceEnv>) -> Self
Converts to this type from the input type.
Source§impl<F> MetaObject for Gc<F>
impl<F> MetaObject for Gc<F>
fn type_tag(&self) -> Type
fn invoke(&self, args: &[Variant]) -> Option<ExecResult<Call>>
fn cmp_eq(&self, other: &Variant) -> Option<ExecResult<bool>>
fn fmt_repr(&self) -> ExecResult<StringValue>
fn type_name(&self) -> ExecResult<StringValue>
fn as_bool(&self) -> ExecResult<bool>
fn as_bits(&self) -> Option<ExecResult<IntType>>
fn as_int(&self) -> Option<ExecResult<IntType>>
fn as_float(&self) -> Option<ExecResult<FloatType>>
fn iter_init(&self) -> Option<ExecResult<IterState>>
fn iter_next(&self, state: &Variant) -> Option<ExecResult<Variant>>
fn iter_get(&self, state: &Variant) -> Option<ExecResult<Variant>>
fn len(&self) -> Option<ExecResult<usize>>
fn op_neg(&self) -> Option<ExecResult<Variant>>
fn op_pos(&self) -> Option<ExecResult<Variant>>
fn op_inv(&self) -> Option<ExecResult<Variant>>
fn op_mul(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rmul(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_div(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rdiv(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_mod(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rmod(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_add(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_radd(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_sub(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rsub(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_and(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rand(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_xor(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rxor(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_or(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_ror(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_shl(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rshl(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_shr(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rshr(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn cmp_lt(&self, other: &Variant) -> Option<ExecResult<bool>>
fn cmp_le(&self, other: &Variant) -> Option<ExecResult<bool>>
Source§impl MetaObject for Gc<RuntimeError>
impl MetaObject for Gc<RuntimeError>
fn type_tag(&self) -> Type
fn fmt_repr(&self) -> ExecResult<StringValue>
fn type_name(&self) -> ExecResult<StringValue>
fn as_bool(&self) -> ExecResult<bool>
fn as_bits(&self) -> Option<ExecResult<IntType>>
fn as_int(&self) -> Option<ExecResult<IntType>>
fn as_float(&self) -> Option<ExecResult<FloatType>>
fn iter_init(&self) -> Option<ExecResult<IterState>>
fn iter_next(&self, state: &Variant) -> Option<ExecResult<Variant>>
fn iter_get(&self, state: &Variant) -> Option<ExecResult<Variant>>
fn len(&self) -> Option<ExecResult<usize>>
fn invoke(&self, args: &[Variant]) -> Option<ExecResult<Call>>
fn op_neg(&self) -> Option<ExecResult<Variant>>
fn op_pos(&self) -> Option<ExecResult<Variant>>
fn op_inv(&self) -> Option<ExecResult<Variant>>
fn op_mul(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rmul(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_div(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rdiv(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_mod(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rmod(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_add(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_radd(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_sub(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rsub(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_and(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rand(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_xor(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rxor(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_or(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_ror(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_shl(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rshl(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_shr(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rshr(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn cmp_eq(&self, other: &Variant) -> Option<ExecResult<bool>>
fn cmp_lt(&self, other: &Variant) -> Option<ExecResult<bool>>
fn cmp_le(&self, other: &Variant) -> Option<ExecResult<bool>>
Source§impl MetaObject for Gc<dyn UserIterator>
impl MetaObject for Gc<dyn UserIterator>
fn type_tag(&self) -> Type
fn fmt_repr(&self) -> ExecResult<StringValue>
fn cmp_eq(&self, other: &Variant) -> Option<ExecResult<bool>>
fn iter_get(&self, state: &Variant) -> Option<ExecResult<Variant>>
fn iter_next(&self, state: &Variant) -> Option<ExecResult<Variant>>
fn iter_init(&self) -> Option<ExecResult<IterState>>
fn type_name(&self) -> ExecResult<StringValue>
fn as_bool(&self) -> ExecResult<bool>
fn as_bits(&self) -> Option<ExecResult<IntType>>
fn as_int(&self) -> Option<ExecResult<IntType>>
fn as_float(&self) -> Option<ExecResult<FloatType>>
fn len(&self) -> Option<ExecResult<usize>>
fn invoke(&self, args: &[Variant]) -> Option<ExecResult<Call>>
fn op_neg(&self) -> Option<ExecResult<Variant>>
fn op_pos(&self) -> Option<ExecResult<Variant>>
fn op_inv(&self) -> Option<ExecResult<Variant>>
fn op_mul(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rmul(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_div(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rdiv(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_mod(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rmod(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_add(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_radd(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_sub(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rsub(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_and(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rand(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_xor(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rxor(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_or(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_ror(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_shl(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rshl(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn op_shr(&self, rhs: &Variant) -> Option<ExecResult<Variant>>
fn op_rshr(&self, lhs: &Variant) -> Option<ExecResult<Variant>>
fn cmp_lt(&self, other: &Variant) -> Option<ExecResult<bool>>
fn cmp_le(&self, other: &Variant) -> Option<ExecResult<bool>>
impl<T> Copy for Gc<T>
Auto Trait Implementations§
impl<T> Freeze for Gc<T>where
T: ?Sized,
impl<T> !RefUnwindSafe for Gc<T>
impl<T> !Send for Gc<T>
impl<T> !Sync for Gc<T>
impl<T> Unpin for Gc<T>where
T: ?Sized,
impl<T> !UnwindSafe for Gc<T>
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