Enum libp2p_kad::protocol::KadRequestMsg[][src]

pub enum KadRequestMsg {
    Ping,
    FindNode {
        key: Vec<u8>,
    },
    GetProviders {
        key: Key,
    },
    AddProvider {
        key: Key,
        provider: KadPeer,
    },
    GetValue {
        key: Key,
    },
    PutValue {
        record: Record,
    },
}

Request that we can send to a peer or that we received from a peer.

Variants

Ping

Ping request.

FindNode

Request for the list of nodes whose IDs are the closest to key. The number of nodes returned is not specified, but should be around 20.

Fields of FindNode

key: Vec<u8>

The key for which to locate the closest nodes.

GetProviders

Same as FindNode, but should also return the entries of the local providers list for this key.

Fields of GetProviders

key: Key

Identifier being searched.

AddProvider

Indicates that this list of providers is known for this key.

Fields of AddProvider

key: Key

Key for which we should add providers.

provider: KadPeer

Known provider for this key.

GetValue

Request to get a value from the dht records.

Fields of GetValue

key: Key

The key we are searching for.

PutValue

Request to put a value into the dht records.

Fields of PutValue

record: Record

Trait Implementations

impl Clone for KadRequestMsg[src]

impl Debug for KadRequestMsg[src]

impl Eq for KadRequestMsg[src]

impl PartialEq<KadRequestMsg> for KadRequestMsg[src]

impl StructuralEq for KadRequestMsg[src]

impl StructuralPartialEq for KadRequestMsg[src]

Auto Trait Implementations

impl RefUnwindSafe for KadRequestMsg

impl Send for KadRequestMsg

impl Sync for KadRequestMsg

impl Unpin for KadRequestMsg

impl UnwindSafe for KadRequestMsg

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]