Crate cm_types

source ·
Expand description

A crate containing common Component Manager types used in Component Manifests (.cml files and binary .cm files). These types come with serde serialization and deserialization implementations that perform the required validation.


Generate impl From for two trivial enums with identical values, allowing converting to/from each other. This is useful if you have a FIDL-generated enum and a hand-rolled one that contain the same values.


A BoundedName is a Name that can have a max length of N bytes.
A filesystem path.
A relative filesystem path.
A component URL. The URL is validated, but represented as a string to avoid normalization and retain the original representation.
A URL scheme.


The kinds of offers that can target components in a given collection. See AllowedOffers.
Capability availability. See Availability.
Offered dependency type. See DependencyType.
The duration of child components in a collection. See Durability.
A component instance’s recovery policy. See OnTerminate.
The error representing a failure to parse a type from string.
A component instance’s startup mode. See StartupMode.


Type Definitions

A Name with a higher string capacity of MAX_LONG_NAME_LENGTH.
A name that can refer to a component, collection, or other entity in the Component Manifest. Its length is bounded to MAX_NAME_LENGTH.