pub trait Userdata: Downcast + Trace + Debug + Send + Sync {
// Provided method
fn deep_clone<'gc>(
&self,
deep_cloner: &'gc mut Cloner<'_>
) -> Result<GcRef<'gc, Box<dyn Userdata>>> { ... }
}
Provided Methods§
fn deep_clone<'gc>( &self, deep_cloner: &'gc mut Cloner<'_> ) -> Result<GcRef<'gc, Box<dyn Userdata>>>
Implementations§
source§impl dyn Userdata
impl dyn Userdata
sourcepub fn is<__T: Userdata>(&self) -> bool
pub fn is<__T: Userdata>(&self) -> bool
Returns true if the trait object wraps an object of type __T
.
sourcepub fn downcast<__T: Userdata>(self: Box<Self>) -> Result<Box<__T>, Box<Self>>
pub fn downcast<__T: Userdata>(self: Box<Self>) -> Result<Box<__T>, Box<Self>>
Returns a boxed object from a boxed trait object if the underlying object is of type
__T
. Returns the original boxed trait if it isn’t.
sourcepub fn downcast_rc<__T: Userdata>(self: Rc<Self>) -> Result<Rc<__T>, Rc<Self>>
pub fn downcast_rc<__T: Userdata>(self: Rc<Self>) -> Result<Rc<__T>, Rc<Self>>
Returns an Rc
-ed object from an Rc
-ed trait object if the underlying object is of
type __T
. Returns the original Rc
-ed trait if it isn’t.
sourcepub fn downcast_ref<__T: Userdata>(&self) -> Option<&__T>
pub fn downcast_ref<__T: Userdata>(&self) -> Option<&__T>
Returns a reference to the object within the trait object if it is of type __T
, or
None
if it isn’t.
sourcepub fn downcast_mut<__T: Userdata>(&mut self) -> Option<&mut __T>
pub fn downcast_mut<__T: Userdata>(&mut self) -> Option<&mut __T>
Returns a mutable reference to the object within the trait object if it is of type
__T
, or None
if it isn’t.