pub enum WifiProtocol {
B,
G,
N,
Lr,
A,
Ac,
Ext(&'static str),
}Expand description
Wi-Fi PHY protocol applied at the start of each collection run
(POST /api/devices/{id}/config/protocol).
Default on the device is lr (Espressif Long-Range), which is
proprietary and won’t associate with a standard AP — set n
explicitly for station mode.
Self::Ext is a generic escape hatch: a crate::profile::ClientProfile
can advertise additional protocol strings the core library does not name.
Those round-trip verbatim through Self::as_api_value /
Self::from_api_value and the JSON snapshot codec.
Variants§
B
G
N
Lr
A
Ac
Ext(&'static str)
A profile-supplied protocol string (e.g. injected by a companion crate) carried through the client without the core library naming it.
Implementations§
Source§impl WifiProtocol
impl WifiProtocol
Sourcepub fn as_api_value(self) -> &'static str
pub fn as_api_value(self) -> &'static str
Convert enum variant to backend API value.
Sourcepub fn from_api_value(value: &str) -> Option<Self>
pub fn from_api_value(value: &str) -> Option<Self>
Resolve a backend value back to a variant (case-insensitive).
Unknown values become Self::Ext so a profile-supplied protocol
round-trips even though the core library does not name it. The string is
interned (leaked once) to obtain the 'static lifetime; the set of
distinct protocol strings a device reports is tiny and bounded.
Trait Implementations§
Source§impl Clone for WifiProtocol
impl Clone for WifiProtocol
Source§fn clone(&self) -> WifiProtocol
fn clone(&self) -> WifiProtocol
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for WifiProtocol
Source§impl Debug for WifiProtocol
impl Debug for WifiProtocol
Source§impl Default for WifiProtocol
impl Default for WifiProtocol
Source§impl<'de> Deserialize<'de> for WifiProtocol
impl<'de> Deserialize<'de> for WifiProtocol
Source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
impl Eq for WifiProtocol
Source§impl PartialEq for WifiProtocol
impl PartialEq for WifiProtocol
Source§impl Serialize for WifiProtocol
impl Serialize for WifiProtocol
impl StructuralPartialEq for WifiProtocol
Auto Trait Implementations§
impl Freeze for WifiProtocol
impl RefUnwindSafe for WifiProtocol
impl Send for WifiProtocol
impl Sync for WifiProtocol
impl Unpin for WifiProtocol
impl UnsafeUnpin for WifiProtocol
impl UnwindSafe for WifiProtocol
Blanket Implementations§
impl<T> Allocation for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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§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
key and return true if they are equal.