pub struct JsValue { /* private fields */ }Expand description
An opaque reference to a JavaScript heap object.
This type is the wry-bindgen equivalent of wasm-bindgen’s JsValue.
It represents any JavaScript value and is used as the base type for
all imported JS types.
JsValue is intentionally opaque - you cannot inspect or create values directly. All values come from JavaScript via the IPC protocol.
Unlike wasm-bindgen which runs in a single-threaded Wasm environment, this implementation uses the IPC protocol to communicate with JS.
Implementations§
Source§impl JsValue
impl JsValue
Sourcepub fn id(&self) -> u64
pub fn id(&self) -> u64
Get the heap ID for this value.
This is used internally for encoding values to send to JS.
Sourcepub fn unchecked_into_f64(&self) -> f64
pub fn unchecked_into_f64(&self) -> f64
Returns the value as f64 without type checking. Used by serde-wasm-bindgen for numeric conversions.
Sourcepub fn has_type<T: JsCast>(&self) -> bool
pub fn has_type<T: JsCast>(&self) -> bool
Check if this value is an instance of a specific JS type.
Sourcepub fn into_abi(self) -> u32
pub fn into_abi(self) -> u32
Get the internal ABI representation (heap index), consuming self. This is used by the convert module for low-level interop. Returns u32 for wasm-bindgen compatibility.
Sourcepub fn bigint_from_str(s: &str) -> JsValue
pub fn bigint_from_str(s: &str) -> JsValue
Creates a JS value which is a bigint from a string representing a number.
Source§impl JsValue
impl JsValue
Sourcepub fn checked_div(&self, rhs: &Self) -> Self
pub fn checked_div(&self, rhs: &Self) -> Self
Checked division.
Sourcepub fn unsigned_shr(&self, rhs: &Self) -> u32
pub fn unsigned_shr(&self, rhs: &Self) -> u32
Unsigned right shift.
Sourcepub fn is_function(&self) -> bool
pub fn is_function(&self) -> bool
Check if this value is a function.
Sourcepub fn is_undefined(&self) -> bool
pub fn is_undefined(&self) -> bool
Check if this value is undefined.
Sourcepub fn is_null_or_undefined(&self) -> bool
pub fn is_null_or_undefined(&self) -> bool
Check if this value is null or undefined.
Sourcepub fn js_in(&self, obj: &JsValue) -> bool
pub fn js_in(&self, obj: &JsValue) -> bool
Check if this value has a property with the given name.
Sourcepub fn as_debug_string(&self) -> String
pub fn as_debug_string(&self) -> String
Get a debug string representation of the value.
Trait Implementations§
Source§impl BatchableResult for JsValue
impl BatchableResult for JsValue
Source§impl BinaryDecode for JsValue
impl BinaryDecode for JsValue
fn decode(_decoder: &mut DecodedData<'_>) -> Result<Self, DecodeError>
Source§impl BinaryEncode for JsValue
impl BinaryEncode for JsValue
fn encode(self, encoder: &mut EncodedData)
Source§impl EncodeTypeDef for JsValue
impl EncodeTypeDef for JsValue
Source§fn encode_type_def(buf: &mut Vec<u8>)
fn encode_type_def(buf: &mut Vec<u8>)
Source§impl JsCast for JsValue
Implement JsCast for JsValue itself (identity cast)
impl JsCast for JsValue
Implement JsCast for JsValue itself (identity cast)
Source§fn instanceof(_val: &JsValue) -> bool
fn instanceof(_val: &JsValue) -> bool
Source§fn unchecked_from_js(val: JsValue) -> Self
fn unchecked_from_js(val: JsValue) -> Self
Source§fn unchecked_from_js_ref(val: &JsValue) -> &Self
fn unchecked_from_js_ref(val: &JsValue) -> &Self
Source§fn is_type_of(val: &JsValue) -> bool
fn is_type_of(val: &JsValue) -> bool
JsValue provided
is a value of this type. Read moreSource§fn has_type<T>(&self) -> boolwhere
T: JsCast,
fn has_type<T>(&self) -> boolwhere
T: JsCast,
T. Read moreSource§fn dyn_into<T>(self) -> Result<T, Self>where
T: JsCast,
fn dyn_into<T>(self) -> Result<T, Self>where
T: JsCast,
Source§fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
Source§fn is_instance_of<T>(&self) -> boolwhere
T: JsCast,
fn is_instance_of<T>(&self) -> boolwhere
T: JsCast,
T. Read more