class ExposeProtocol

Defined at line 5512 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/wire_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 ()

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

void ExposeProtocol (const ExposeProtocol & other)

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

void ExposeProtocol (ExposeProtocol && other)

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

bool IsEmpty ()

Returns whether no field is set.

bool HasUnknownData ()

Returns whether the table references unknown fields.

::fidl::WireTableBuilder< ::fuchsia_component_decl::wire::ExposeProtocol> Builder (::fidl::AnyArena & arena)

Return a builder that by defaults allocates of an arena.

::fidl::WireTableExternalBuilder< ::fuchsia_component_decl::wire::ExposeProtocol> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_decl::wire::ExposeProtocol>> frame)

Return a builder that relies on explicitly allocating |fidl::ObjectView|s.

::fuchsia_component_decl::wire::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.

bool has_source ()
::fidl::StringView & source_name ()

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

this component.

bool has_source_name ()
::fuchsia_component_decl::wire::Ref & target ()

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

component's realm or the framework.

bool has_target ()
::fidl::StringView & target_name ()

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

bool has_target_name ()
::fuchsia_component_decl::wire::Availability & availability ()

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

See [`Availability`].

bool has_availability ()
::fidl::StringView & 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`.

bool has_source_dictionary ()
ExposeProtocol & set_source (::fidl::ObjectView< ::fuchsia_component_decl::wire::Ref> elem)
ExposeProtocol & set_source (std::nullptr_t )
ExposeProtocol & clear_source ()
ExposeProtocol & set_source_name (::fidl::ObjectView< ::fidl::StringView> elem)
ExposeProtocol & set_source_name (std::nullptr_t )
ExposeProtocol & clear_source_name ()
ExposeProtocol & set_target (::fidl::ObjectView< ::fuchsia_component_decl::wire::Ref> elem)
ExposeProtocol & set_target (std::nullptr_t )
ExposeProtocol & clear_target ()
ExposeProtocol & set_target_name (::fidl::ObjectView< ::fidl::StringView> elem)
ExposeProtocol & set_target_name (std::nullptr_t )
ExposeProtocol & clear_target_name ()
ExposeProtocol & set_availability (::fuchsia_component_decl::wire::Availability elem)
ExposeProtocol & clear_availability ()
ExposeProtocol & set_source_dictionary (::fidl::ObjectView< ::fidl::StringView> elem)
ExposeProtocol & set_source_dictionary (std::nullptr_t )
ExposeProtocol & clear_source_dictionary ()
void ExposeProtocol (::fidl::AnyArena & allocator)
void ExposeProtocol (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_decl::wire::ExposeProtocol>> && frame)

This constructor allows a user controlled allocation (not using a Arena).

It should only be used when performance is key.

As soon as the frame is given to the table, it must not be used directly or for another table.

void Allocate (::fidl::AnyArena & allocator)
void Init (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_decl::wire::ExposeProtocol>> && frame_ptr)
ExposeProtocol & operator= (const ExposeProtocol & other)

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

ExposeProtocol & operator= (ExposeProtocol && other)

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

void ~ExposeProtocol ()

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

Friends

class WireTableBaseBuilder
class WireTableBaseBuilder