[][src]Module crdt_tree::opmove

This module contains OpMove. Implements OpMove, the only way to manipulate Tree data.

OpMove are applied via State::apply_op()

For usage/examples, see: examples/tree.rs test/tree.rs

This code aims to be an accurate implementation of the tree crdt described in:

"A highly-available move operation for replicated trees and distributed filesystems" [1] by Martin Klepmann, et al.

[1] https://martin.kleppmann.com/papers/move-op.pdf

For clarity, data structures in this implementation are named the same as in the paper (State, Tree) or close to (OpMove --> Move, LogOpMove --> LogOp). Some are not explicitly named in the paper, such as TreeId, TreeMeta, TreeNode, Clock.

Structs

OpMove

From the paper: