OT v0.1.0 OT.Text.Operation

A list of components that iterates over and/or modifies a piece of text

Summary

Types

t()

An operation, which is a list consisting of OT.Text.Component.retain/0, OT.Text.Component.insert/0, and OT.Text.Component.delete/0 components

Functions

Append a component to an operation

Invert an operation

Join two operations into a single operation

Types

An operation, which is a list consisting of OT.Text.Component.retain/0, OT.Text.Component.insert/0, and OT.Text.Component.delete/0 components

Functions

append(op, comp)
append(t, OT.Text.Component.t) :: t

Append a component to an operation.

Example

iex> OT.Text.Operation.append([%{i: "Foo"}], %{i: "Bar"})
[%{i: "FooBar"}]
invert(op)
invert(t) :: t

Invert an operation.

Example

iex> OT.Text.Operation.invert([4, %{i: "Foo"}])
[4, %{d: "Foo"}]
join(op_a, op_b)
join(t, t) :: t

Join two operations into a single operation.

Example

iex> OT.Text.Operation.join([3, %{i: "Foo"}], [%{i: "Bar"}, 4])
[3, %{i: "FooBar"}, 4]