pub trait MaybeSegmentableTransportSerializer {
type Builder<'a>: SegmentableTransportBuilder
where Self: 'a;
type Payload<'a>: Payload + InnerPacketBuilder + Copy
where Self: 'a;
// Required method
fn try_as_segmentable(
&self,
) -> Result<(Self::Builder<'_>, Self::Payload<'_>), GsoError>;
}Expand description
A transport-layer packet::Serializer that may carry a payload splittable
in software.
Required Associated Types§
Sourcetype Builder<'a>: SegmentableTransportBuilder
where
Self: 'a
type Builder<'a>: SegmentableTransportBuilder where Self: 'a
The transport header stamped onto every segment.
Sourcetype Payload<'a>: Payload + InnerPacketBuilder + Copy
where
Self: 'a
type Payload<'a>: Payload + InnerPacketBuilder + Copy where Self: 'a
The transport payload split across the segments.
Required Methods§
Sourcefn try_as_segmentable(
&self,
) -> Result<(Self::Builder<'_>, Self::Payload<'_>), GsoError>
fn try_as_segmentable( &self, ) -> Result<(Self::Builder<'_>, Self::Payload<'_>), GsoError>
Attempts to extract the transport header template and the payload to split, returning an error if this serializer can’t be segmented.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".