Enum veilid_core::DHTSchema
source · pub enum DHTSchema {
DFLT(DHTSchemaDFLT),
SMPL(DHTSchemaSMPL),
}
Expand description
Enum over all the supported DHT Schemas
Variants§
DFLT(DHTSchemaDFLT)
SMPL(DHTSchemaSMPL)
Implementations§
source§impl DHTSchema
impl DHTSchema
pub fn dflt(o_cnt: u16) -> VeilidAPIResult<DHTSchema>
pub fn smpl( o_cnt: u16, members: Vec<DHTSchemaSMPLMember> ) -> VeilidAPIResult<DHTSchema>
sourcepub fn validate(&self) -> VeilidAPIResult<()>
pub fn validate(&self) -> VeilidAPIResult<()>
Validate the data representation
sourcepub fn max_subkey(&self) -> ValueSubkey
pub fn max_subkey(&self) -> ValueSubkey
Get maximum subkey number for this schema
sourcepub fn data_size(&self) -> usize
pub fn data_size(&self) -> usize
Get the data size of this schema beyond the size of the structure itself
sourcepub fn check_subkey_value_data(
&self,
owner: &PublicKey,
subkey: ValueSubkey,
value_data: &ValueData
) -> bool
pub fn check_subkey_value_data( &self, owner: &PublicKey, subkey: ValueSubkey, value_data: &ValueData ) -> bool
Check a subkey value data against the schema
sourcepub fn truncate_subkeys(
&self,
subkeys: &ValueSubkeyRangeSet,
opt_max_subkey_len: Option<usize>
) -> ValueSubkeyRangeSet
pub fn truncate_subkeys( &self, subkeys: &ValueSubkeyRangeSet, opt_max_subkey_len: Option<usize> ) -> ValueSubkeyRangeSet
Truncate a subkey range set to the schema Optionally also trim to maximum number of subkeys in the range
Trait Implementations§
source§impl<'de> Deserialize<'de> for DHTSchema
impl<'de> Deserialize<'de> for DHTSchema
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>,
Deserialize this value from the given Serde deserializer. Read more
source§impl JsonSchema for DHTSchema
impl JsonSchema for DHTSchema
source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
source§fn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref
keyword. Read moresource§impl Ord for DHTSchema
impl Ord for DHTSchema
source§impl PartialEq for DHTSchema
impl PartialEq for DHTSchema
source§impl PartialOrd for DHTSchema
impl PartialOrd for DHTSchema
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Eq for DHTSchema
impl StructuralPartialEq for DHTSchema
Auto Trait Implementations§
impl Freeze for DHTSchema
impl RefUnwindSafe for DHTSchema
impl Send for DHTSchema
impl Sync for DHTSchema
impl Unpin for DHTSchema
impl UnwindSafe for DHTSchema
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> CmpAssign for Twhere
T: Ord,
impl<T> CmpAssign for Twhere
T: Ord,
fn min_assign(&mut self, other: T)
fn max_assign(&mut self, other: T)
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
source§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.