pub enum Step {
Pending,
Ambiguous {
timeout_at: Duration,
},
Resolved(PageAction),
Reject,
EditModeActive,
}Expand description
Result of feeding one chord to the engine.
Variants§
Pending
Engine consumed the chord but doesn’t have a match yet. Caller should keep feeding.
Ambiguous
Engine has an ambiguous prefix — exact action present here,
but a longer binding could still match. If tick(now) is
called past timeout_at the shorter action fires.
Resolved(PageAction)
An action resolved. Engine has reset its pending buffer and any count/register state attached to it.
Reject
Chord didn’t extend any binding. Engine reset; caller may forward the original chord(s) to the page if desired.
EditModeActive
Edit-mode is active; the trie was bypassed. Caller should
route subsequent chords through
Engine::feed_edit_mode_key.
Trait Implementations§
impl Eq for Step
impl StructuralPartialEq for Step
Auto Trait Implementations§
impl Freeze for Step
impl RefUnwindSafe for Step
impl Send for Step
impl Sync for Step
impl Unpin for Step
impl UnsafeUnpin for Step
impl UnwindSafe for Step
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more