pub struct Protocol {
    pub name: Option<String>,
    pub as_: Option<String>,
    pub type_: Option<DependencyType>,
    pub path: Option<String>,
    pub availability: Option<Availability>,
    pub from_dictionary: Option<String>,
    /* private fields */
}Expand description
A protocol capability
Fields§
§name: Option<String>The name of the capability. This is usually the name of the FIDL
protocol, e.g. fuchsia.logger.LogSink. If path is not set, the
protocol will be installed in a target component’s namespace at
/svc/{name}.
as_: Option<String>A rename of the capability, which can be set when routing to another component. This field is optional.
type_: Option<DependencyType>For information on this type, see
https://fuchsia.dev/go/components/declaration#DependencyType.
This field is optional and defaults to STRONG.
path: Option<String>Override the path in which the protocol is installed. Instead of
/svc/{name}, this value will be used. Path should begin with a
leading slash and omit a trailing slash, e.g.
/foo/fuchsia.logger.LogSink. This field is optional.
availability: Option<Availability>Optional. Cannot be set to SameAsTarget if to contains a local
component.
from_dictionary: Option<String>Optional. If set, the path to the dictionary routed by from which contains
the capability. Superseded by [Realm.AddRouteFromDictionary].
Trait Implementations§
Source§impl<D> Decode<Protocol, D> for Protocolwhere
    D: ResourceDialect,
 
impl<D> Decode<Protocol, D> for Protocolwhere
    D: ResourceDialect,
Source§impl TypeMarker for Protocol
 
impl TypeMarker for Protocol
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.Source§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 moreSource§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 Protocol
 
impl ValueTypeMarker for Protocol
Source§type Borrowed<'a> = &'a Protocol
 
type Borrowed<'a> = &'a Protocol
Encode<Self>
type cheaply obtainable from &Self::Owned. There are three cases: Read moreSource§fn borrow(
    value: &<Protocol as TypeMarker>::Owned,
) -> <Protocol as ValueTypeMarker>::Borrowed<'_>
 
fn borrow( value: &<Protocol as TypeMarker>::Owned, ) -> <Protocol as ValueTypeMarker>::Borrowed<'_>
&Self::Owned to Self::Borrowed.