thirtyfour::actions

Struct Actions

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

A list of action sequences to be performed via [Client::perform_actions()]

An ActionSequence is a sequence of actions of a specific type.

Multiple sequences can be represented as a table, where each row contains a sequence and each column is 1 “tick” of time. The duration of any given tick will be equal to the longest duration of any individual action in that column.

See the following example diagram:

  Tick ->              1         2                     3
|===================================================================
| KeyActions        |  Down   |  Up                 |  Pause  |
|-------------------------------------------------------------------
| PointerActions    |  Down   |  Pause (2 seconds)  |  Up     |
|-------------------------------------------------------------------
| (other sequence)  |  Pause  |  Pause              |  Pause  |
|===================================================================

At tick 1, both a KeyAction::Down and a PointerAction::Down are triggered simultaneously.

At tick 2, only a KeyAction::Up is triggered. Meanwhile the pointer sequence has a PointerAction::Pause for 2 seconds. Note that tick 3 does not start until all of the actions from tick 2 have completed, including any pauses.

At tick 3, only a PointerAction::Up is triggered.

The bottom sequence is just to show that other sequences can be added. This could be any of NullActions, KeyActions or PointerActions. There is no theoretical limit to the number of sequences that can be specified.

Implementations§

Source§

impl Actions

Source

pub fn and(self, sequence: impl Into<ActionSequence>) -> Actions

Append the specified sequence to the list of sequences.

Trait Implementations§

Source§

impl Debug for Actions

Source§

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

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

impl Default for Actions

Source§

fn default() -> Actions

Returns the “default value” for a type. Read more
Source§

impl<T> From<T> for Actions
where T: Into<ActionSequence>,

Source§

fn from(sequence: T) -> Actions

Converts to this type from the input type.
Source§

impl<T> From<Vec<T>> for Actions
where T: Into<ActionSequence>,

Source§

fn from(sequences: Vec<T>) -> Actions

Converts to this type from the input type.

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

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

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

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more