template <>

class WireSyncClientImpl

Defined at line 6661 of file fidling/gen/sdk/fidl/fuchsia.component.runtime/fuchsia.component.runtime/cpp/fidl/fuchsia.component.runtime/cpp/wire_messaging.h

Methods to make a sync FIDL call directly on an unowned handle or a

const reference to a |::fidl::ClientEnd

<

::fuchsia_component_runtime::Capabilities>|,

avoiding setting up a client.

Public Methods

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::ConnectorCreate> ConnectorCreate (::zx::eventpair && connector, ::fidl::ClientEnd< ::fuchsia_component_runtime::Receiver> && receiver_client_end)

Creates a reference to a new connector capability. When the connector is

opened, the channel given to the open call will be sent over

`receiver_client_end`.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DirConnectorCreate> DirConnectorCreate (::zx::eventpair && dir_connector, ::fidl::ClientEnd< ::fuchsia_component_runtime::DirReceiver> && receiver_client_end)

Creates a reference to a new directory connector capability. When the

directory connector is opened, the channel given to the open call will

be sent over `receiver_client_end`.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DictionaryCreate> DictionaryCreate (::zx::eventpair && dictionary)

Creates a reference to a new dictionary capability.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DataCreate> DataCreate (::zx::eventpair && data_handle, ::fuchsia_component_runtime::wire::Data data)

Creates a reference to a new data capability with the given value.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 32 bytes of response buffer on the stack. Request is heap-allocated.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::ConnectorRouterCreate> ConnectorRouterCreate (::zx::eventpair && router, ::fidl::ClientEnd< ::fuchsia_component_runtime::ConnectorRouter> && router_client_end)

Creates a reference to a new router capability that will return a

connector capability when used.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DirConnectorRouterCreate> DirConnectorRouterCreate (::zx::eventpair && router, ::fidl::ClientEnd< ::fuchsia_component_runtime::DirConnectorRouter> && router_client_end)

Creates a reference to a new router capability that will return a

directory connector capability when used.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DictionaryRouterCreate> DictionaryRouterCreate (::zx::eventpair && router, ::fidl::ClientEnd< ::fuchsia_component_runtime::DictionaryRouter> && router_client_end)

Creates a reference to a new router capability that will return a

dictionary capability when used.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DataRouterCreate> DataRouterCreate (::zx::eventpair && router, ::fidl::ClientEnd< ::fuchsia_component_runtime::DataRouter> && router_client_end)

Creates a reference to a new router capability that will return a data

value when used.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::InstanceTokenCreate> InstanceTokenCreate (::zx::eventpair && instance_token)

Creates a new instance token, which is an opaque identifier associated

with a specific component. This instance token will be associated with

the component this connection is opened from.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::ConnectorOpen> ConnectorOpen (::zx::eventpair && connector, ::zx::channel && channel)

Uses the provided `connector` to open a new connection by delivering

this channel to whoever created the connector.

If there is an error, it will be reported as a zx.Status epitaph on

`channel`.

If the `connector` event pair handle is not correlated with a handle

given to `ConnectorCreate`, this connection will be closed.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DirConnectorOpen> DirConnectorOpen (::fuchsia_component_runtime::wire::CapabilitiesDirConnectorOpenRequest CapabilitiesDirConnectorOpenRequest)

Uses the provided `dir_connector` to open a new directory connection by

delivering this channel to whoever created the directory connector.

If there is an error, it will be reported as a zx.Status epitaph on

`channel`.

If the `dir_connector` event pair handle is not correlated with a handle

given to `DirConnectorCreate`, this connection will be closed.

`dir_connector` and `channel` are both required. `flags` and `path`

may be omitted.

Allocates 32 bytes of response buffer on the stack. Request is heap-allocated.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DictionaryInsert> DictionaryInsert (::zx::eventpair && dictionary, ::fidl::StringView key, ::zx::eventpair && value)

Inserts a new `capability` into this `Dictionary` under the name `key`.

Overwrites any existing entry.

Allocates 184 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DictionaryGet> DictionaryGet (::zx::eventpair && dictionary, ::fidl::StringView key, ::zx::eventpair && value)

Creates a new reference to the `capability` named `key` in this

dictionary, if that capability exists. That capability will remain in

the dictionary. To take a capability out of the dictionary, use

`DictionaryRemove`.

If `key` does not exist, `value` will not reference any capability and

the `NO_SUCH_CAPABILITY` error value will be returned.

Make sure this method returns before passing the handle's peer to other

methods in this API. The creation may not be complete before then.

Allocates 184 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DictionaryRemove> DictionaryRemove (::fuchsia_component_runtime::wire::CapabilitiesDictionaryRemoveRequest CapabilitiesDictionaryRemoveRequest)

Removes the `capability` named `key` from this dictionary and returns a

reference to it, if that capability exists.

`dictionary` and `key` are required. `capability` is optional, and when

set will become associated with the capability that was removed from the

dictionary.

If `key` does not exist, `value` will not reference any capability and

the `NO_SUCH_CAPABILITY` error value will be returned.

Make sure this method returns before passing the peer of `capability` to

other methods in this API. The creation may not be complete before then.

Allocates 208 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DictionaryIterateKeys> DictionaryIterateKeys (::zx::eventpair && dictionary, ::fidl::ServerEnd< ::fuchsia_component_runtime::DictionaryKeyIterator> && key_iterator)

Opens an iterator which can be used to iterate over the keys of this

dictionary.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DataGet> DataGet (::zx::eventpair && data_handle)

Returns the `Data` value that was provided to the `DataCreate` call used

with `data_handle`.

Allocates 24 bytes of request buffer on the stack. Response is heap-allocated.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::ConnectorRouterRoute> ConnectorRouterRoute (::zx::eventpair && router, ::fuchsia_component_runtime::wire::RouteRequest request, ::zx::eventpair && instance_token, ::zx::eventpair && connector)

Attempts to produce a `Connector` capability from this

`ConnectorRouter`.

`request` contains context for this route, and `instance_token`

references the component that the routing operation is being performed

for.

This will return:

- `SUCCESS` if `connector` has been associated with a connector.

- `UNAVAILABLE` if the capability is unavailable, in which case

`connector` will be closed.

- An error, if the operation failed.

Allocates 88 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DirConnectorRouterRoute> DirConnectorRouterRoute (::zx::eventpair && router, ::fuchsia_component_runtime::wire::RouteRequest request, ::zx::eventpair && instance_token, ::zx::eventpair && dir_connector)

Attempts to produce a `DirConnector` capability from this

`DirConnectorRouter`.

`request` contains context for this route, and `instance_token`

references the component that the routing operation is being performed

for.

This will return:

- `SUCCESS` if `dir_connector` has been associated with a connector.

- `UNAVAILABLE` if the capability is unavailable, in which case

`dir_connector` will be closed.

- An error, if the operation failed.

Allocates 88 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DictionaryRouterRoute> DictionaryRouterRoute (::zx::eventpair && router, ::fuchsia_component_runtime::wire::RouteRequest request, ::zx::eventpair && instance_token, ::zx::eventpair && dictionary)

Attempts to produce a `Dictionary` capability from this

`DictionaryRouter`.

`request` contains context for this route, and `instance_token`

references the component that the routing operation is being performed

for.

This will return:

- `SUCCESS` if `dictionary` has been associated with a connector.

- `UNAVAILABLE` if the capability is unavailable, in which case

`dictionary` will be closed.

- An error, if the operation failed.

Allocates 88 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::DataRouterRoute> DataRouterRoute (::zx::eventpair && router, ::fuchsia_component_runtime::wire::RouteRequest request, ::zx::eventpair && instance_token, ::zx::eventpair && data)

Attempts to produce a `Data` capability from this `DataRouter`.

`request` contains context for this route, and `instance_token`

references the component that the routing operation is being performed

for.

This will return:

- `SUCCESS` if `data` has been associated with a connector.

- `UNAVAILABLE` if the capability is unavailable, in which case `data`

will be closed.

- An error, if the operation failed.

Allocates 88 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component_runtime::Capabilities::CapabilityAssociateHandle> CapabilityAssociateHandle (::zx::eventpair && capability_handle, ::zx::eventpair && other_handle)

Associates `other_handle` with the same capability referenced by

`capability_handle`.

Typically if one already has `capability_handle` the handle can be

duplicated to make a new handle that references the same object, but

this doesn't work when someone else has provided a handle that should be

associated with an existing object.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.