Skip to main content

Module bag

Module bag 

Source
Expand description

Membership diffing, behind the unordered field type when the field is a set.

A set marked #[delta_struct(field_type = "unordered")] is treated as a bag of elements whose order carries no meaning, and represented as a BagDelta — which elements came and which went, and nothing about where they sit.

A map marked the same way gets an EntryDelta instead, since it can name a departing entry by key alone; see entry. Unordered is what picks between the two.

The derive emits calls to diff and apply; you only need this module directly to inspect or construct a delta by hand.

Structs§

BagDelta
A membership diff between two collections: what arrived and what left.

Functions§

apply
Applies a membership diff to target in place.
diff
Computes which elements new gained and which old lost.