pub struct BareRecordKey { /* private fields */ }Expand description
Untyped DHT record key: an opaque record key with an optional record encryption secret.
Implementations§
Source§impl BareRecordKey
impl BareRecordKey
Sourcepub fn new(
key: BareOpaqueRecordKey,
encryption_key: Option<BareSharedSecret>,
) -> Self
pub fn new( key: BareOpaqueRecordKey, encryption_key: Option<BareSharedSecret>, ) -> Self
Builds a record key from an opaque record key and an optional encryption secret.
Sourcepub fn ref_key(&self) -> &BareOpaqueRecordKey
pub fn ref_key(&self) -> &BareOpaqueRecordKey
Returns a reference to the opaque record key.
Sourcepub fn ref_encryption_key(&self) -> Option<&BareSharedSecret>
pub fn ref_encryption_key(&self) -> Option<&BareSharedSecret>
Returns a reference to the encryption secret, if present.
Sourcepub fn split(&self) -> (BareOpaqueRecordKey, Option<BareSharedSecret>)
pub fn split(&self) -> (BareOpaqueRecordKey, Option<BareSharedSecret>)
Clones out the opaque record key and optional encryption secret.
Sourcepub fn into_split(self) -> (BareOpaqueRecordKey, Option<BareSharedSecret>)
pub fn into_split(self) -> (BareOpaqueRecordKey, Option<BareSharedSecret>)
Consumes the key, returning the opaque record key and optional encryption secret.
Source§impl BareRecordKey
impl BareRecordKey
Sourcepub fn key(&self) -> BareOpaqueRecordKey
pub fn key(&self) -> BareOpaqueRecordKey
Returns a clone of the opaque record key.
Sourcepub fn encryption_key(&self) -> Option<BareSharedSecret>
pub fn encryption_key(&self) -> Option<BareSharedSecret>
Returns a clone of the encryption secret, if present.
Sourcepub fn encode(&self) -> String
pub fn encode(&self) -> String
Encodes as <key> or <key>:<encryption_key>, each part base64url-nopad.
Sourcepub fn encoded_len(&self) -> usize
pub fn encoded_len(&self) -> usize
Returns the length of the encode string.
Sourcepub fn try_decode(input: &str) -> VeilidAPIResult<Self>
pub fn try_decode(input: &str) -> VeilidAPIResult<Self>
Decodes from a <key> or <key>:<encryption_key> string.
Errors with VeilidAPIError::ParseError if input has more than two colon-separated parts,
or VeilidAPIError::Generic if any part is not valid base64url-nopad.
Sourcepub fn try_decode_bytes(b: &[u8]) -> VeilidAPIResult<Self>
pub fn try_decode_bytes(b: &[u8]) -> VeilidAPIResult<Self>
Decodes from <key> or <key>:<encryption_key> bytes.
Errors with VeilidAPIError::ParseError if b has more than two colon-separated parts,
or VeilidAPIError::Generic if any part is not valid base64url-nopad.
Trait Implementations§
Source§impl Clone for BareRecordKey
impl Clone for BareRecordKey
Source§fn clone(&self) -> BareRecordKey
fn clone(&self) -> BareRecordKey
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BareRecordKey
impl Debug for BareRecordKey
Source§impl Default for BareRecordKey
impl Default for BareRecordKey
Source§fn default() -> BareRecordKey
fn default() -> BareRecordKey
Source§impl<'de> Deserialize<'de> for BareRecordKey
impl<'de> Deserialize<'de> for BareRecordKey
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 BareRecordKey
impl Display for BareRecordKey
impl Eq for BareRecordKey
Source§impl From<&BareRecordKey> for String
impl From<&BareRecordKey> for String
Source§fn from(value: &BareRecordKey) -> Self
fn from(value: &BareRecordKey) -> Self
Source§impl FromStr for BareRecordKey
impl FromStr for BareRecordKey
Source§impl GetSize for BareRecordKey
impl GetSize for BareRecordKey
Source§fn get_heap_size(&self) -> usize
fn get_heap_size(&self) -> usize
Source§fn get_heap_size_with_tracker<TRACKER: GetSizeTracker>(
&self,
tracker: TRACKER,
) -> (usize, TRACKER)
fn get_heap_size_with_tracker<TRACKER: GetSizeTracker>( &self, tracker: TRACKER, ) -> (usize, TRACKER)
tracker. Read moreSource§fn get_stack_size() -> usize
fn get_stack_size() -> usize
Source§fn get_size_with_tracker<T>(&self, tracker: T) -> (usize, T)where
T: GetSizeTracker,
fn get_size_with_tracker<T>(&self, tracker: T) -> (usize, T)where
T: GetSizeTracker,
tracker. Read moreSource§impl Hash for BareRecordKey
impl Hash for BareRecordKey
Source§impl Ord for BareRecordKey
impl Ord for BareRecordKey
Source§fn cmp(&self, other: &BareRecordKey) -> Ordering
fn cmp(&self, other: &BareRecordKey) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for BareRecordKey
impl PartialEq for BareRecordKey
Source§impl PartialOrd for BareRecordKey
impl PartialOrd for BareRecordKey
Source§impl Serialize for BareRecordKey
impl Serialize for BareRecordKey
impl StructuralPartialEq for BareRecordKey
Source§impl ToVeilidAPIErrorArgument for BareRecordKey
impl ToVeilidAPIErrorArgument for BareRecordKey
Source§fn to_veilid_api_error_argument(&self) -> String
fn to_veilid_api_error_argument(&self) -> String
Source§impl TryFrom<&str> for BareRecordKey
impl TryFrom<&str> for BareRecordKey
Auto Trait Implementations§
impl !Freeze for BareRecordKey
impl RefUnwindSafe for BareRecordKey
impl Send for BareRecordKey
impl Sync for BareRecordKey
impl Unpin for BareRecordKey
impl UnsafeUnpin for BareRecordKey
impl UnwindSafe for BareRecordKey
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> CmpAssign for Twhere
T: Ord,
impl<T> CmpAssign for Twhere
T: Ord,
Source§fn min_assign(&mut self, other: T)
fn min_assign(&mut self, other: T)
self with other if other is smaller.Source§fn max_assign(&mut self, other: T)
fn max_assign(&mut self, other: T)
self with other if other is larger.Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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