This directory contains example code for using the new C++ bindings.
To use the unified bindings for a library //examples/fidl/fuchsia.examples
, declare the following dependency:
deps = [ "//examples/fidl/fuchsia.examples:fuchsia.examples_cpp", ]
and include the following header:
#include <fidl/fuchsia.examples/cpp/fidl.h>
To run the client example, run the echo_realm
component. This creates the client and server component instances and routes the capabilities:
ffx component run /core/ffx-laboratory:echo_realm fuchsia-pkg://fuchsia.com/echo-cpp-client#meta/echo_realm.cm
Then, we can start the echo_client
instance:
ffx component start /core/ffx-laboratory:echo_realm/echo_client
The server component starts when the client attempts to connect to the Echo
protocol. You should see the following output using fx log
:
[echo_server][I] Running echo server [echo_server][I] Incoming connection for fuchsia.examples.Echo [echo_client][I] (Natural types) got response: hello [echo_client][I] (Natural types) got response: hello [echo_client][I] (Wire types) got response: hello [echo_server][W] server error: FIDL endpoint was unbound due to peer closed, status: ZX_ERR_PEER_CLOSED (-24)