Expand description
Selected-wire transport adapter core.
Product transports implement the small core traits in this module for their
physical mechanics. A core accepts metadata bytes already prepared by the
selected metadata codec, returns encoded metadata bytes on receive, and
validates any physical mirror fields against decoded metadata before public
exposure. Product transport modules should not import, match on, or branch
by concrete wire families such as UProtocolNativeWire; the selected wire is
owned by UWireTransport<TCore, W, C>.
§Composition walk
- Implement
UZeroCopyTransportCore(and, when supported,UZeroCopyUninitTransportCore) for physical storage and encoded metadata carriage. These core methods do not choose a wire. - Wrap the core with
UWithNativePrefixWire::into_native_prefix_wire_transportfor an external/custom wire, or useinto_protobuf_transport/into_stable_container_transport. - Use the resulting adapter through the public semantic transport traits and typed extension helpers. The adapter encodes metadata before core TX, checks the envelope and selected identities on RX, validates physical mirror fields, and only then exposes semantic metadata.
- Run
wire_transport_adapter, trybuild role-firewall tests, wrong-identity tests, and the payload-contract round trips.
This boundary is the N+M seam from
up-spec/up-l1/transport_families.adoc: a core must not branch on concrete
wire types, and a wire must not contain transport-specific carriage code.
Structs§
- Encoded
Owned Frame - Encoded owned frame returned by an owned core.
- Prepared
Owned Frame - Prepared owned frame passed from the adapter to an owned core.
- Prepared
TxLoan Spec - Prepared zero-copy transmit request passed from the adapter to a core.
- UWireRx
- Public zero-copy receive lease after selected-wire metadata validation.
- UWire
Transport - Generic selected-wire transport adapter.
Traits§
- UEncoded
Loaned RxFrame - Raw encoded receive object that can prove its contiguous payload is loan-backed.
- UEncoded
Owned Listener - Listener used by cores to deliver raw encoded owned frames.
- UEncoded
RxFrame - Raw encoded receive object returned by a transport core.
- UEncoded
Zero Copy Listener - Listener used by cores to deliver raw encoded zero-copy receive objects.
- UHas
Wire - Exposes the concrete selected wire of an adapter value.
- UOwned
Transport Core - Role: implemented by transports carrying already-encoded owned frames; the wire adapter composes above it — see the trait map.
- USelected
Wire Zero Copy Transport - Marker trait for zero-copy transports with a statically selected wire.
- UWith
Native Prefix Wire - Convenience constructors for canonical native-prefix selected-wire transports.
- UZero
Copy Transport Core - Role: implemented by transports that stay a dumb byte pipe;
UWireTransportcomposes wires and codecs above it (recommended default) — see the trait map. - UZero
Copy Uninit Transport Core - Optional encoded-core capability for uninitialized transmit loans.
Type Aliases§
- Protobuf
Wire Transport - Protocol Buffers selected-wire transport with canonical metadata.
- Stable
Container Wire Transport - Stable-container selected-wire transport with canonical metadata.
- UNative
Prefix Wire Transport - Selected-wire transport using the canonical UFrame metadata field block.