switch package:row-types
A
Var and a
Rec can combine if their rows line up
properly. Given a Variant along with a Record of functions from each
possible value of the variant to a single output type, apply the
correct function to the value in the variant.
This module provides the ability to discharge a polymorphic variant
using a record that has matching fields.