#[repr(transparent)]pub struct Resource { /* private fields */ }
Expand description
A Resource
is an object representing resources that have been
dropped and can be picked up.
Implementations§
source§impl Resource
impl Resource
sourcepub fn resource_type(&self) -> ResourceType
pub fn resource_type(&self) -> ResourceType
The type of resource this contains.
Methods from Deref<Target = RoomObject>§
sourcepub fn pos(&self) -> RoomPosition
pub fn pos(&self) -> RoomPosition
Position of the object.
Methods from Deref<Target = JsValue>§
pub const NULL: JsValue = JsValue{ idx: JSIDX_NULL, _marker: marker::PhantomData,}
pub const UNDEFINED: JsValue = JsValue{ idx: JSIDX_UNDEFINED, _marker: marker::PhantomData,}
pub const TRUE: JsValue = JsValue{ idx: JSIDX_TRUE, _marker: marker::PhantomData,}
pub const FALSE: JsValue = JsValue{ idx: JSIDX_FALSE, _marker: marker::PhantomData,}
sourcepub fn as_f64(&self) -> Option<f64>
pub fn as_f64(&self) -> Option<f64>
Returns the f64
value of this JS value if it’s an instance of a
number.
If this JS value is not an instance of a number then this returns
None
.
sourcepub fn as_string(&self) -> Option<String>
Available on crate feature std
only.
pub fn as_string(&self) -> Option<String>
std
only.If this JS value is a string value, this function copies the JS string
value into wasm linear memory, encoded as UTF-8, and returns it as a
Rust String
.
To avoid the copying and re-encoding, consider the
JsString::try_from()
function from js-sys
instead.
If this JS value is not an instance of a string or if it’s not valid
utf-8 then this returns None
.
UTF-16 vs UTF-8
JavaScript strings in general are encoded as UTF-16, but Rust strings
are encoded as UTF-8. This can cause the Rust string to look a bit
different than the JS string sometimes. For more details see the
documentation about the str
type which contains a few
caveats about the encodings.
sourcepub fn as_bool(&self) -> Option<bool>
pub fn as_bool(&self) -> Option<bool>
Returns the bool
value of this JS value if it’s an instance of a
boolean.
If this JS value is not an instance of a boolean then this returns
None
.
sourcepub fn is_undefined(&self) -> bool
pub fn is_undefined(&self) -> bool
Tests whether this JS value is undefined
sourcepub fn is_function(&self) -> bool
pub fn is_function(&self) -> bool
Tests whether the type of this JS value is function
.
sourcepub fn js_in(&self, obj: &JsValue) -> bool
pub fn js_in(&self, obj: &JsValue) -> bool
Applies the binary in
JS operator on the two JsValue
s.
sourcepub fn loose_eq(&self, other: &JsValue) -> bool
pub fn loose_eq(&self, other: &JsValue) -> bool
Compare two JsValue
s for equality, using the ==
operator in JS.
sourcepub fn unsigned_shr(&self, rhs: &JsValue) -> u32
pub fn unsigned_shr(&self, rhs: &JsValue) -> u32
Applies the binary >>>
JS operator on the two JsValue
s.
sourcepub fn checked_div(&self, rhs: &JsValue) -> JsValue
pub fn checked_div(&self, rhs: &JsValue) -> JsValue
Applies the binary /
JS operator on two JsValue
s, catching and returning any RangeError
thrown.
sourcepub fn pow(&self, rhs: &JsValue) -> JsValue
pub fn pow(&self, rhs: &JsValue) -> JsValue
Applies the binary **
JS operator on the two JsValue
s.
sourcepub fn lt(&self, other: &JsValue) -> bool
pub fn lt(&self, other: &JsValue) -> bool
Applies the binary <
JS operator on the two JsValue
s.
sourcepub fn le(&self, other: &JsValue) -> bool
pub fn le(&self, other: &JsValue) -> bool
Applies the binary <=
JS operator on the two JsValue
s.
sourcepub fn ge(&self, other: &JsValue) -> bool
pub fn ge(&self, other: &JsValue) -> bool
Applies the binary >=
JS operator on the two JsValue
s.
sourcepub fn gt(&self, other: &JsValue) -> bool
pub fn gt(&self, other: &JsValue) -> bool
Applies the binary >
JS operator on the two JsValue
s.
sourcepub fn unchecked_into_f64(&self) -> f64
pub fn unchecked_into_f64(&self) -> f64
Applies the unary +
JS operator on a JsValue
. Can throw.
Trait Implementations§
source§impl AsRef<RoomObject> for Resource
impl AsRef<RoomObject> for Resource
source§fn as_ref(&self) -> &RoomObject
fn as_ref(&self) -> &RoomObject
source§impl Deref for Resource
impl Deref for Resource
§type Target = RoomObject
type Target = RoomObject
source§fn deref(&self) -> &RoomObject
fn deref(&self) -> &RoomObject
source§impl From<Resource> for ObjectWithId
impl From<Resource> for ObjectWithId
source§fn from(v: Resource) -> ObjectWithId
fn from(v: Resource) -> ObjectWithId
source§impl From<Resource> for ObjectWithMaybeId
impl From<Resource> for ObjectWithMaybeId
source§fn from(v: Resource) -> ObjectWithMaybeId
fn from(v: Resource) -> ObjectWithMaybeId
source§impl From<Resource> for ObjectWithPosition
impl From<Resource> for ObjectWithPosition
source§fn from(v: Resource) -> ObjectWithPosition
fn from(v: Resource) -> ObjectWithPosition
source§impl From<Resource> for RoomObject
impl From<Resource> for RoomObject
source§fn from(obj: Resource) -> RoomObject
fn from(obj: Resource) -> RoomObject
source§impl From<Resource> for TypedRoomObject
impl From<Resource> for TypedRoomObject
source§fn from(v: Resource) -> TypedRoomObject
fn from(v: Resource) -> TypedRoomObject
source§impl FromWasmAbi for Resource
impl FromWasmAbi for Resource
source§impl<'a> IntoWasmAbi for &'a Resource
impl<'a> IntoWasmAbi for &'a Resource
source§impl IntoWasmAbi for Resource
impl IntoWasmAbi for Resource
source§impl JsCast for Resource
impl JsCast for Resource
source§fn instanceof(val: &JsValue) -> bool
fn instanceof(val: &JsValue) -> bool
instanceof
check to see whether the JsValue
provided is an instance of this type. Read moresource§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 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,
T
. Read moresource§fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
fn dyn_ref<T>(&self) -> Option<&T>where T: JsCast,
T
. Read moresource§fn unchecked_into<T>(self) -> Twhere
T: JsCast,
fn unchecked_into<T>(self) -> Twhere T: JsCast,
source§fn unchecked_ref<T>(&self) -> &Twhere
T: JsCast,
fn unchecked_ref<T>(&self) -> &Twhere T: JsCast,
source§impl LongRefFromWasmAbi for Resource
impl LongRefFromWasmAbi for Resource
source§impl OptionFromWasmAbi for Resource
impl OptionFromWasmAbi for Resource
source§impl<'a> OptionIntoWasmAbi for &'a Resource
impl<'a> OptionIntoWasmAbi for &'a Resource
source§impl OptionIntoWasmAbi for Resource
impl OptionIntoWasmAbi for Resource
source§impl RefFromWasmAbi for Resource
impl RefFromWasmAbi for Resource
§type Abi = <JsValue as RefFromWasmAbi>::Abi
type Abi = <JsValue as RefFromWasmAbi>::Abi
Self
are recovered from.§type Anchor = ManuallyDrop<Resource>
type Anchor = ManuallyDrop<Resource>
Self
for the duration of the
invocation of the function that has an &Self
parameter. This is
required to ensure that the lifetimes don’t persist beyond one function
call, and so that they remain anonymous.source§impl TryInto<Resource> for ObjectWithId
impl TryInto<Resource> for ObjectWithId
source§impl TryInto<Resource> for ObjectWithMaybeId
impl TryInto<Resource> for ObjectWithMaybeId
source§impl TryInto<Resource> for ObjectWithPosition
impl TryInto<Resource> for ObjectWithPosition
source§impl TryInto<Resource> for TypedRoomObject
impl TryInto<Resource> for TypedRoomObject
Auto Trait Implementations§
impl RefUnwindSafe for Resource
impl !Send for Resource
impl !Sync for Resource
impl Unpin for Resource
impl UnwindSafe for Resource
Blanket Implementations§
source§impl<T> HasId for Twhere
T: HasNativeId,
impl<T> HasId for Twhere T: HasNativeId,
source§fn raw_id(&self) -> RawObjectId
fn raw_id(&self) -> RawObjectId
source§impl<T> HasPosition for Twhere
T: AsRef<RoomObject>,
impl<T> HasPosition for Twhere T: AsRef<RoomObject>,
source§impl<T> HasTypedId<T> for Twhere
T: HasId + HasNativeId,
impl<T> HasTypedId<T> for Twhere T: HasId + HasNativeId,
source§impl<T> MaybeHasId for Twhere
T: MaybeHasNativeId,
impl<T> MaybeHasId for Twhere T: MaybeHasNativeId,
source§fn try_raw_id(&self) -> Option<RawObjectId>
fn try_raw_id(&self) -> Option<RawObjectId>
None
if the
object doesn’t currently have an id.source§impl<T> MaybeHasNativeId for Twhere
T: HasNativeId,
impl<T> MaybeHasNativeId for Twhere T: HasNativeId,
fn try_native_id(&self) -> Option<JsString>
source§impl<T> MaybeHasTypedId<T> for Twhere
T: MaybeHasId,
impl<T> MaybeHasTypedId<T> for Twhere T: MaybeHasId,
source§impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for Twhere T: IntoWasmAbi,
§type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
IntoWasmAbi::Abi
source§fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
IntoWasmAbi::into_abi
, except that it may throw and never
return in the case of Err
.