Trait mozjs::gc::RootKind

source ·
pub trait RootKind {
    type Vtable;

    const VTABLE: Self::Vtable;
    const KIND: RootKind;
}
Expand description

A trait for JS types that can be registered as roots.

Required Associated Types§

Required Associated Constants§

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl RootKind for *mut BigInt

source§

type Vtable = ()

source§

const VTABLE: <*mut BigInt as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::BigInt

source§

impl RootKind for *mut Symbol

source§

type Vtable = ()

source§

const VTABLE: <*mut Symbol as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::Symbol

source§

impl RootKind for *mut JSFunction

source§

type Vtable = ()

source§

const VTABLE: <*mut JSFunction as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::Object

source§

impl RootKind for *mut JSObject

source§

type Vtable = ()

source§

const VTABLE: <*mut JSObject as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::Object

source§

impl RootKind for *mut JSScript

source§

type Vtable = ()

source§

const VTABLE: <*mut JSScript as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::Script

source§

impl RootKind for *mut JSString

source§

type Vtable = ()

source§

const VTABLE: <*mut JSString as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::String

Implementors§

source§

impl RootKind for PropertyKey

source§

type Vtable = ()

source§

const VTABLE: <PropertyKey as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::Id

source§

impl RootKind for Value

source§

type Vtable = ()

source§

const VTABLE: <Value as RootKind>::Vtable = ()

source§

const KIND: RootKind = JS::RootKind::Value

source§

impl<T> RootKind for T
where T: TraceableTrace,

source§

type Vtable = *const RootedVFTable

source§

const VTABLE: <T as RootKind>::Vtable = _

source§

const KIND: RootKind = JS::RootKind::Traceable