class Component
Defined at line 300 of file fidling/gen/sdk/fidl/fuchsia.component.resolution/fuchsia.component.resolution/cpp/fidl/fuchsia.component.resolution/cpp/wire_types.h
A component is a unit of executable software.
This object provides the component's declaration, access to its package's
content, and relevant metadata as resolved `fuchsia.component.resolution.Resolver`.
Public Methods
void Component ()
Defined at line 302 of file fidling/gen/sdk/fidl/fuchsia.component.resolution/fuchsia.component.resolution/cpp/fidl/fuchsia.component.resolution/cpp/wire_types.h
void Component (const Component & other)
Defined at line 303 of file fidling/gen/sdk/fidl/fuchsia.component.resolution/fuchsia.component.resolution/cpp/fidl/fuchsia.component.resolution/cpp/wire_types.h
void Component (Component && other)
Defined at line 305 of file fidling/gen/sdk/fidl/fuchsia.component.resolution/fuchsia.component.resolution/cpp/fidl/fuchsia.component.resolution/cpp/wire_types.h
bool IsEmpty ()
Returns whether no field is set.
bool HasUnknownData ()
Returns whether the table references unknown fields.
void _CloseHandles ()
::fidl::WireTableBuilder< ::fuchsia_component_resolution::wire::Component> Builder (::fidl::AnyArena & arena)
Return a builder that by defaults allocates of an arena.
::fidl::WireTableExternalBuilder< ::fuchsia_component_resolution::wire::Component> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_resolution::wire::Component>> frame)
Return a builder that relies on explicitly allocating |fidl::ObjectView|s.
::fidl::StringView & url ()
The resolved URL of the component.
This is the canonical URL obtained by the component resolver after
following redirects and resolving relative paths.
bool has_url ()
::fuchsia_mem::wire::Data & decl ()
Binary representation of the component's declaration (`fuchsia.component.decl.Component`).
This information is typically obtained from the component's manifest
or generated by the component resolver.
bool has_decl ()
::fuchsia_component_resolution::wire::Package & package ()
The package that contains the component.
By convention, the component's package is mapped to "/pkg" in its
namespace at runtime.
This is null if the component is not represented as a package.
In that case, it is the runner's responsibility to load the component's
resource from the `url`. This mechanism is used for web
applications.
Most runners, including but not limited to the builtin ELF runner,
require the package's directory connection to have OPEN_RIGHT_EXECUTABLE
rights in order to run the resolved component.
bool has_package ()
::fuchsia_mem::wire::Data & config_values ()
Binary representation of the component's configuration values
(`fuchsia.component.config.ValuesData`).
bool has_config_values ()
::fuchsia_component_resolution::wire::Context & resolution_context ()
The context used to resolve `component_url`s relative to this
component. Pass this value to `Resolver::ResolveWithContext()` when
resolving a component URL that _may_ be relative to this `Component`.
The `resolution_context` is an opaque value (from the perspective of
component resolution) that is provided by a component `Resolver` to save
with a parent `Component`.
`Resolver`s that can resolve relative path component URLs, via
`ResolveWithContext`, should return a `resolution_context` from both
`Resolve` and `ResolveWithContext`. Relative path component URLs can
only be resolved via `ResolveWithContext`, which requires a valid
resolution `Context`.
bool has_resolution_context ()
uint64_t & abi_revision ()
The target ABI revision of the resolved component.
bool has_abi_revision ()
Component & set_url (::fidl::ObjectView< ::fidl::StringView> elem)
Component & set_url (std::nullptr_t )
Component & clear_url ()
Component & set_decl (::fidl::ObjectView< ::fuchsia_mem::wire::Data> elem)
Component & set_decl (std::nullptr_t )
Component & clear_decl ()
Component & set_package (::fidl::ObjectView< ::fuchsia_component_resolution::wire::Package> elem)
Component & set_package (std::nullptr_t )
Component & clear_package ()
Component & set_config_values (::fidl::ObjectView< ::fuchsia_mem::wire::Data> elem)
Component & set_config_values (std::nullptr_t )
Component & clear_config_values ()
Component & set_resolution_context (::fidl::ObjectView< ::fuchsia_component_resolution::wire::Context> elem)
Component & set_resolution_context (std::nullptr_t )
Component & clear_resolution_context ()
Component & set_abi_revision (::fidl::ObjectView<uint64_t> elem)
Component & set_abi_revision (std::nullptr_t )
Component & clear_abi_revision ()
void Component (::fidl::AnyArena & allocator)
void Component (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_component_resolution::wire::Component>> && 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_resolution::wire::Component>> && frame_ptr)
Component & operator= (const Component & other)
Defined at line 304 of file fidling/gen/sdk/fidl/fuchsia.component.resolution/fuchsia.component.resolution/cpp/fidl/fuchsia.component.resolution/cpp/wire_types.h
Component & operator= (Component && other)
Defined at line 306 of file fidling/gen/sdk/fidl/fuchsia.component.resolution/fuchsia.component.resolution/cpp/fidl/fuchsia.component.resolution/cpp/wire_types.h
void ~Component ()
Defined at line 308 of file fidling/gen/sdk/fidl/fuchsia.component.resolution/fuchsia.component.resolution/cpp/fidl/fuchsia.component.resolution/cpp/wire_types.h
Friends
class WireTableBaseBuilder
class WireTableBaseBuilder