Enum modalkit::editing::cursor::CursorChoice
source · pub enum CursorChoice {
Single(Cursor),
Range(Cursor, Cursor, Cursor),
Empty,
}
Expand description
Result type for functions that provide the option of leaving the cursor in different places.
Variants§
Single(Cursor)
One choice of cursor placement.
Range(Cursor, Cursor, Cursor)
The start and end positions of an affected range, and a default choice that may or may not be inside the range.
Empty
No choices for cursor placement.
Implementations§
source§impl CursorChoice
impl CursorChoice
sourcepub fn get(&self, placement: CursorEnd) -> Option<&Cursor>
pub fn get(&self, placement: CursorEnd) -> Option<&Cursor>
Get a reference to the cursor that would be used in the CursorState returned by CursorChoice::resolve.
sourcepub fn resolve(self, placement: CursorEnd) -> Option<CursorState>
pub fn resolve(self, placement: CursorEnd) -> Option<CursorState>
Choose the cursor placement as indicated.
Trait Implementations§
source§impl Clone for CursorChoice
impl Clone for CursorChoice
source§fn clone(&self) -> CursorChoice
fn clone(&self) -> CursorChoice
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for CursorChoice
impl Debug for CursorChoice
source§impl Default for CursorChoice
impl Default for CursorChoice
source§fn default() -> CursorChoice
fn default() -> CursorChoice
Returns the “default value” for a type. Read more
source§impl From<Cursor> for CursorChoice
impl From<Cursor> for CursorChoice
source§impl PartialEq for CursorChoice
impl PartialEq for CursorChoice
source§fn eq(&self, other: &CursorChoice) -> bool
fn eq(&self, other: &CursorChoice) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for CursorChoice
impl StructuralPartialEq for CursorChoice
Auto Trait Implementations§
impl Freeze for CursorChoice
impl RefUnwindSafe for CursorChoice
impl Send for CursorChoice
impl Sync for CursorChoice
impl Unpin for CursorChoice
impl UnwindSafe for CursorChoice
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.