pub enum DhtMessage {
FindValue(FindValueRequest),
FindValueResponse(FindValueResponse),
Store(StoreRequest),
StoreAck(StoreAck),
BatchStore(BatchStoreRequest),
BatchStoreAck(BatchStoreAck),
FindNode(FindNodeRequest),
FindNodeResponse(FindNodeResponse),
}Expand description
Top-level protocol enum for cdn/dht/v1. Variant order matches ADR 022
§Message Types and is frozen per ADR 013.
⚠️ VARIANT ORDER FROZEN — ADR 013 §Protocol Enums
Postcard encodes each variant as its declaration-order index. Reordering,
inserting, or removing a variant is a wire-breaking change requiring an
ALPN version bump (cdn/dht/v2). Discriminants are pinned by the
dht_message_*_discriminant_is_* tests in this module — if you change this
enum, those tests will fail and tell you why.
Variants§
FindValue(FindValueRequest)
discriminant 0 — asserted by dht_message_find_value_discriminant_is_zero
FindValueResponse(FindValueResponse)
discriminant 1 — asserted by dht_message_find_value_response_discriminant_is_one
Store(StoreRequest)
discriminant 2 — asserted by dht_message_store_discriminant_is_two
StoreAck(StoreAck)
discriminant 3 — asserted by dht_message_store_ack_discriminant_is_three
BatchStore(BatchStoreRequest)
discriminant 4 — asserted by dht_message_batch_store_discriminant_is_four.
Batched publish; handled by decdn-node (see module docs).
BatchStoreAck(BatchStoreAck)
discriminant 5 — asserted by dht_message_batch_store_ack_discriminant_is_five.
Per-hash ack for Self::BatchStore.
FindNode(FindNodeRequest)
discriminant 6 — asserted by dht_message_find_node_discriminant_is_six
FindNodeResponse(FindNodeResponse)
discriminant 7 — asserted by dht_message_find_node_response_discriminant_is_seven
Trait Implementations§
Source§impl Clone for DhtMessage
impl Clone for DhtMessage
Source§impl Debug for DhtMessage
impl Debug for DhtMessage
Source§impl<'de> Deserialize<'de> for DhtMessage
impl<'de> Deserialize<'de> for DhtMessage
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>,
impl Eq for DhtMessage
Source§impl PartialEq for DhtMessage
impl PartialEq for DhtMessage
Source§impl Serialize for DhtMessage
impl Serialize for DhtMessage
impl StructuralPartialEq for DhtMessage
Source§impl TopLevelEnum for DhtMessage
impl TopLevelEnum for DhtMessage
Source§const VARIANT_COUNT: u32 = 8
const VARIANT_COUNT: u32 = 8
FindValue (0) … FindNodeResponse (7). Pinned by
dht_message_variant_count_matches_discriminants.