The Fuchsia SDK now provides a set of move-only containers for the different Zircon kernel object types, providing the same lifetime management as ScopedZxHandle, with the added benefit of type-safety.
We are also starting to land FIDL integrations, for which the generated C++ uses the libzx wrapper types, so we end up with increasing amounts of boilerplate translating between the libzx and Chromium wrappers. This is fragile both in terms of type-safety and correctness of lifetime management, since we're often forced to release() and re-adopt handles.
We should work through the existing ScopedZxHandle users and migrate them to libzx containers.
Comment 1 by w...@chromium.org
, Jun 13 2018