TreeIOContext

Active context for I/O operations. Keeps track of currently active systems for each I/O interface.

I/O systems are changed by a replace operation. replace takes the new I/O systems, but returns the one set previously. This can be used to manage I/Os as a stack:

auto previous = io.replace(id, this);
scope (exit) io.replace(id, previous);

Members

Functions

dup
TreeIOContext dup()

Create a copy of the context.

get
IO get(IOID id)
T get()
opIndex
auto opIndex()

Iterate on all active I/O systems.

replace
IO replace(IOID id, IO system)

Set currently active I/O instance for a set interface.

Structs

IOInstance
struct IOInstance
Undocumented in source.

Meta