Crate fidl

source ·
Expand description

Library and runtime for fidl bindings.

Re-exports§

Modules§

  • An implementation of a client for a fidl interface.
  • FIDL encoding and decoding.
  • Wrapper types for the endpoints of a connection.
  • Epitaph support for Channel and AsyncChannel.
  • This belongs in the //src/lib/fidl/rust/fidl_message crate, but has to go here to work around the “upstream crates may add a new impl of trait” error https://doc.rust-lang.org/error_codes/E0119.html.
  • A portable representation of handle-like objects for fidl.
  • Marker types supporting FIDL bindings.
  • A “prelude” of common FIDL traits, to be used like use fidl::prelude::*;.
  • An implementation of a server for a fidl interface.

Structs§

  • A timestamp from the kernel. Generic over both the timeline and the units it is measured in.
  • A marker type representing nanoseconds.
  • A marker type representing system ticks.
  • Header for RFC-0120 persistent FIDL messages.

Enums§

Traits§

  • Marker trait implemented for FIDL non-resource structs, tables, and unions. These can be used with the persistence API and standalone encoding/decoding API.
  • Marker trait implemented for FIDL resource structs, tables, and unions. These can be used with the standalone encoding/decoding API, but not the persistence API.
  • A marker trait for times to prevent accidental comparison between different timelines.

Functions§

  • Encodes a FIDL object to bytes following RFC-0120. This only works on non-resource structs, tables, and unions. See unpersist for the reverse.
  • Decodes a FIDL object from bytes, handles, and wire metadata following RFC-0120. Must be a resource struct, table, or union.
  • Decodes a FIDL object from bytes and wire metadata following RFC-0120. Must be a non-resource struct, table, or union.
  • Encodes a FIDL object to bytes, handles, and wire metadata following RFC-0120. Must be a resource struct, table, or union.
  • Encodes a FIDL object to bytes and wire metadata following RFC-0120. Must be a non-resource struct, table, or union.
  • Decodes a FIDL object from bytes following RFC-0120. Must be a non-resource struct, table, or union. See persist for the reverse.

Type Aliases§

  • A timestamp from the boot clock. Advances while the system is suspended.
  • A timestamp from system ticks on the boot timeline. Advances while the system is suspended.
  • A timestamp from the monontonic clock. Does not advance while the system is suspended.
  • A timestamp from system ticks on the monotonic timeline. Does not advance while the system is suspended.
  • A specialized Result type for FIDL operations.
  • A timestamp from system ticks. Has an arbitrary unit that can be measured with Ticks::per_second().