Struct js_sys::Function[][src]

#[repr(transparent)]
pub struct Function { /* fields omitted */ }

Implementations

impl Function[src]

pub fn new_with_args(args: &str, body: &str) -> Function[src]

The Function constructor creates a new Function object. Calling the constructor directly can create functions dynamically, but suffers from security and similar (but far less significant) performance issues similar to eval. However, unlike eval, the Function constructor allows executing code in the global scope, prompting better programming habits and allowing for more efficient code minification.

MDN documentation

impl Function[src]

pub fn new_no_args(body: &str) -> Function[src]

The Function constructor creates a new Function object. Calling the constructor directly can create functions dynamically, but suffers from security and similar (but far less significant) performance issues similar to eval. However, unlike eval, the Function constructor allows executing code in the global scope, prompting better programming habits and allowing for more efficient code minification.

MDN documentation

impl Function[src]

pub fn apply(&self, context: &JsValue, args: &Array) -> Result<JsValue, JsValue>[src]

The apply() method calls a function with a given this value, and arguments provided as an array (or an array-like object).

MDN documentation

impl Function[src]

pub fn call0(&self, context: &JsValue) -> Result<JsValue, JsValue>[src]

The call() method calls a function with a given this value and arguments provided individually.

MDN documentation

impl Function[src]

pub fn call1(
    &self,
    context: &JsValue,
    arg1: &JsValue
) -> Result<JsValue, JsValue>
[src]

The call() method calls a function with a given this value and arguments provided individually.

MDN documentation

impl Function[src]

pub fn call2(
    &self,
    context: &JsValue,
    arg1: &JsValue,
    arg2: &JsValue
) -> Result<JsValue, JsValue>
[src]

The call() method calls a function with a given this value and arguments provided individually.

MDN documentation

impl Function[src]

pub fn call3(
    &self,
    context: &JsValue,
    arg1: &JsValue,
    arg2: &JsValue,
    arg3: &JsValue
) -> Result<JsValue, JsValue>
[src]

The call() method calls a function with a given this value and arguments provided individually.

MDN documentation

impl Function[src]

pub fn bind(&self, context: &JsValue) -> Function[src]

The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.

MDN documentation

impl Function[src]

pub fn bind0(&self, context: &JsValue) -> Function[src]

The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.

MDN documentation

impl Function[src]

pub fn bind1(&self, context: &JsValue, arg1: &JsValue) -> Function[src]

The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.

MDN documentation

impl Function[src]

pub fn bind2(
    &self,
    context: &JsValue,
    arg1: &JsValue,
    arg2: &JsValue
) -> Function
[src]

The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.

MDN documentation

impl Function[src]

pub fn bind3(
    &self,
    context: &JsValue,
    arg1: &JsValue,
    arg2: &JsValue,
    arg3: &JsValue
) -> Function
[src]

The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.

MDN documentation

impl Function[src]

pub fn length(&self) -> u32[src]

The length property indicates the number of arguments expected by the function.

MDN documentation

impl Function[src]

pub fn name(&self) -> JsString[src]

A Function object’s read-only name property indicates the function’s name as specified when it was created or “anonymous” for functions created anonymously.

MDN documentation

impl Function[src]

pub fn to_string(&self) -> JsString[src]

The toString() method returns a string representing the source code of the function.

MDN documentation

impl Function[src]

pub fn try_from(val: &JsValue) -> Option<&Function>[src]

👎 Deprecated:

recommended to use dyn_ref instead which is now equivalent

Returns the Function value of this JS value if it’s an instance of a function.

If this JS value is not an instance of a function then this returns None.

Methods from Deref<Target = Object>

pub fn constructor(&self) -> Function[src]

The constructor property returns a reference to the Object constructor function that created the instance object.

MDN documentation

pub fn has_own_property(&self, property: &JsValue) -> bool[src]

The hasOwnProperty() method returns a boolean indicating whether the object has the specified property as its own property (as opposed to inheriting it).

MDN documentation

pub fn is_prototype_of(&self, value: &JsValue) -> bool[src]

The isPrototypeOf() method checks if an object exists in another object’s prototype chain.

MDN documentation

pub fn property_is_enumerable(&self, property: &JsValue) -> bool[src]

The propertyIsEnumerable() method returns a Boolean indicating whether the specified property is enumerable.

MDN documentation

pub fn to_locale_string(&self) -> JsString[src]

The toLocaleString() method returns a string representing the object. This method is meant to be overridden by derived objects for locale-specific purposes.

MDN documentation

pub fn to_string(&self) -> JsString[src]

The toString() method returns a string representing the object.

MDN documentation

pub fn value_of(&self) -> Object[src]

The valueOf() method returns the primitive value of the specified object.

MDN documentation

Methods from Deref<Target = JsValue>

pub const NULL: JsValue[src]

pub const UNDEFINED: JsValue[src]

pub const TRUE: JsValue[src]

pub const FALSE: JsValue[src]

pub fn as_f64(&self) -> Option<f64>[src]

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.

pub fn is_string(&self) -> bool[src]

Tests whether this JS value is a JS string.

pub fn as_string(&self) -> Option<String>[src]

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.

pub fn as_bool(&self) -> Option<bool>[src]

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.

pub fn is_null(&self) -> bool[src]

Tests whether this JS value is null

pub fn is_undefined(&self) -> bool[src]

Tests whether this JS value is undefined

pub fn is_symbol(&self) -> bool[src]

Tests whether the type of this JS value is symbol

pub fn is_object(&self) -> bool[src]

Tests whether typeof self == "object" && self !== null.

pub fn is_function(&self) -> bool[src]

Tests whether the type of this JS value is function.

pub fn is_truthy(&self) -> bool[src]

Tests whether the value is “truthy”.

pub fn is_falsy(&self) -> bool[src]

Tests whether the value is “falsy”.

Trait Implementations

impl AsRef<Function> for Function[src]

fn as_ref(&self) -> &Function[src]

Performs the conversion.

impl AsRef<JsValue> for Function[src]

fn as_ref(&self) -> &JsValue[src]

Performs the conversion.

impl AsRef<Object> for Function[src]

fn as_ref(&self) -> &Object[src]

Performs the conversion.

impl Clone for Function[src]

fn clone(&self) -> Function[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Function[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl Deref for Function[src]

type Target = Object

The resulting type after dereferencing.

fn deref(&self) -> &Object[src]

Dereferences the value.

impl From<Function> for JsValue[src]

fn from(obj: Function) -> JsValue[src]

Performs the conversion.

impl From<Function> for Object[src]

fn from(obj: Function) -> Object[src]

Performs the conversion.

impl From<JsValue> for Function[src]

fn from(obj: JsValue) -> Function[src]

Performs the conversion.

impl FromWasmAbi for Function[src]

type Abi = <JsValue as FromWasmAbi>::Abi

The wasm ABI type that this converts from when coming back out from the ABI boundary. Read more

unsafe fn from_abi(js: Self::Abi) -> Self[src]

Recover a Self from Self::Abi. Read more

impl IntoWasmAbi for Function[src]

type Abi = <JsValue as IntoWasmAbi>::Abi

The wasm ABI type that this converts into when crossing the ABI boundary. Read more

fn into_abi(self) -> Self::Abi[src]

Convert self into Self::Abi so that it can be sent across the wasm ABI boundary. Read more

impl<'a> IntoWasmAbi for &'a Function[src]

type Abi = <&'a JsValue as IntoWasmAbi>::Abi

The wasm ABI type that this converts into when crossing the ABI boundary. Read more

fn into_abi(self) -> Self::Abi[src]

Convert self into Self::Abi so that it can be sent across the wasm ABI boundary. Read more

impl JsCast for Function[src]

fn instanceof(val: &JsValue) -> bool[src]

Performs a dynamic instanceof check to see whether the JsValue provided is an instance of this type. Read more

fn is_type_of(val: &JsValue) -> bool[src]

Performs a dynamic check to see whether the JsValue provided is a value of this type. Read more

fn unchecked_from_js(val: JsValue) -> Self[src]

Performs a zero-cost unchecked conversion from a JsValue into an instance of Self Read more

fn unchecked_from_js_ref(val: &JsValue) -> &Self[src]

Performs a zero-cost unchecked conversion from a &JsValue into an instance of &Self. Read more

fn has_type<T>(&self) -> bool where
    T: JsCast
[src]

Test whether this JS value has a type T. Read more

fn dyn_into<T>(self) -> Result<T, Self> where
    T: JsCast
[src]

Performs a dynamic cast (checked at runtime) of this value into the target type T. Read more

fn dyn_ref<T>(&self) -> Option<&T> where
    T: JsCast
[src]

Performs a dynamic cast (checked at runtime) of this value into the target type T. Read more

fn unchecked_into<T>(self) -> T where
    T: JsCast
[src]

Performs a zero-cost unchecked cast into the specified type. Read more

fn unchecked_ref<T>(&self) -> &T where
    T: JsCast
[src]

Performs a zero-cost unchecked cast into a reference to the specified type. Read more

fn is_instance_of<T>(&self) -> bool where
    T: JsCast
[src]

Test whether this JS value is an instance of the type T. Read more

impl OptionFromWasmAbi for Function[src]

fn is_none(abi: &Self::Abi) -> bool[src]

Tests whether the argument is a “none” instance. If so it will be deserialized as None, and otherwise it will be passed to FromWasmAbi. Read more

impl OptionIntoWasmAbi for Function[src]

fn none() -> Self::Abi[src]

Returns an ABI instance indicating “none”, which JS will interpret as the None branch of this option. Read more

impl<'a> OptionIntoWasmAbi for &'a Function[src]

fn none() -> Self::Abi[src]

Returns an ABI instance indicating “none”, which JS will interpret as the None branch of this option. Read more

impl PartialEq<Function> for Function[src]

fn eq(&self, other: &Function) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Function) -> bool[src]

This method tests for !=.

impl RefFromWasmAbi for Function[src]

type Abi = <JsValue as RefFromWasmAbi>::Abi

The wasm ABI type references to Self are recovered from.

type Anchor = ManuallyDrop<Function>

The type that holds the reference to 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. Read more

unsafe fn ref_from_abi(js: Self::Abi) -> Self::Anchor[src]

Recover a Self::Anchor from Self::Abi. Read more

impl WasmDescribe for Function[src]

impl Eq for Function[src]

impl StructuralEq for Function[src]

impl StructuralPartialEq for Function[src]

Auto Trait Implementations

impl RefUnwindSafe for Function

impl !Send for Function

impl !Sync for Function

impl Unpin for Function

impl UnwindSafe for Function

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> ReturnWasmAbi for T where
    T: IntoWasmAbi
[src]

type Abi = <T as IntoWasmAbi>::Abi

Same as IntoWasmAbi::Abi

pub fn return_abi(self) -> <T as ReturnWasmAbi>::Abi[src]

Same as IntoWasmAbi::into_abi, except that it may throw and never return in the case of Err. Read more

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

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.