class OfferService
Defined at line 5419 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h
Declares a service 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 services, see:
https://fuchsia.dev/fuchsia-src/glossary#service
Public Methods
void OfferService (Storage_ storage)
void OfferService ()
Defined at line 5424 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h
void OfferService (OfferService && )
Defined at line 5425 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h
void OfferService (const OfferService & other)
OfferService & operator= (OfferService && )
Defined at line 5426 of file fidling/gen/sdk/fidl/fuchsia.component.decl/fuchsia.component.decl/cpp/fidl/fuchsia.component.decl/cpp/natural_types.h
OfferService & operator= (const OfferService & other)
bool operator== (const OfferService & other)
bool operator!= (const OfferService & other)
bool IsEmpty ()
const std::optional< ::fuchsia_component_decl::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.
::std::optional< ::fuchsia_component_decl::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.
OfferService & source (std::optional< ::fuchsia_component_decl::Ref> value)
(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.
const std::optional< ::std::string> & source_name ()
(Required) Name identifying the service being offered.
::std::optional< ::std::string> & source_name ()
(Required) Name identifying the service being offered.
OfferService & source_name (std::optional< ::std::string> value)
(Required) Name identifying the service being offered.
const std::optional< ::fuchsia_component_decl::Ref> & target ()
(Required) Reference to the target. Must be `child`, `collection`, or
a dictionary `capability`.
::std::optional< ::fuchsia_component_decl::Ref> & target ()
(Required) Reference to the target. Must be `child`, `collection`, or
a dictionary `capability`.
OfferService & target (std::optional< ::fuchsia_component_decl::Ref> value)
(Required) Reference to the target. Must be `child`, `collection`, or
a dictionary `capability`.
const std::optional< ::std::string> & target_name ()
(Required) The name under which the capability is being offered.
::std::optional< ::std::string> & target_name ()
(Required) The name under which the capability is being offered.
OfferService & target_name (std::optional< ::std::string> value)
(Required) The name under which the capability is being offered.
const std::optional< ::std::vector< ::std::string>> & source_instance_filter ()
(Optional) The list of allowlisted instances to be offered. Instances
of the service not in this list will not be accessible by the target
component. If this is not set that means all instances from the source
service are offered.
::std::optional< ::std::vector< ::std::string>> & source_instance_filter ()
(Optional) The list of allowlisted instances to be offered. Instances
of the service not in this list will not be accessible by the target
component. If this is not set that means all instances from the source
service are offered.
OfferService & source_instance_filter (std::optional< ::std::vector< ::std::string>> value)
(Optional) The list of allowlisted instances to be offered. Instances
of the service not in this list will not be accessible by the target
component. If this is not set that means all instances from the source
service are offered.
const std::optional< ::std::vector< ::fuchsia_component_decl::NameMapping>> & renamed_instances ()
(Optional) The list of allowlisted instances to be offered, with
renames.
If this is set and nonempty, the set of instances in the target service
will be restricted to the instances in this list, renaming `source_name`
to `target_name`.
If it is set and nonempty, `source_instance_filter` will further
restrict the set of instances to those whose `target_name` appears in
that list. There is generally no reason to set both, but we support it
for compatibility.
::std::optional< ::std::vector< ::fuchsia_component_decl::NameMapping>> & renamed_instances ()
(Optional) The list of allowlisted instances to be offered, with
renames.
If this is set and nonempty, the set of instances in the target service
will be restricted to the instances in this list, renaming `source_name`
to `target_name`.
If it is set and nonempty, `source_instance_filter` will further
restrict the set of instances to those whose `target_name` appears in
that list. There is generally no reason to set both, but we support it
for compatibility.
OfferService & renamed_instances (std::optional< ::std::vector< ::fuchsia_component_decl::NameMapping>> value)
(Optional) The list of allowlisted instances to be offered, with
renames.
If this is set and nonempty, the set of instances in the target service
will be restricted to the instances in this list, renaming `source_name`
to `target_name`.
If it is set and nonempty, `source_instance_filter` will further
restrict the set of instances to those whose `target_name` appears in
that list. There is generally no reason to set both, but we support it
for compatibility.
const std::optional< ::fuchsia_component_decl::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.
::std::optional< ::fuchsia_component_decl::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.
OfferService & availability (std::optional< ::fuchsia_component_decl::Availability> value)
(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.
const std::optional< ::std::string> & 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.
::std::optional< ::std::string> & 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.
OfferService & source_dictionary (std::optional< ::std::string> value)
(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.
const std::optional< ::fuchsia_component_decl::DependencyType> & dependency_type ()
(Optional, defaults to `STRONG`) The dependency type this offer represents.
A component which receives a weak offer must support the offered capability being
unavailable at any point.
::std::optional< ::fuchsia_component_decl::DependencyType> & dependency_type ()
(Optional, defaults to `STRONG`) The dependency type this offer represents.
A component which receives a weak offer must support the offered capability being
unavailable at any point.
OfferService & dependency_type (std::optional< ::fuchsia_component_decl::DependencyType> value)
(Optional, defaults to `STRONG`) The dependency type this offer represents.
A component which receives a weak offer must support the offered capability being
unavailable at any point.
void OfferService (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )
Friends
class MemberVisitor
class NaturalTableCodingTraits