module Data.Ruin.Ancillaries (
type (++),
Difference,
DifferenceByFst,
Elem,
Fst,
Head,
Intersection,
MapFst,
Snd,
Tail,
DisjointFields,
MustBeDisjoint,
MustHaveNoExtras,
Find,
FindViaFields,
Loc(..),
MergeLoc,
MightHave,
Pair(..),
SearchBoth,
unPair,
GArgsHas,
GBox,
GFieldType,
GFields,
GFind,
GenericBuildConArgs,
IsABox,
GenericBuild,
GenericFieldType,
GenericFields,
GenericHas,
GenericShape,
genericExtricate1,
genericBuild,
genericBuildNonStrict,
phoid,
prfrom,
prto,
(:@)(..),
FieldNames,
IsSubtypeOf,
IsSymmetricRecordOf,
Gives(..),
GiveAllItHas(..),
GivesThese,
GivesThis,
Hoid,
Label(..),
Lemma_AppendGivesThese,
SymmetricRecordsA,
Tup1(..),
mkLabel,
rupEval,
rupNonStrict,
) where
import Data.Ruin.All
import Data.Ruin.Hoid
import Data.Ruin.Internal