class OfferProtocol
Defined at line 10572 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/wire_types.h
Declares a protocol 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.
To learn more about protocols, see:
https://fuchsia.dev/fuchsia-src/glossary#protocol
Public Methods
bool IsEmpty ()
Returns whether no field is set.
bool HasUnknownData ()
Returns whether the table references unknown fields.
::fidl::WireTableBuilder< ::fuchsia_component_decl::wire::OfferProtocol> Builder (::fidl::AnyArena & arena)
Return a builder that by defaults allocates of an arena.
::fidl::WireTableExternalBuilder< ::fuchsia_component_decl::wire::OfferProtocol> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_decl::wire::OfferProtocol>> frame)
Return a builder that relies on explicitly allocating |fidl::ObjectView|s.
void Allocate (::fidl::AnyArena & allocator)
void Init (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_decl::wire::OfferProtocol>> && frame_ptr)
void OfferProtocol ()
Defined at line 10574 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/wire_types.h
void OfferProtocol (const OfferProtocol & other)
Defined at line 10575 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/wire_types.h
void OfferProtocol (OfferProtocol && other)
Defined at line 10577 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/wire_types.h
OfferProtocol & operator= (OfferProtocol && other)
Defined at line 10578 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/wire_types.h
::fuchsia_component_decl::wire::Ref & source ()
(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.
bool has_source ()
::fidl::StringView & source_name ()
(Required) Name identifying the protocol being offered.
bool has_source_name ()
::fuchsia_component_decl::wire::Ref & target ()
(Required) Reference to the target. Must be `child`, `collection`, or
a dictionary `capability`.
bool has_target ()
::fidl::StringView & target_name ()
(Required) The name by which the capability is being offered.
bool has_target_name ()
::fuchsia_component_decl::wire::DependencyType & dependency_type ()
(Required) The dependency type this offer represents. A component which
receives a weak offer must support the offered capability being
unavailable at any point.
bool has_dependency_type ()
::fuchsia_component_decl::wire::Availability & 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.
bool has_availability ()
OfferProtocol & operator= (const OfferProtocol & other)
Defined at line 10576 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/wire_types.h
::fidl::StringView & source_dictionary ()
(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.
bool has_source_dictionary ()
OfferProtocol & set_source (::fidl::ObjectView< ::fuchsia_component_decl::wire::Ref> elem)
OfferProtocol & set_source (std::nullptr_t )
OfferProtocol & clear_source ()
OfferProtocol & set_source_name (::fidl::ObjectView< ::fidl::StringView> elem)
OfferProtocol & set_source_name (std::nullptr_t )
OfferProtocol & clear_source_name ()
OfferProtocol & set_target (::fidl::ObjectView< ::fuchsia_component_decl::wire::Ref> elem)
OfferProtocol & set_target (std::nullptr_t )
OfferProtocol & clear_target ()
OfferProtocol & set_target_name (::fidl::ObjectView< ::fidl::StringView> elem)
OfferProtocol & set_target_name (std::nullptr_t )
OfferProtocol & clear_target_name ()
OfferProtocol & set_dependency_type (::fuchsia_component_decl::wire::DependencyType elem)
OfferProtocol & clear_dependency_type ()
OfferProtocol & set_availability (::fuchsia_component_decl::wire::Availability elem)
OfferProtocol & clear_availability ()
OfferProtocol & set_source_dictionary (::fidl::ObjectView< ::fidl::StringView> elem)
OfferProtocol & set_source_dictionary (std::nullptr_t )
OfferProtocol & clear_source_dictionary ()
void OfferProtocol (::fidl::AnyArena & allocator)
void OfferProtocol (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_decl::wire::OfferProtocol>> && 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 ~OfferProtocol ()
Defined at line 10580 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