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.



Type Aliases

  • 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.