docs for extension traits
This commit is contained in:
parent
29d0eb3ee2
commit
5ae43e60b2
@ -425,7 +425,9 @@ impl Addresses {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Extension trait for [Deserializer]s.
|
||||||
pub trait ExtDeserializer {
|
pub trait ExtDeserializer {
|
||||||
|
/// Try to read exactly `N` bytes.
|
||||||
fn read_n_const<const N: usize>(&mut self) -> Result<[u8; N], &[u8]>;
|
fn read_n_const<const N: usize>(&mut self) -> Result<[u8; N], &[u8]>;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -488,7 +490,9 @@ fn _parse_slice<'a, Ctx: 'a + Context, A: Mentionable<'a, Ctx>>(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Extension trait for factories.
|
||||||
pub trait ExtFactory<'a, Ctx: 'a + Context>: Factory<'a, Ctx> {
|
pub trait ExtFactory<'a, Ctx: 'a + Context>: Factory<'a, Ctx> {
|
||||||
|
/// Parse the object from a slice.
|
||||||
fn parse_slice(
|
fn parse_slice(
|
||||||
&self,
|
&self,
|
||||||
slice: &[u8],
|
slice: &[u8],
|
||||||
@ -506,6 +510,7 @@ impl<'a, Ctx: 'a + Context, F: Factory<'a, Ctx>> ExtFactory<'a, Ctx> for F {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// [Deserializer] for slices. Used in [`ExtFactory::parse_slice`] and [`crate::std::atomic::ExtAtomic::parse_slice`].
|
||||||
pub struct SliceDeserializer<'a> {
|
pub struct SliceDeserializer<'a> {
|
||||||
slice: &'a [u8],
|
slice: &'a [u8],
|
||||||
pos: usize,
|
pos: usize,
|
||||||
|
@ -193,7 +193,9 @@ impl Display for Address {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Extension trait for [Serializable]s.
|
||||||
pub trait ExtSerializable: Serializable {
|
pub trait ExtSerializable: Serializable {
|
||||||
|
/// Serialize into a [Vec] of bytes.
|
||||||
fn bytes(&self) -> Vec<u8>;
|
fn bytes(&self) -> Vec<u8>;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user