{-# LANGUAGE TypeFamilies, FlexibleContexts #-} module Data.Domain where import Data.SetClass class Set (Domain a) => HasDomain a where type Domain a domain :: a -> Domain a