Enum State

Source
pub enum State {
    Inactive,
    SettingUp,
    TearingDown,
    AwaitingRemote(BoxFuture<'static, Result<Connection, ConnectError>>),
    Active(Vigil<Active>),
}

Variants§

§

Inactive

No call is in progress.

§

SettingUp

A call has been made active, and we are negotiating codecs before setting up the SCO connection. This state prevents a race in the AG where the call has been made active but SCO not yet set up, and the AG peer task, seeing that the connection is not Active, attempts to set up the SCO connection a second time,

§

TearingDown

The HF has closed the remote SCO connection so we are waiting for the call to be set transferred to AG. This state prevents a race in the AG where the SCO connection has been torn down but the call not yet set to inactive by the call manager, so the peer task attempts to mark the call as inactive a second time.

§

AwaitingRemote(BoxFuture<'static, Result<Connection, ConnectError>>)

A call is transferred to the AG and we are waiting for the HF to initiate a SCO connection.

§

Active(Vigil<Active>)

A call is active and so is the SCO connection.

Implementations§

Source§

impl State

Source

pub fn is_active(&self) -> bool

Source

pub fn on_connected<'a>( &'a mut self, ) -> impl Future<Output = Result<Connection, ConnectError>> + FusedFuture + 'a

Source

pub fn on_closed<'a>( &'a self, ) -> impl Future<Output = ()> + FusedFuture + 'static

Trait Implementations§

Source§

impl Debug for State

Source§

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

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

impl Default for State

Source§

fn default() -> State

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

impl Display for State

Source§

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

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

impl Unit for State

Source§

type Data = Node

This associated type owns a subtree (either a property or a node) of a parent inspect node. May be nested. When dropped, the subtree is detached from the parent. Default is required such that a detached state can be constructed. The base inspect node and property types implement default.
Source§

fn inspect_create(&self, parent: &Node, name: impl AsRef<str>) -> Self::Data

Insert an inspect subtree at parent[name] with values from self and return the inspect data.
Source§

fn inspect_update(&self, data: &mut Self::Data)

Update the inspect subtree owned by the inspect data with values from self.

Auto Trait Implementations§

§

impl Freeze for State

§

impl !RefUnwindSafe for State

§

impl !Send for State

§

impl !Sync for State

§

impl Unpin for State

§

impl !UnwindSafe for State

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
§

impl<T> DebugExt for T
where T: Debug,

§

fn debug(&self) -> String

§

impl<T, D> Encode<Ambiguous1, D> for T
where D: ResourceDialect,

§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
§

impl<T, D> Encode<Ambiguous2, D> for T
where D: ResourceDialect,

§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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

Source§

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

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> VertexId for T
where T: Display,

§

fn get_id(&self) -> Cow<'_, str>

Fetches the ID of a vertex, which must have a string representation.
§

impl<St> WithTag for St

§

fn tagged<T>(self, tag: T) -> Tagged<T, St>

Produce a new stream from this one which yields item tupled with a constant tag