pub enum ActionInput<T> {
    Static(T),
    Dynamic(ActionObject),
}
Expand description

An input for an action.

Action inputs are not required to use this enum, but it is recommended to do so. It allows users to pass both static values and dependency outputs to actions.

Variants§

§

Static(T)

A static value.

§

Dynamic(ActionObject)

A value from an action.

Implementations§

source§

impl<T> ActionInput<T>

source

pub fn new_dynamic(value: ActionObject) -> Self

Creates a new input from an action.

source

pub fn new_static(value: T) -> Self

Creates a new input from a static value.

source

pub fn static_value(&self) -> Option<&T>

Returns the static value, or None if the input is an action.

source

pub fn dynamic(&self) -> Option<ActionObject>

Returns the action, or None if the input is static.

source

pub fn is_static(&self) -> bool

Returns true if the input is static.

source

pub fn is_dynamic(&self) -> bool

Returns true if the input is an action.

source

pub fn unwrap_static(&self) -> &T

Returns the static value, or panics if the input is an action.

source

pub fn unwrap_dynamic(&self) -> ActionObject

Returns the action, or panics if the input is static.

Trait Implementations§

source§

impl<T: Default> Default for ActionInput<T>

source§

fn default() -> Self

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

impl<T> From<T> for ActionInput<T>

source§

fn from(value: T) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for ActionInput<T>

§

impl<T> Send for ActionInput<T>where T: Send,

§

impl<T> Sync for ActionInput<T>where T: Sync,

§

impl<T> Unpin for ActionInput<T>where T: Unpin,

§

impl<T> !UnwindSafe for ActionInput<T>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<!> for T

source§

fn from(t: !) -> T

Converts to this type from the input type.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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 Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.