Module directory

Source
Expand description

Module holding different kinds of pseudo directories and their building blocks.

Modules§

common
Common utilities used by several directory implementations.
dirents_sink
Types that help describe get_entry_names callback for the lazy directories.
entry
Common trait for all the directory entry objects.
entry_container
EntryContainer is a trait implemented by directories that allow manipulation of their content.
helper
immutable
Directories that live in this module are “immutable” from the client standpoint. Even over a connection with the write access, clients may not rename, delete or link entries in these directories.
mutable
Directories that live in this module are “mutable” from the client standpoint. Their nested entries can be modified by the clients, such as renamed, deleted, linked, or new entries can be created.
read_dirents
A sink that can consume directory entry information, encoding them as expected by fuchsia.io Directory::ReadDirents result.
simple
This is an implementation of “simple” pseudo directories. Use crate::directory::immutable::Simple::new() to construct actual instances. See Simple for details.
test_utils
Common utilities used by directory related tests.
traversal_position
watchers
Watchers handles a list of watcher connections attached to a directory. Watchers as described in fuchsia.io.

Structs§

DirectoryOptions
A directory can be open either as a directory or a node.

Functions§

serve
Helper function to serve a new connection to directory with flags. Errors will be communicated via epitaph on the returned proxy. A new crate::execution_scope::ExecutionScope will be created for the request.
serve_read_only
Helper function to serve a new connection to directory as read-only (i.e. with fio::PERM_READABLE). Errors will be communicated via epitaph on the returned proxy. A new crate::execution_scope::ExecutionScope will be created for the request.