[][src]Struct xterm_js_sys::xterm::UnicodeVersionProvider

#[repr(transparent)]pub struct UnicodeVersionProvider {
    obj: JsValue,
}

[EXPERIMENTAL] Unicode version provider.

Used to register custom Unicode versions with UnicodeHandling::register (obtained from Terminal::unicode).

(This is a duck-typed interface; its Rust dual is available here when the ext feature is enabled).

Fields

obj: JsValue

Implementations

impl UnicodeVersionProvider[src]

pub fn version(&self) -> Str[src]

Gets a string indicating the Unicode version provided.

impl UnicodeVersionProvider[src]

pub fn wcwidth(&self, codepoint: u32) -> WideCharacterWidth[src]

Unicode version dependent wcwidth implementation.

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]

This is supported on feature="ext" only.

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]

This is supported on feature="ext" only.

Tests whether this JS value is a JS string.

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

This is supported on feature="ext" 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.

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

This is supported on feature="ext" only.

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]

This is supported on feature="ext" only.

Tests whether this JS value is null

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

This is supported on feature="ext" only.

Tests whether this JS value is undefined

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

This is supported on feature="ext" only.

Tests whether the type of this JS value is symbol

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

This is supported on feature="ext" only.

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

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

This is supported on feature="ext" only.

Tests whether the type of this JS value is function.

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

This is supported on feature="ext" only.

Tests whether the value is "truthy".

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

This is supported on feature="ext" only.

Tests whether the value is "falsy".

Trait Implementations

impl AsRef<JsValue> for UnicodeVersionProvider[src]

impl AsRef<UnicodeVersionProvider> for UnicodeVersionProvider[src]

impl Clone for UnicodeVersionProvider[src]

impl Debug for UnicodeVersionProvider[src]

impl Deref for UnicodeVersionProvider[src]

type Target = JsValue

The resulting type after dereferencing.

impl From<JsValue> for UnicodeVersionProvider[src]

impl From<UnicodeVersionProvider> for JsValue[src]

impl FromWasmAbi for UnicodeVersionProvider[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

impl<X> IntoJsInterface<UnicodeVersionProvider> for X where
    X: XtermUnicodeVersionProvider,
    X: Clone + 'static, 
[src]

Anything that implements XtermUnicodeVersionProvider (and is Clone + 'static) gets an implementation of IntoJsInterface<UnicodeVersionProvider>.

fn to(self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

Converts the XtermUnicodeVersionProvider implementor into an instance of UnicodeVersionProvider (the corresponding JS interface).

fn by_ref(&self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

Converts the XtermUnicodeVersionProvider implementor into an instance of UnicodeVersionProvider (the corresponding JS interface) by reference.

impl IntoWasmAbi for UnicodeVersionProvider[src]

type Abi = <JsValue as IntoWasmAbi>::Abi

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

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

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

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

impl JsCast for UnicodeVersionProvider[src]

impl OptionFromWasmAbi for UnicodeVersionProvider[src]

impl OptionIntoWasmAbi for UnicodeVersionProvider[src]

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

impl RefFromWasmAbi for UnicodeVersionProvider[src]

type Abi = <JsValue as RefFromWasmAbi>::Abi

The wasm ABI type references to Self are recovered from.

type Anchor = ManuallyDrop<UnicodeVersionProvider>

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

impl WasmDescribe for UnicodeVersionProvider[src]

Auto Trait Implementations

impl RefUnwindSafe for UnicodeVersionProvider

impl !Send for UnicodeVersionProvider

impl !Sync for UnicodeVersionProvider

impl Unpin for UnicodeVersionProvider

impl UnwindSafe for UnicodeVersionProvider

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<X> IntoJsInterface<UnicodeVersionProvider> for X where
    X: XtermUnicodeVersionProvider + Clone + 'static, 
[src]

fn to(Self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

Converts the XtermUnicodeVersionProvider implementor into an instance of UnicodeVersionProvider (the corresponding JS interface).

fn by_ref(&Self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

Converts the XtermUnicodeVersionProvider implementor into an instance of UnicodeVersionProvider (the corresponding JS interface) by reference.

impl<X> IntoJsInterface<UnicodeVersionProvider> for X where
    X: XtermUnicodeVersionProvider + Clone + 'static, 
[src]

fn to(Self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

Converts the XtermUnicodeVersionProvider implementor into an instance of UnicodeVersionProvider (the corresponding JS interface).

fn by_ref(&Self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

Converts the XtermUnicodeVersionProvider implementor into an instance of UnicodeVersionProvider (the corresponding JS interface) by reference.

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

type Abi = <T as IntoWasmAbi>::Abi

Same as IntoWasmAbi::Abi

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.

impl<X> XtermUnicodeVersionProvider for X where
    X: Clone + 'static + AsRef<UnicodeVersionProvider>, 
[src]

fn version(&Self) -> String[src]

This is supported on feature="ext" only.

version for types that implement the UnicodeVersionProvider interface.

fn wcwidth(&Self, u32) -> WideCharacterWidth[src]

This is supported on feature="ext" only.

wcwidth for types that implement the UnicodeVersionProvider interface.

fn into_js_by_ref(&Self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

into_js_by_ref for types that implement the UnicodeVersionProvider interface.

This differs from the default impl in that it manages to avoid a Clone before effectively doing what into_js does.

fn into_js(Self) -> UnicodeVersionProvider[src]

This is supported on feature="ext" only.

into_js for types that implement the UnicodeVersionProvider interface.

This differs from the default impl in that it manages to avoid "double wrapping" the methods in the interface (types that impl UnicodeVersionProvider the wasm-bindgen way already have a wrapped up Object they can hand us).