class FakeHandleTable
Defined at line 125 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
FakeHandleTable manipulates handle-related syscalls to use the fake handles
vended by the fake-object library. All fake object instances are expected to be
added to the FakeHandleTable singleton.
See https://fuchsia.dev/fuchsia-src/concepts/kernel/handles for more details on handles.
Public Methods
bool IsValidFakeHandle (zx_handle_t handle)
Returns true if |handle| routes to a fake object added to a FakeHandleTable. This function
is used decide whether the real or fake function should be called based on the handle.
Defined at line 18 of file ../../sdk/lib/driver/fake-object/cpp/fake-handle.cc
zx::result<zx_handle_t> Add (std::shared_ptr<FakeObject> obj)
Creates and adds a fake handle for |obj| into FakeHandleTable. |obj| is moved and stored
into FakeHandleTable.
Defined at line 50 of file ../../sdk/lib/driver/fake-object/cpp/fake-handle.cc
zx::result<std::shared_ptr<FakeObject>> Get (zx_handle_t handle)
Returns a shared pointer to the FakeObject that maps to |handle|.
Defined at line 36 of file ../../sdk/lib/driver/fake-object/cpp/fake-handle.cc
zx::result<> Remove (zx_handle_t handle)
Remove the handle from FakeHandleTable.
Defined at line 78 of file ../../sdk/lib/driver/fake-object/cpp/fake-handle.cc
void Clear ()
Removes all handles in FakeHandleTable.
Defined at line 93 of file ../../sdk/lib/driver/fake-object/cpp/fake-handle.cc
void Dump ()
Prints information on all the handles in FakeHandleTable.
Defined at line 98 of file ../../sdk/lib/driver/fake-object/cpp/fake-handle.cc
void FakeHandleTable ()
Defined at line 127 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
void ~FakeHandleTable ()
Defined at line 128 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
void FakeHandleTable (const FakeHandleTable & )
Defined at line 130 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
FakeHandleTable & operator= (const FakeHandleTable & )
Defined at line 131 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
void FakeHandleTable (FakeHandleTable && )
Defined at line 132 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
FakeHandleTable & operator= (FakeHandleTable && )
Defined at line 133 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
template <typename ObjectCallback>
void ForEach (zx_obj_type_t type, const ObjectCallback cb)
Walks the handle table and calls |cb| on each handle that matches the
provided |type|. Stops walking the table when |cb| returns false.
|cb| must NOT attempt to acquire the lock, so this method is not suitable
for internal methods.
Defined at line 158 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h
size_t size ()
Defined at line 172 of file ../../sdk/lib/driver/fake-object/cpp/fake-object.h