package diff
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Module DiffSource
This module contains what might be described as faux lenses. This includes support for composition, getting, setting, etc.
Specifies how the record should be traversed when a diff is computed.
leaf ~field ~equal is a terminal node in the spec tree.
When computing a diff, the fields are gotten using Field.get and compared with equal. If the values are not equal, the diff includes the new value.
child ~field ~spec is an intermediate node in the spec tree.
When computing a diff, the diff for the children is recursively computed.
opt_child ~field ~spec is an optional intermediate node in the spec tree.
When computing a diff, the diff for the children is recursively computed if the child is present.
Represents a difference between two records of the same type.
compute v0 v1 spec returns a list of all the differences between v0 and v1 using spec to traverse the values.