#[non_exhaustive]pub enum TaglessMemberId {
Legacy {
raw_id: u32,
},
Docker {
container_name: String,
},
Maelstrom {
node_id: String,
},
}Expand description
An untyped identifier for a member of a cluster, without a compile-time tag distinguishing which cluster it belongs to.
The available variants depend on which runtime features are enabled. This enum
is #[non_exhaustive] because new runtime backends may add additional variants.
In most user code, prefer MemberId<Tag> which carries a type-level tag to
prevent mixing up members from different clusters.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Legacy
deploy_integration only.A legacy numeric member ID, used with the deploy_integration feature.
Docker
docker_runtime only.A Docker container-based member ID, used with the docker_runtime feature.
Maelstrom
maelstrom_runtime only.A Maelstrom node-based member ID, used with the maelstrom_runtime feature.
Implementations§
Source§impl TaglessMemberId
impl TaglessMemberId
Sourcepub fn from_raw_id(_raw_id: u32) -> Self
pub fn from_raw_id(_raw_id: u32) -> Self
Creates a TaglessMemberId from a raw numeric ID.
§Panics
Panics if the deploy_integration feature is not enabled.
Sourcepub fn get_raw_id(&self) -> u32
pub fn get_raw_id(&self) -> u32
Returns the raw numeric ID from this member identifier.
§Panics
Panics if this is not the Legacy variant or if the deploy_integration
feature is not enabled.
Sourcepub fn from_container_name(_container_name: impl Into<String>) -> Self
pub fn from_container_name(_container_name: impl Into<String>) -> Self
Creates a TaglessMemberId from a Docker container name.
§Panics
Panics if the docker_runtime feature is not enabled.
Sourcepub fn get_container_name(&self) -> &str
pub fn get_container_name(&self) -> &str
Returns the Docker container name from this member identifier.
§Panics
Panics if this is not the Docker variant or if the docker_runtime
feature is not enabled.
Sourcepub fn from_maelstrom_node_id(_node_id: impl Into<String>) -> Self
pub fn from_maelstrom_node_id(_node_id: impl Into<String>) -> Self
Creates a TaglessMemberId from a Maelstrom node ID.
§Panics
Panics if the maelstrom_runtime feature is not enabled.
Sourcepub fn get_maelstrom_node_id(&self) -> &str
pub fn get_maelstrom_node_id(&self) -> &str
Returns the Maelstrom node ID from this member identifier.
§Panics
Panics if this is not the Maelstrom variant or if the maelstrom_runtime
feature is not enabled.
Trait Implementations§
Source§impl Clone for TaglessMemberId
impl Clone for TaglessMemberId
Source§fn clone(&self) -> TaglessMemberId
fn clone(&self) -> TaglessMemberId
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TaglessMemberId
impl Debug for TaglessMemberId
Source§impl<'de> Deserialize<'de> for TaglessMemberId
impl<'de> Deserialize<'de> for TaglessMemberId
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 Display for TaglessMemberId
impl Display for TaglessMemberId
Source§impl Hash for TaglessMemberId
impl Hash for TaglessMemberId
Source§impl Ord for TaglessMemberId
impl Ord for TaglessMemberId
Source§fn cmp(&self, other: &TaglessMemberId) -> Ordering
fn cmp(&self, other: &TaglessMemberId) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for TaglessMemberId
impl PartialEq for TaglessMemberId
Source§impl PartialOrd for TaglessMemberId
impl PartialOrd for TaglessMemberId
Source§impl Serialize for TaglessMemberId
impl Serialize for TaglessMemberId
impl Eq for TaglessMemberId
impl StructuralPartialEq for TaglessMemberId
Auto Trait Implementations§
impl Freeze for TaglessMemberId
impl RefUnwindSafe for TaglessMemberId
impl Send for TaglessMemberId
impl Sync for TaglessMemberId
impl Unpin for TaglessMemberId
impl UnsafeUnpin for TaglessMemberId
impl UnwindSafe for TaglessMemberId
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,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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