Grove.Tree.Move (Grove v0.1.1)

View Source

Public move operation structure (what replicas exchange).

Does NOT include old_parent - that's computed during application.

This is part of Kleppmann's tree move algorithm for CRDT-safe concurrent moves.

Summary

Types

t()

@type t() :: %Grove.Tree.Move{
  child_id: String.t(),
  metadata: map(),
  parent_id: String.t() | nil,
  position: Grove.Node.position() | nil,
  timestamp: Grove.HybridLogicalClock.t()
}