#[repr(u8)]pub enum WhatAmI {
Router = 1,
Peer = 2,
Client = 4,
}Expand description
The type of the node in the Zenoh network.
The zenoh application can work in three different modes: router, peer, and client.
In the peer mode the application searches for other nodes and establishes direct connections with them. This can work using multicast discovery and by getting gossip information from the initial entry points. The peer mode is the default mode.
In the client mode the application remains connected to a single connection point, which serves as a gateway to the rest of the network. This mode is useful for constrained devices that cannot afford to maintain multiple connections.
The router mode is used to run a zenoh router, which is a node that maintains a predefined zenoh network topology. Unlike peers, routers do not discover other nodes by themselves, but rely on static configuration.
A more detailed explanation of each mode is at Zenoh Documentation
Variants§
Implementations§
Trait Implementations§
Source§impl BitOr<WhatAmI> for WhatAmIMatcher
impl BitOr<WhatAmI> for WhatAmIMatcher
Source§impl<'de> Deserialize<'de> for WhatAmI
impl<'de> Deserialize<'de> for WhatAmI
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl From<WhatAmI> for WhatAmIMatcher
impl From<WhatAmI> for WhatAmIMatcher
impl Copy for WhatAmI
impl Eq for WhatAmI
impl StructuralPartialEq for WhatAmI
Auto Trait Implementations§
impl Freeze for WhatAmI
impl RefUnwindSafe for WhatAmI
impl Send for WhatAmI
impl Sync for WhatAmI
impl Unpin for WhatAmI
impl UnwindSafe for WhatAmI
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
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<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