pub struct OfferDirectory {
pub source: Option<Ref>,
pub source_name: Option<String>,
pub target: Option<Ref>,
pub target_name: Option<String>,
pub rights: Option<Operations>,
pub subdir: Option<String>,
pub dependency_type: Option<DependencyType>,
pub availability: Option<Availability>,
pub source_dictionary: Option<String>,
/* private fields */
}
Expand description
Declares a directory offered by a component to one of its children, which may have been offered by the component’s containing realm, the component itself, or one of its other children.
Fields§
§source: Option<Ref>
(Required) The provider of the capability relative to the component
itself. Must be parent
, self
, child
, or void
.
If set to void
, then the target must offer or use the capability with
OPTIONAL
or TRANSITIONAL
availability.
source_name: Option<String>
(Required) Name identifying the directory being offered.
target: Option<Ref>
(Required) Reference to the target. Must be child
, collection
, or
a dictionary capability
.
target_name: Option<String>
(Required) The name by which the capability is being offered.
rights: Option<Operations>
(Optional) The maximum rights that can be set by a component using this
directory. IF unset, the rights are inherited from source
.
subdir: Option<String>
(Optional) The subdirectory of this directory to offer instead of the root. Optional.
dependency_type: Option<DependencyType>
(Required) The dependency type this offer represents. A component which receives a weak offer must support the offered capability being unavailable at any point.
availability: Option<Availability>
(Optional, defaults to REQUIRED
) The availability of this capability.
If set to required
, the target may use or offer the capability with
either required
or optional
availability. If set to optional
, the
target must use or offer the capability with optional
availability.
The same_as_target
value causes this offer’s availability to match the
availability set in the target.
source_dictionary: Option<String>
(Optional) Path in a dictionary provided by source
which contains source_name
.
If this field is absent, source_name
identifies a capability directly routed
by source
. If set, source_name
identifies a capability nested inside this
dictionary.
Trait Implementations§
Source§impl Clone for OfferDirectory
impl Clone for OfferDirectory
Source§fn clone(&self) -> OfferDirectory
fn clone(&self) -> OfferDirectory
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for OfferDirectory
impl Debug for OfferDirectory
Source§impl<D: ResourceDialect> Decode<OfferDirectory, D> for OfferDirectory
impl<D: ResourceDialect> Decode<OfferDirectory, D> for OfferDirectory
Source§impl Default for OfferDirectory
impl Default for OfferDirectory
Source§fn default() -> OfferDirectory
fn default() -> OfferDirectory
Source§impl<D: ResourceDialect> Encode<OfferDirectory, D> for &OfferDirectory
impl<D: ResourceDialect> Encode<OfferDirectory, D> for &OfferDirectory
Source§impl PartialEq for OfferDirectory
impl PartialEq for OfferDirectory
Source§impl TypeMarker for OfferDirectory
impl TypeMarker for OfferDirectory
Source§type Owned = OfferDirectory
type Owned = OfferDirectory
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align
.§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read more§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.Source§impl ValueTypeMarker for OfferDirectory
impl ValueTypeMarker for OfferDirectory
Source§type Borrowed<'a> = &'a OfferDirectory
type Borrowed<'a> = &'a OfferDirectory
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read more