[][src]Struct brioche_ducc::Object

pub struct Object<'ducc>(_);

Reference to a JavaScript object (guaranteed to not be an array or function).

Methods

impl<'ducc> Object<'ducc>[src]

pub fn get<K: ToValue<'ducc>, V: FromValue<'ducc>>(&self, key: K) -> Result<V>[src]

Get an object property value using the given key. Returns Value::Undefined if no property with the key exists.

Errors

This function returns an error if:

  • ToValue::to_value fails for the key
  • The ToPropertyKey implementation for the key fails

pub fn set<K: ToValue<'ducc>, V: ToValue<'ducc>>(
    &self,
    key: K,
    value: V
) -> Result<()>
[src]

Sets an object property using the given key and value.

Errors

This function returns an error if:

  • ToValue::to_value fails for either the key or the value
  • The ToPropertyKey implementation for the key fails

pub fn remove<K: ToValue<'ducc>>(&self, key: K) -> Result<()>[src]

Removes the given key from the object. This function does nothing if the property does not exist.

Errors

This function returns an error if:

  • ToValue::to_value fails for the key
  • The ToPropertyKey implementation for the key fails

pub fn contains_key<K: ToValue<'ducc>>(&self, key: K) -> Result<bool>[src]

Returns true if the given key is a property of the object, false otherwise.

Errors

This function returns an error if:

  • ToValue::to_value fails for the key
  • The ToPropertyKey implementation for the key fails

pub fn len(&self) -> Result<usize>[src]

Returns the number of elements in the object using the calculation Math.floor(ToNumber(obj.length)). This function can return an error if the ToNumber implementation fails or if the length getter fails. Returns Ok(0) if the calculation returns a number (a floating point in JavaScript land) outside of the range of usize.

pub fn call_prop<K, A, R>(&self, key: K, args: A) -> Result<R> where
    K: ToValue<'ducc>,
    A: ToValues<'ducc>,
    R: FromValue<'ducc>, 
[src]

Calls the function at the key with the given arguments, with this set to the object. Returns an error if the value at the key is not a function.

Important traits for Properties<'ducc, K, V>
pub fn properties<K: FromValue<'ducc>, V: FromValue<'ducc>>(
    self
) -> Properties<'ducc, K, V>
[src]

Returns an iterator over the object's keys and values, acting like a for-in loop: own and inherited enumerable properties are included, and enumeration order follows the ES2015 OwnPropertyKeys enumeration order, applied for each inheritance level.

Trait Implementations

impl<'ducc> Clone for Object<'ducc>[src]

impl<'ducc> Debug for Object<'ducc>[src]

impl<'ducc> FromValue<'ducc> for Object<'ducc>[src]

impl<'ducc> ToValue<'ducc> for Object<'ducc>[src]

Auto Trait Implementations

impl<'ducc> RefUnwindSafe for Object<'ducc>

impl<'ducc> !Send for Object<'ducc>

impl<'ducc> !Sync for Object<'ducc>

impl<'ducc> Unpin for Object<'ducc>

impl<'ducc> UnwindSafe for Object<'ducc>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.