Struct internet2::presentation::sphinx::Hop
source · pub struct Hop<Payload: SphinxPayload> {
pub node_id: NodeId,
pub payload: Payload,
}Expand description
Sphinx hop information
Fields§
§node_id: NodeIdPublic key of the hop node
payload: PayloadPayload data specific for that node
Implementations§
source§impl<Payload> Hop<Payload>where
Payload: SphinxPayload,
impl<Payload> Hop<Payload>where
Payload: SphinxPayload,
Trait Implementations§
source§impl<Payload: SphinxPayload> LightningDecode for Hop<Payload>
impl<Payload: SphinxPayload> LightningDecode for Hop<Payload>
source§fn lightning_decode<D: Read>(d: D) -> Result<Self, Error>
fn lightning_decode<D: Read>(d: D) -> Result<Self, Error>
Decode with the given
std::io::Read instance; must either
construct an instance or return implementation-specific error type.source§fn lightning_deserialize(data: impl AsRef<[u8]>) -> Result<Self, Error>
fn lightning_deserialize(data: impl AsRef<[u8]>) -> Result<Self, Error>
Tries to deserialize byte array into the current type using
LightningDecode::lightning_decode function.source§impl<Payload: SphinxPayload> LightningEncode for Hop<Payload>
impl<Payload: SphinxPayload> LightningEncode for Hop<Payload>
source§fn lightning_encode<E: Write>(&self, e: E) -> Result<usize, Error>
fn lightning_encode<E: Write>(&self, e: E) -> Result<usize, Error>
Encode with the given
std::io::Write instance; must return result
with either amount of bytes encoded – or implementation-specific
error type.source§fn lightning_serialize(&self) -> Result<Vec<u8, Global>, Error>
fn lightning_serialize(&self) -> Result<Vec<u8, Global>, Error>
Serializes data as a byte array using
LightningEncode::lightning_encode function.source§impl<Payload: PartialEq + SphinxPayload> PartialEq<Hop<Payload>> for Hop<Payload>
impl<Payload: PartialEq + SphinxPayload> PartialEq<Hop<Payload>> for Hop<Payload>
source§impl<Payload: SphinxPayload> StrictDecode for Hop<Payload>
impl<Payload: SphinxPayload> StrictDecode for Hop<Payload>
source§fn strict_decode<D: Read>(d: D) -> Result<Self, Error>
fn strict_decode<D: Read>(d: D) -> Result<Self, Error>
Decode with the given
std::io::Read instance; must either
construct an instance or return implementation-specific error type.source§fn strict_deserialize(data: impl AsRef<[u8]>) -> Result<Self, Error>
fn strict_deserialize(data: impl AsRef<[u8]>) -> Result<Self, Error>
Tries to deserialize byte array into the current type using
StrictDecode::strict_decode. If there are some data remains in the
buffer once deserialization is completed, fails with
Error::DataNotEntirelyConsumed. Use io::Cursor over the buffer and
StrictDecode::strict_decode to avoid such failures.source§fn strict_file_load(path: impl AsRef<Path>) -> Result<Self, Error>
fn strict_file_load(path: impl AsRef<Path>) -> Result<Self, Error>
Reads data from file at
path and reconstructs object from it. Fails
with Error::DataNotEntirelyConsumed if file contains remaining
data after the object reconstruction.source§impl<Payload: SphinxPayload> StrictEncode for Hop<Payload>
impl<Payload: SphinxPayload> StrictEncode for Hop<Payload>
source§fn strict_encode<E: Write>(&self, e: E) -> Result<usize, Error>
fn strict_encode<E: Write>(&self, e: E) -> Result<usize, Error>
Encode with the given
std::io::Write instance; must return result
with either amount of bytes encoded – or implementation-specific
error type.source§fn strict_serialize(&self) -> Result<Vec<u8, Global>, Error>
fn strict_serialize(&self) -> Result<Vec<u8, Global>, Error>
Serializes data as a byte array using
StrictEncode::strict_encode
function