Function differential_dataflow::lattice::antichain_join_into
source · pub fn antichain_join_into<T: Lattice>(
one: &[T],
other: &[T],
upper: &mut Antichain<T>,
)
Expand description
Returns the “smallest” minimal antichain “greater or equal” to both inputs.
This method is primarily meant for cases where one cannot use the methods
of Antichain
’s PartialOrder
implementation, such as when one has only
references rather than owned antichains.
This function is similar to antichain_join but reuses an existing allocation. The provided antichain is cleared before inserting elements.
§Examples
let mut join = Antichain::new();
let f1 = &[Product::new(3, 7), Product::new(5, 6)];
let f2 = &[Product::new(4, 6)];
antichain_join_into(f1, f2, &mut join);
assert_eq!(&*join.elements(), &[Product::new(4, 7), Product::new(5, 6)]);