Skip to main content

ImeSurroundingText

Struct ImeSurroundingText 

Source
pub struct ImeSurroundingText { /* private fields */ }
Expand description

Defines the text surrounding the caret

Implementations§

Source§

impl ImeSurroundingText

Source

pub const MAX_TEXT_BYTES: usize = 4000

The maximum size of the text excerpt.

Source

pub fn new( text: String, cursor: usize, anchor: usize, ) -> Result<Self, ImeSurroundingTextError>

Defines the text surrounding the cursor and the selection within it.

text: An excerpt of the text present in the text input field, excluding preedit. It must be limited to 4000 bytes due to backend constraints. cursor: The position of the caret, in bytes from the beginning of the string. `anchor: The position of the other end of selection, in bytes. With no selection, it should be the same as the cursor.

This may fail if the byte indices don’t fall on code point boundaries, or if the text is too long.

§Examples:

A text field containing foo|bar where | denotes the caret would correspond to a value obtained by:

let s = ImeSurroundingText::new("foobar".into(), 3, 3).unwrap();

Because preedit is excluded from the text string, a text field containing foo[baz|]bar where | denotes the caret and [baz|] is the preedit would be created in exactly the same way.

Source

pub fn into_text(self) -> String

Consumes the object, releasing the text string only. Use this call in the backend to avoid an extra clone when submitting the surrounding text.

Source

pub fn text(&self) -> &str

Source

pub fn cursor(&self) -> usize

Source

pub fn anchor(&self) -> usize

Trait Implementations§

Source§

impl Clone for ImeSurroundingText

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ImeSurroundingText

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Eq for ImeSurroundingText

Source§

impl Hash for ImeSurroundingText

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for ImeSurroundingText

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for ImeSurroundingText

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.