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§
Trait Implementations§
Source§impl Unit for State
impl Unit for State
Source§type Data = Node
type Data = Node
Source§fn inspect_create(&self, parent: &Node, name: impl AsRef<str>) -> Self::Data
fn inspect_create(&self, parent: &Node, name: impl AsRef<str>) -> Self::Data
parent[name]
with values from self
and return
the inspect data.Source§fn inspect_update(&self, data: &mut Self::Data)
fn inspect_update(&self, data: &mut Self::Data)
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> 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
§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
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>
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>
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