class ExposeProtocol

Defined at line 3576 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h

Declares a protocol exposed to a component's containing realm, such as

a protocol exposed by the component or one of its children at runtime.

To learn more about protocols, see:

https://fuchsia.dev/fuchsia-src/glossary#protocol

Public Methods

void ExposeProtocol (Storage_ storage)
void ExposeProtocol ()

Defined at line 3581 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h

void ExposeProtocol (ExposeProtocol && )

Defined at line 3582 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h

void ExposeProtocol (const ExposeProtocol & other)
ExposeProtocol & operator= (ExposeProtocol && )

Defined at line 3583 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h

ExposeProtocol & operator= (const ExposeProtocol & other)
bool operator== (const ExposeProtocol & other)
bool operator!= (const ExposeProtocol & other)
bool IsEmpty ()
const std::optional< ::fuchsia_component_decl::Ref> & source ()

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

::std::optional< ::fuchsia_component_decl::Ref> & source ()

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

ExposeProtocol & source (std::optional< ::fuchsia_component_decl::Ref> value)

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

const std::optional< ::std::string> & source_name ()

(Required) Name identifying the protocol, by which it was presented to

this component.

::std::optional< ::std::string> & source_name ()

(Required) Name identifying the protocol, by which it was presented to

this component.

ExposeProtocol & source_name (std::optional< ::std::string> value)

(Required) Name identifying the protocol, by which it was presented to

this component.

const std::optional< ::fuchsia_component_decl::Ref> & target ()

(Required) The destination to which the protocol is exposed: either the

component's realm or the framework.

::std::optional< ::fuchsia_component_decl::Ref> & target ()

(Required) The destination to which the protocol is exposed: either the

component's realm or the framework.

ExposeProtocol & target (std::optional< ::fuchsia_component_decl::Ref> value)

(Required) The destination to which the protocol is exposed: either the

component's realm or the framework.

const std::optional< ::std::string> & target_name ()

(Required) The name by which the capability is being exposed.

::std::optional< ::std::string> & target_name ()

(Required) The name by which the capability is being exposed.

ExposeProtocol & target_name (std::optional< ::std::string> value)

(Required) The name by which the capability is being exposed.

const std::optional< ::fuchsia_component_decl::Availability> & availability ()

(Optional, defaults to `REQUIRED`) The availability of this capability.

See [`Availability`].

::std::optional< ::fuchsia_component_decl::Availability> & availability ()

(Optional, defaults to `REQUIRED`) The availability of this capability.

See [`Availability`].

ExposeProtocol & availability (std::optional< ::fuchsia_component_decl::Availability> value)

(Optional, defaults to `REQUIRED`) The availability of this capability.

See [`Availability`].

const std::optional< ::std::string> & source_dictionary ()

(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`.

::std::optional< ::std::string> & source_dictionary ()

(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`.

ExposeProtocol & source_dictionary (std::optional< ::std::string> value)

(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`.

void ExposeProtocol (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Friends

class MemberVisitor
class NaturalTableCodingTraits