template <typename BuilderImpl>

class WireTableBaseBuilder

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

Public Methods

::fuchsia_component_decl::wire::OfferProtocol Build ()

Build and return the table. The builder should not be used after this.

bool has_source ()
void clear_source ()

Clears the source field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

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

BuilderImpl & source (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_component_decl::wire::Ref>> elem)

(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_name ()
void clear_source_name ()

Clears the source_name field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::StringView & source_name ()

(Required) Name identifying the protocol being offered.

BuilderImpl & source_name (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::StringView>> elem)

(Required) Name identifying the protocol being offered.

bool has_target ()
void clear_target ()

Clears the target field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

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

(Required) Reference to the target. Must be `child`, `collection`, or

a dictionary `capability`.

BuilderImpl & target (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_component_decl::wire::Ref>> elem)

(Required) Reference to the target. Must be `child`, `collection`, or

a dictionary `capability`.

bool has_target_name ()
void clear_target_name ()

Clears the target_name field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::StringView & target_name ()

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

BuilderImpl & target_name (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::StringView>> elem)

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

bool has_dependency_type ()
void clear_dependency_type ()

Clears the dependency_type field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

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

BuilderImpl & dependency_type (::fuchsia_component_decl::wire::DependencyType elem)

(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_availability ()
void clear_availability ()

Clears the availability field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

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

BuilderImpl & availability (::fuchsia_component_decl::wire::Availability elem)

(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_source_dictionary ()
void clear_source_dictionary ()

Clears the source_dictionary field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

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

BuilderImpl & source_dictionary (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::StringView>> elem)

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

Protected Methods

void WireTableBaseBuilder< ::fuchsia_component_decl::wire::OfferProtocol, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_decl::wire::OfferProtocol>> && frame)

Records