Crate fidl_next

Source
Expand description

Next-generation FIDL Rust bindings library.

Re-exports§

pub use ::fidl_next_protocol as protocol;

Modules§

decoder
The core Decoder trait.
encoder
The core Encoder trait.
fuchsia
Fuchsia-specific FIDL extensions.

Macros§

bitflags
Generate a flags type.
chunks
Returns a slice of chunks with the same bytewise value as the given bytes.
munge
Destructures a type into

Structs§

Client
A strongly typed client.
ClientAdapter
An adapter for a client protocol handler.
ClientEnd
The client end of a protocol.
ClientSender
A strongly typed client sender.
CopyOptimization
An optimization hint about whether T is trivially copyable.
Owned
An owned value in borrowed backing memory.
RawWireUnion
A raw FIDL union
RecvFuture
A future which receives an encoded message over the transport.
RequestBuffer
A strongly typed receive buffer.
Responder
A strongly typed Responder.
ResponseBuffer
A strongly typed receive buffer.
ResponseFuture
A strongly typed response future.
SendFuture
A future which sends an encoded message over the transport.
Server
A strongly typed server.
ServerAdapter
An adapter for a server protocol handler.
ServerEnd
The server end of a protocol.
ServerSender
A storngly typed server sender.
ServiceInstance
A strongly typed service instance.
Slot
An initialized but potentially invalid value.
WireBox
A boxed (optional) FIDL value.
WireF32
A wire-encoded f32
WireF64
A wire-encoded f64
WireFlexible
A flexible FIDL response.
WireFlexibleResult
A flexible FIDL result.
WireFrameworkError
An internal framework error.
WireI16
A wire-encoded i16
WireI32
A wire-encoded i32
WireI64
A wire-encoded i64
WireOptionalString
An optional FIDL string
WireOptionalVector
An optional FIDL vector
WireResult
A FIDL result union.
WireString
A FIDL string
WireTable
A FIDL table
WireU16
A wire-encoded u16
WireU32
A wire-encoded u32
WireU64
A wire-encoded u64
WireVector
A FIDL vector

Enums§

DecodeError
Errors that can be produced when decoding FIDL messages.
EncodeError
Errors that can be produced while encoding FIDL messages.
Flexible
A flexible FIDL response.
FlexibleResult
A flexible FIDL result.
FrameworkError
An internal framework error.
Never
The request or response type of a method which does not have a request or response.
ProtocolError
Errors that can be produced by FIDL clients and servers.

Constants§

CHUNK_SIZE
FIDL alignment, used for buffer alignment to ensure decoding in-place is possible.

Traits§

ClientProtocol
A protocol which supports clients.
Decode
Decodes a value from the given slot.
Decoder
A decoder for FIDL messages.
DecoderExt
Extension methods for Decoder.
Discoverable
A discoverable protocol.
Encodable
A type which can be encoded as FIDL.
EncodableOption
A type which can be encoded as FIDL when optional.
Encode
Encodes a value.
EncodeOption
Encodes an optional value.
Encoder
An encoder for FIDL messages.
EncoderExt
Extension methods for Encoder.
Method
A method of a protocol.
ServerProtocol
A protocol which supports servers.
TakeFrom
From conversions which may take from a reference using interior mutability.
Transport
A transport layer which can send and receive messages.
ZeroPadding
Zeroes the padding of this type.

Type Aliases§

Chunk
A group of eight bytes, aligned to an 8-byte boundary.

Unions§

WireEnvelope
A FIDL envelope
WirePointer
A raw FIDL pointer