#[non_exhaustive]pub enum VoipVersionId {
    V0,
    V1,
}Expand description
A Matrix VoIP version ID.
A VoipVersionId representing VoIP version 0 can be converted or deserialized from a UInt,
and can be converted or serialized back into a UInt as needed.
Custom room versions or ones that were introduced into the specification after this code was written are represented by a hidden enum variant. They can be converted or deserialized from a string slice, and can be converted or serialized back into a string as needed.
assert_eq!(VoipVersionId::try_from("1").unwrap().as_ref(), "1");For simplicity, version 0 has a string representation, but trying to construct a VoipVersionId
from a "0" string will not result in the V0 variant.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Implementations§
Trait Implementations§
Source§impl AsRef<str> for VoipVersionId
 
impl AsRef<str> for VoipVersionId
Source§impl Clone for VoipVersionId
 
impl Clone for VoipVersionId
Source§fn clone(&self) -> VoipVersionId
 
fn clone(&self) -> VoipVersionId
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
 
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from 
source. Read moreSource§impl Debug for VoipVersionId
 
impl Debug for VoipVersionId
Source§impl<'de> Deserialize<'de> for VoipVersionId
 
impl<'de> Deserialize<'de> for VoipVersionId
Source§fn deserialize<D>(
    deserializer: D,
) -> Result<VoipVersionId, <D as Deserializer<'de>>::Error>where
    D: Deserializer<'de>,
 
fn deserialize<D>(
    deserializer: D,
) -> Result<VoipVersionId, <D as Deserializer<'de>>::Error>where
    D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for VoipVersionId
 
impl Display for VoipVersionId
Source§impl From<&str> for VoipVersionId
 
impl From<&str> for VoipVersionId
Source§fn from(s: &str) -> VoipVersionId
 
fn from(s: &str) -> VoipVersionId
Converts to this type from the input type.
Source§impl From<String> for VoipVersionId
 
impl From<String> for VoipVersionId
Source§fn from(s: String) -> VoipVersionId
 
fn from(s: String) -> VoipVersionId
Converts to this type from the input type.
Source§impl From<VoipVersionId> for String
 
impl From<VoipVersionId> for String
Source§fn from(id: VoipVersionId) -> String
 
fn from(id: VoipVersionId) -> String
Converts to this type from the input type.
Source§impl Hash for VoipVersionId
 
impl Hash for VoipVersionId
Source§impl PartialEq for VoipVersionId
 
impl PartialEq for VoipVersionId
Source§impl Serialize for VoipVersionId
 
impl Serialize for VoipVersionId
Source§fn serialize<S>(
    &self,
    serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
    S: Serializer,
 
fn serialize<S>(
    &self,
    serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
    S: Serializer,
Serialize this value into the given Serde serializer. Read more
Source§impl TryFrom<UInt> for VoipVersionId
 
impl TryFrom<UInt> for VoipVersionId
impl Eq for VoipVersionId
impl StructuralPartialEq for VoipVersionId
Auto Trait Implementations§
impl Freeze for VoipVersionId
impl RefUnwindSafe for VoipVersionId
impl Send for VoipVersionId
impl Sync for VoipVersionId
impl Unpin for VoipVersionId
impl UnwindSafe for VoipVersionId
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
    T: Clone,
 
impl<T> CloneToUninit for Twhere
    T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
 
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
 
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
 
fn equivalent(&self, key: &K) -> bool
Compare self to 
key and return true if they are equal.