Struct ExposeDirectory
pub struct ExposeDirectory {
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 availability: Option<Availability>,
pub source_dictionary: Option<String>,
/* private fields */
}
Expand description
Declares a directory exposed to a component’s containing realm, such as a directory exposed by the component or one of its children at runtime.
Fields§
§source: Option<Ref>
(Required) The provider of the capability relative to the component
itself. Must be self
or child
, or void
. If set to void
, then the
target must expose, offer, or use the capability with OPTIONAL
or
TRANSITIONAL
availability.
source_name: Option<String>
(Required) Name identifying the directory, by which it was presented to this component.
target: Option<Ref>
(Required) The destination to which the directory is exposed: either the component’s realm or the framework.
target_name: Option<String>
(Required) The name by which the capability is being exposed.
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 expose instead of the root.
availability: Option<Availability>
(Optional, defaults to REQUIRED
) The availability of this capability.
See Availability
.
source_dictionary: Option<String>
(Optional) Path in a dictionary offered by ref
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 a
dictionary. The name of the top-level dictionary is given by the first path
segment of source_dictionary
, and source
is expected to route a
dictionary capability with this name. The rest of the path (possibly empty)
represents the path to a dictionary nested in the top-level dictionary which
is expected to contain source_name
.
Trait Implementations§
§impl Clone for ExposeDirectory
impl Clone for ExposeDirectory
§fn clone(&self) -> ExposeDirectory
fn clone(&self) -> ExposeDirectory
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for ExposeDirectory
impl Debug for ExposeDirectory
§impl<D> Decode<ExposeDirectory, D> for ExposeDirectorywhere
D: ResourceDialect,
impl<D> Decode<ExposeDirectory, D> for ExposeDirectorywhere
D: ResourceDialect,
§fn new_empty() -> ExposeDirectory
fn new_empty() -> ExposeDirectory
Self
. The specific value does not matter,
since it will be overwritten by decode
.§impl Default for ExposeDirectory
impl Default for ExposeDirectory
§fn default() -> ExposeDirectory
fn default() -> ExposeDirectory
§impl<D> Encode<ExposeDirectory, D> for &ExposeDirectorywhere
D: ResourceDialect,
impl<D> Encode<ExposeDirectory, D> for &ExposeDirectorywhere
D: ResourceDialect,
§impl PartialEq for ExposeDirectory
impl PartialEq for ExposeDirectory
§impl TypeMarker for ExposeDirectory
impl TypeMarker for ExposeDirectory
§type Owned = ExposeDirectory
type Owned = ExposeDirectory
§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
§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.§impl ValueTypeMarker for ExposeDirectory
impl ValueTypeMarker for ExposeDirectory
§type Borrowed<'a> = &'a ExposeDirectory
type Borrowed<'a> = &'a ExposeDirectory
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read more§fn borrow(
value: &<ExposeDirectory as TypeMarker>::Owned,
) -> <ExposeDirectory as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<ExposeDirectory as TypeMarker>::Owned, ) -> <ExposeDirectory as ValueTypeMarker>::Borrowed<'_>
&Self::Owned
to Self::Borrowed
.