class Node

Defined at line 23 of file ../../sdk/lib/vfs/cpp/node.h

Represents an object in a file system that communicates via the `fuchsia.io.Node` protocol, and

potentially supports the composed protocols `fuchsia.io.Directory` and `fuchsia.io.File`.

Public Methods

void ~Node ()

Defined at line 25 of file ../../sdk/lib/vfs/cpp/node.h

void Node (const Node & node)

Defined at line 29 of file ../../sdk/lib/vfs/cpp/node.h

Node & operator= (const Node & node)

Defined at line 30 of file ../../sdk/lib/vfs/cpp/node.h

void Node (Node && node)

Defined at line 31 of file ../../sdk/lib/vfs/cpp/node.h

Node & operator= (Node && node)

Defined at line 32 of file ../../sdk/lib/vfs/cpp/node.h

Protected Methods

void Node (vfs_internal_node_t * handle)

Defined at line 35 of file ../../sdk/lib/vfs/cpp/node.h

const vfs_internal_node_t * handle ()

Defined at line 37 of file ../../sdk/lib/vfs/cpp/node.h

vfs_internal_node_t * handle ()

Defined at line 38 of file ../../sdk/lib/vfs/cpp/node.h

zx_status_t ServeInternal (fuchsia_io::Flags flags, zx::channel request, async_dispatcher_t * dispatcher)

Establishes a connection for `request` using the given `flags`.

This method must only be used with a single-threaded asynchronous dispatcher. If `dispatcher`

is `nullptr`, the current thread's default dispatcher will be used via

`async_get_default_dispatcher`. The same `dispatcher` must be used if multiple connections are

served for the same node, otherwise `ZX_ERR_INVALID_ARGS` will be returned.

*WARNING*: Not all nodes can be served due to lifetime restrictions (e.g. `LazyDir`).

Defined at line 53 of file ../../sdk/lib/vfs/cpp/node.h

Friends

class PseudoDir
class LazyDir
class ComposedServiceDir