Struct neon::handle::Handle [−][src]
#[repr(C)]pub struct Handle<'a, T: Managed + 'a> { /* fields omitted */ }
Expand description
A handle to a JavaScript value that is owned by the JavaScript engine.
Implementations
Safely upcast a handle to a supertype.
This method does not require an execution context because it only copies a handle.
Tests whether this value is an instance of the given type.
Example:
let v: Handle<JsValue> = cx.number(17).upcast();
v.is_a::<JsString, _>(&mut cx); // false
v.is_a::<JsNumber, _>(&mut cx); // true
v.is_a::<JsValue, _>(&mut cx); // true
Attempts to downcast a handle to another type, which may fail. A failure
to downcast does not throw a JavaScript exception, so it’s OK to
continue interacting with the JS engine if this method produces an Err
result.
Attempts to downcast a handle to another type, raising a JavaScript TypeError
exception on failure. This method is a convenient shorthand, equivalent to
self.downcast::<U>().or_throw::<C>(cx)
.
Trait Implementations
Auto Trait Implementations
impl<'a, T> RefUnwindSafe for Handle<'a, T> where
T: RefUnwindSafe,
impl<'a, T> UnwindSafe for Handle<'a, T> where
T: RefUnwindSafe + UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more