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.
Decoded
A decoded value and the decoder which contains it.
Owned
An owned value in borrowed backing memory.
RawWireUnion
A raw FIDL union
RecvFuture
A future which receives an encoded message over the transport.
Responder
A strongly typed Responder.
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.
UnknownStrictEnumMemberError
Error returned by TryFrom on a strict enum if none of the members match the supplied 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.
Error
An encoding, decoding, or transport FIDL error.
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.
Request
A decoded request.
Response
A decoded response.

Unions§

WireEnvelope
A FIDL envelope
WirePointer
A raw FIDL pointer