This package provides a data type 'These a b' which can hold a value of either
type or values of each type. This is usually thought of as an "inclusive or"
type (contrasting 'Either a b' as "exclusive or") or as an "outer join" type
(contrasting '(a, b)' as "inner join").
' data These a b = This a | That b | These a b '
Since version 1, this package was split into parts:
* <https://hackage.haskell.org/package/semialign semialign> For 'Align' and
'Zip' type-classes.
* <https://hackage.haskell.org/package/semialign-indexed semialign-indexed> For
'SemialignWithIndex' class, providing 'ialignWith' and 'izipWith'.
* <https://hackage.haskell.org/package/these-lens these-lens> For lens
combinators.
* <http://hackage.haskell.org/package/monad-chronicle monad-chronicle> For
transformers variant of 'These'.