mirror of
https://github.com/smoltcp-rs/smoltcp.git
synced 2025-10-03 15:44:50 +00:00
Clean up some type variable names and trait bounds. NFC.
This commit is contained in:
parent
3a656c1529
commit
97499ac280
@ -108,15 +108,15 @@ impl State {
|
|||||||
/// adverse network conditions (such as random packet loss or corruption), or software
|
/// adverse network conditions (such as random packet loss or corruption), or software
|
||||||
/// or hardware limitations (such as a limited number or size of usable network buffers).
|
/// or hardware limitations (such as a limited number or size of usable network buffers).
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct FaultInjector<T: Device> {
|
pub struct FaultInjector<D: Device> {
|
||||||
lower: T,
|
lower: D,
|
||||||
state: State,
|
state: State,
|
||||||
config: Config
|
config: Config
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: Device> FaultInjector<T> {
|
impl<D: Device> FaultInjector<D> {
|
||||||
/// Create a fault injector device, using the given random number generator seed.
|
/// Create a fault injector device, using the given random number generator seed.
|
||||||
pub fn new(lower: T, seed: u32) -> FaultInjector<T> {
|
pub fn new(lower: D, seed: u32) -> FaultInjector<D> {
|
||||||
#[cfg(feature = "std")]
|
#[cfg(feature = "std")]
|
||||||
let state = State {
|
let state = State {
|
||||||
rng_seed: seed,
|
rng_seed: seed,
|
||||||
@ -136,7 +136,7 @@ impl<T: Device> FaultInjector<T> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Return the underlying device, consuming the fault injector.
|
/// Return the underlying device, consuming the fault injector.
|
||||||
pub fn into_lower(self) -> T {
|
pub fn into_lower(self) -> D {
|
||||||
self.lower
|
self.lower
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -216,10 +216,10 @@ impl<T: Device> FaultInjector<T> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: Device> Device for FaultInjector<T>
|
impl<D: Device> Device for FaultInjector<D>
|
||||||
where T::RxBuffer: AsMut<[u8]> {
|
where D::RxBuffer: AsMut<[u8]> {
|
||||||
type RxBuffer = T::RxBuffer;
|
type RxBuffer = D::RxBuffer;
|
||||||
type TxBuffer = TxBuffer<T::TxBuffer>;
|
type TxBuffer = TxBuffer<D::TxBuffer>;
|
||||||
|
|
||||||
fn limits(&self) -> DeviceLimits {
|
fn limits(&self) -> DeviceLimits {
|
||||||
let mut limits = self.lower.limits();
|
let mut limits = self.lower.limits();
|
||||||
@ -275,16 +275,15 @@ impl<T: Device> Device for FaultInjector<T>
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[doc(hidden)]
|
#[doc(hidden)]
|
||||||
pub struct TxBuffer<T: AsRef<[u8]> + AsMut<[u8]>> {
|
pub struct TxBuffer<B: AsRef<[u8]> + AsMut<[u8]>> {
|
||||||
state: State,
|
state: State,
|
||||||
config: Config,
|
config: Config,
|
||||||
buffer: Option<T>,
|
buffer: Option<B>,
|
||||||
junk: [u8; MTU],
|
junk: [u8; MTU],
|
||||||
length: usize
|
length: usize
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: AsRef<[u8]> + AsMut<[u8]>> AsRef<[u8]>
|
impl<B: AsRef<[u8]> + AsMut<[u8]>> AsRef<[u8]> for TxBuffer<B> {
|
||||||
for TxBuffer<T> {
|
|
||||||
fn as_ref(&self) -> &[u8] {
|
fn as_ref(&self) -> &[u8] {
|
||||||
match self.buffer {
|
match self.buffer {
|
||||||
Some(ref buf) => buf.as_ref(),
|
Some(ref buf) => buf.as_ref(),
|
||||||
@ -293,8 +292,7 @@ impl<T: AsRef<[u8]> + AsMut<[u8]>> AsRef<[u8]>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: AsRef<[u8]> + AsMut<[u8]>> AsMut<[u8]>
|
impl<B: AsRef<[u8]> + AsMut<[u8]>> AsMut<[u8]> for TxBuffer<B> {
|
||||||
for TxBuffer<T> {
|
|
||||||
fn as_mut(&mut self) -> &mut [u8] {
|
fn as_mut(&mut self) -> &mut [u8] {
|
||||||
match self.buffer {
|
match self.buffer {
|
||||||
Some(ref mut buf) => buf.as_mut(),
|
Some(ref mut buf) => buf.as_mut(),
|
||||||
@ -303,7 +301,7 @@ impl<T: AsRef<[u8]> + AsMut<[u8]>> AsMut<[u8]>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: AsRef<[u8]> + AsMut<[u8]>> Drop for TxBuffer<T> {
|
impl<B: AsRef<[u8]> + AsMut<[u8]>> Drop for TxBuffer<B> {
|
||||||
fn drop(&mut self) {
|
fn drop(&mut self) {
|
||||||
match self.buffer {
|
match self.buffer {
|
||||||
Some(ref mut buf) => {
|
Some(ref mut buf) => {
|
||||||
|
@ -7,14 +7,14 @@ use super::{DeviceLimits, Device};
|
|||||||
/// A tracer is a device that pretty prints all packets traversing it
|
/// A tracer is a device that pretty prints all packets traversing it
|
||||||
/// using the provided writer function, and then passes them to another
|
/// using the provided writer function, and then passes them to another
|
||||||
/// device.
|
/// device.
|
||||||
pub struct Tracer<T: Device, U: PrettyPrint> {
|
pub struct Tracer<D: Device, P: PrettyPrint> {
|
||||||
lower: T,
|
lower: D,
|
||||||
writer: fn(u64, PrettyPrinter<U>)
|
writer: fn(u64, PrettyPrinter<P>)
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: Device, U: PrettyPrint> Tracer<T, U> {
|
impl<D: Device, P: PrettyPrint> Tracer<D, P> {
|
||||||
/// Create a tracer device.
|
/// Create a tracer device.
|
||||||
pub fn new(lower: T, writer: fn(timestamp: u64, printer: PrettyPrinter<U>)) -> Tracer<T, U> {
|
pub fn new(lower: D, writer: fn(timestamp: u64, printer: PrettyPrinter<P>)) -> Tracer<D, P> {
|
||||||
Tracer {
|
Tracer {
|
||||||
lower: lower,
|
lower: lower,
|
||||||
writer: writer
|
writer: writer
|
||||||
@ -22,20 +22,20 @@ impl<T: Device, U: PrettyPrint> Tracer<T, U> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Return the underlying device, consuming the tracer.
|
/// Return the underlying device, consuming the tracer.
|
||||||
pub fn into_lower(self) -> T {
|
pub fn into_lower(self) -> D {
|
||||||
self.lower
|
self.lower
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: Device, U: PrettyPrint> Device for Tracer<T, U> {
|
impl<D: Device, P: PrettyPrint> Device for Tracer<D, P> {
|
||||||
type RxBuffer = T::RxBuffer;
|
type RxBuffer = D::RxBuffer;
|
||||||
type TxBuffer = TxBuffer<T::TxBuffer, U>;
|
type TxBuffer = TxBuffer<D::TxBuffer, P>;
|
||||||
|
|
||||||
fn limits(&self) -> DeviceLimits { self.lower.limits() }
|
fn limits(&self) -> DeviceLimits { self.lower.limits() }
|
||||||
|
|
||||||
fn receive(&mut self, timestamp: u64) -> Result<Self::RxBuffer, Error> {
|
fn receive(&mut self, timestamp: u64) -> Result<Self::RxBuffer, Error> {
|
||||||
let buffer = self.lower.receive(timestamp)?;
|
let buffer = self.lower.receive(timestamp)?;
|
||||||
(self.writer)(timestamp, PrettyPrinter::<U>::new("<- ", &buffer));
|
(self.writer)(timestamp, PrettyPrinter::<P>::new("<- ", &buffer));
|
||||||
Ok(buffer)
|
Ok(buffer)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -46,24 +46,22 @@ impl<T: Device, U: PrettyPrint> Device for Tracer<T, U> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[doc(hidden)]
|
#[doc(hidden)]
|
||||||
pub struct TxBuffer<T: AsRef<[u8]>, U: PrettyPrint> {
|
pub struct TxBuffer<B: AsRef<[u8]> + AsMut<[u8]>, P: PrettyPrint> {
|
||||||
buffer: T,
|
buffer: B,
|
||||||
timestamp: u64,
|
timestamp: u64,
|
||||||
writer: fn(u64, PrettyPrinter<U>)
|
writer: fn(u64, PrettyPrinter<P>)
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: AsRef<[u8]>, U: PrettyPrint> AsRef<[u8]>
|
impl<B: AsRef<[u8]> + AsMut<[u8]>, P: PrettyPrint> AsRef<[u8]> for TxBuffer<B, P> {
|
||||||
for TxBuffer<T, U> {
|
|
||||||
fn as_ref(&self) -> &[u8] { self.buffer.as_ref() }
|
fn as_ref(&self) -> &[u8] { self.buffer.as_ref() }
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: AsRef<[u8]> + AsMut<[u8]>, U: PrettyPrint> AsMut<[u8]>
|
impl<B: AsRef<[u8]> + AsMut<[u8]>, P: PrettyPrint> AsMut<[u8]> for TxBuffer<B, P> {
|
||||||
for TxBuffer<T, U> {
|
|
||||||
fn as_mut(&mut self) -> &mut [u8] { self.buffer.as_mut() }
|
fn as_mut(&mut self) -> &mut [u8] { self.buffer.as_mut() }
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T: AsRef<[u8]>, U: PrettyPrint> Drop for TxBuffer<T, U> {
|
impl<B: AsRef<[u8]> + AsMut<[u8]>, P: PrettyPrint> Drop for TxBuffer<B, P> {
|
||||||
fn drop(&mut self) {
|
fn drop(&mut self) {
|
||||||
(self.writer)(self.timestamp, PrettyPrinter::<U>::new("-> ", &self.buffer));
|
(self.writer)(self.timestamp, PrettyPrinter::<P>::new("-> ", &self.buffer));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user