View Source API Reference Vectoree v0.0.2

Modules

Vectoree provides a bunch of modules for working with tree-ish data structures. The data structure is kept flat, i.e. all data is stored in plain maps. Each map entry consists of a key of type TreePath and an arbitrary payload. The Tree module provides functions for working with the tree (map).

A module containing functions for interacting with the "tree" data structure, the latter being a key-value store (map) with keys being TreePath structs and a payload value of arbitrary type.

A canonical path implementation for tree structures.

A behaviour module for implementing a server, which maintains a local tree (key-value map) as its internal state and reacts on changes on another part of the (global) tree. A processor is supposed to be

A module for running a GenServer process, which acts as a central hosting point of a "tree" (key-value map). The server can host a local part of a (typically static) tree, which forms the base for other subtrees, which are mounted as concurrent processes of type TreeSource and TreeProcessor on the central server. Concurrent processes of type TreeProcessor and TreeSink can be registered on the central server to receive updates on subtrees via casts.

A behaviour module for implementing a server, which reacts on changes on another part of the (global) tree. A sink is supposed to be registered on one or more paths on a TreeServer via the TreeServer.register_sink/1 function, at any time.

A behaviour module for implementing a server, which maintains a local tree (key-value map) as its internal state. A source is supposed to be mounted on a TreeServer at a path via the TreeServer.mount_source/1 function, normally during the c:init/1 callback. It is then supposed to do two things