Struct gdnative_async::Context

source ·
pub struct Context { /* private fields */ }
Expand description

Context for creating yield-like futures in async methods.

Implementations§

source§

impl Context

source

pub fn until_resume(&self) -> Yield<Variant>

Returns a future that waits until the corresponding FunctionState object is manually resumed from GDScript, and yields the argument to resume or Nil if nothing is passed.

Calling this function will put the associated FunctionState-like object in resumable state, and will make it emit a resumable signal if it isn’t in that state already.

Only the most recent future created from this Context is guaranteed to resolve upon a resume call. If any previous futures weren’t awaited to completion, they are no longer guaranteed to resolve, and have unspecified, but safe behavior when polled.

source

pub fn signal<C>(
    &self,
    obj: TRef<'_, C>,
    signal: &str
) -> Result<Yield<Vec<Variant>>, GodotError>where
    C: SubClass<Object>,

Returns a future that waits until the specified signal is emitted, if connection succeeds. Yields any arguments emitted with the signal.

Only the most recent future created from this Context is guaranteed to resolve when the signal is emitted. If any previous futures weren’t awaited to completion, they are no longer guaranteed to resolve, and have unspecified, but safe behavior when polled.

Errors

If connection to the signal failed.

Auto Trait Implementations§

§

impl !RefUnwindSafe for Context

§

impl !Send for Context

§

impl !Sync for Context

§

impl Unpin for Context

§

impl !UnwindSafe for Context

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,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

const: unstable · 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.
const: unstable · 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.
const: unstable · source§

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

Performs the conversion.