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.
Macros§
- 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.
Structs§
- Path that separates the dirname and basename as different variables (referencing type). Convenient for / path representations that split the dirname and basename, like Fuchsia component decl.
- A
BoundedName
is aName
that can have a max length ofN
bytes. - A path type used throughout Component Framework, along with its variants NamespacePath and RelativePath. Examples of use:
- Same as Path except the path does not begin with
/
. - Path that separates the dirname and basename as different variables (owned type). Convenient for path representations that split the dirname and basename, like Fuchsia component decl.
- A component URL. The URL is validated, but represented as a string to avoid normalization and retain the original representation.
- A URL scheme.
Enums§
- The kinds of offers that can target components in a given collection. See
AllowedOffers
. - Capability availability. See
Availability
. - Specifies when the framework will open the protocol from the provider component’s outgoing directory when someone requests the capability. See
DeliveryType
. - 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
.
Constants§
- This asks for the maximum possible rights that the parent connection will allow; this will include the writable and executable rights if the parent connection has them, but won’t fail if it doesn’t.
- This asks for the maximum possible rights that the parent connection will allow; this will include the writable and executable rights if the parent connection has them, but won’t fail if it doesn’t.
Traits§
- Trait implemented by path types that provides an API to iterate over path segments.
Type Aliases§
- A
Name
with a higher string capacity ofMAX_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
.