Crate fidl_next

Crate fidl_next 

Source
Expand description

Next-generation FIDL Rust bindings library.

Re-exports§

pub use ::fidl_next_protocol as protocol;

Modules§

bitflags
Generate types for C-style flags with ergonomic APIs.
decoder
The core Decoder trait.
encoder
The core Encoder trait.
fuchsia
Fuchsia-specific FIDL extensions.
fuchsia_async
FIDL bindings integration with fuchsia-async.

Macros§

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.
ClientDispatcher
A strongly typed client dispatcher.
ClientEnd
The client end of a protocol.
ClientHandlerAdapter
An adapter for a client protocol handler.
CopyOptimization
An optimization hint about whether the conversion from T to U is equivalent to copying the raw bytes of T.
Decoded
A decoded value and the decoder which contains it.
EncodedRespondFuture
An encoded RespondFuture.
EncodedSendFuture
An encoded SendFuture.
EncodedTwoWayFuture
A future which performs a two-way FIDL method call.
IntoIter
An iterator over the items of a WireVector.
RawWireUnion
A raw FIDL union
ReceiveTwoWayFuture
A future which receives a two-way FIDL method call.
RespondFuture
A future which responds to a request with an encoded message.
Responder
A strongly typed Responder.
SendFuture
A future which sends an encoded message to a connection.
SendTwoWayFuture
A future which sends a two-way FIDL method call.
SentTwoWayFuture
A future which performs a two-way FIDL method call.
Server
A strongly typed server.
ServerDispatcher
A strongly typed server.
ServerEnd
The server end of a protocol.
ServerHandlerAdapter
An adapter for a server protocol handler.
ServiceConnector
A strongly-typed member connector for a FIDL service.
ServiceHandlerAdapter
An adapter for a FIDL service handler.
Slot
An initialized but potentially invalid value.
TwoWayFuture
A future which performs a two-way FIDL method call.
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.
WireEmptyStructPlaceholder
An empty struct’s wire representation. C/C++ memory layout rules (and hence FIDL wire rules) require every object to have a unique address so we have to make a single, tiny type for empty structs.

Constants§

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

Traits§

ClientCompatFrom
Conversions between old and new Rust protocol bindings.
ClientHandler
A type which handles incoming events for a client.
CompatFrom
Conversions between old and new Rust bindings types.
Decode
Decodes a value from the given slot.
Decoder
A decoder for FIDL messages.
DecoderExt
Extension methods for Decoder.
Discoverable
A discoverable protocol.
DiscoverableService
A discoverable service.
DispatchClientMessage
A protocol which dispatches incoming client messages to a handler.
DispatchServerMessage
A protocol which dispatches incoming server messages to a handler.
DispatchServiceHandler
A service which dispatches incoming connections to a handler.
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.
EncodeOptionRef
Encodes an optional reference.
EncodeRef
Encodes a reference.
Encoder
An encoder for FIDL messages.
EncoderExt
Extension methods for Encoder.
Executor
An executor which futures can be spawned on.
FromWire
A type which is convertible from a wire type.
FromWireOption
An optional type which is convertible from a wire type.
FromWireOptionRef
An optional type which is convertible from a reference to a wire type.
FromWireRef
A type which is convertible from a reference to a wire type.
HasExecutor
A transport which has an executor to spawn on.
HasServiceRequest
A trait indicating that a service has members of the given type.
InstanceFromServiceTransport
A trait that can be implemented to transform service instance transport handles from their parent server’s transport handles.
IntoNatural
Associates a good default type for a wire type to convert into.
Method
A method of a protocol.
Protocol
A FIDL protocol.
RunsTransport
Identifies an executor as being able to run a transport.
ServerHandler
A type which handles incoming events for a server.
Service
A FIDL service.
Transport
A transport layer which can send and receive messages.
Wire
A FIDL wire type.

Type Aliases§

Chunk
A group of eight bytes, aligned to an 8-byte boundary.
HandlerTask
A client or server handler task.
Request
A decoded request.
Response
A decoded response.

Unions§

WireEnvelope
A FIDL envelope
WirePointer
A raw FIDL pointer