FVariantValueDeltaOperation<K extends FVariantConstraint, E extends FVariant, V, D extends Delta>.remove constructor
FVariantValueDeltaOperation<K extends FVariantConstraint, E extends FVariant, V, D extends Delta>.remove (
- Set<
K> constraints
Removes exact constraints from existing variants.
Unlike FVariantValueDeltaOperation.removeMatch, this removes exact entries rather than matching existing variants.
// Given {a: 1, b: 2, c: 3}
.remove({a, b}) // {c: 3}
See also:
- FVariantValueDeltaOperation.removeMatch for removing variants whose constraint's variants are all present.
- FVariantValueDeltaOperation.removeAll for removing all variants.
Implementation
FVariantValueDeltaOperation.remove(Set<K> constraints)
: _call = ((base, existing) => .raw(base, {
for (final MapEntry(key: constraint, :value) in existing.entries)
if (!constraints.contains(constraint)) constraint: value,
}));