module Opaleye.Distinct (distinct,
distinctOn,
distinctOnBy,
distinctExplicit,
Distinctspec,
distinctspecField,
distinctspecMaybeFields,
distinctOnCorrect,
distinctOnByCorrect,
)
where
import Opaleye.Select (Select)
import Opaleye.Internal.Distinct
import Opaleye.Order
import qualified Data.Profunctor.Product.Default as D
import Opaleye.Internal.Unpackspec (Unpackspec)
distinct :: D.Default Distinctspec fields fields =>
D.Default Unpackspec fields fields =>
Select fields -> Select fields
distinct :: forall fields.
(Default Distinctspec fields fields,
Default Unpackspec fields fields) =>
Select fields -> Select fields
distinct = Unpackspec fields fields
-> Distinctspec fields fields -> Select fields -> Select fields
forall fields fields'.
Unpackspec fields fields
-> Distinctspec fields fields' -> Select fields -> Select fields'
distinctExplicit Unpackspec fields fields
forall (p :: * -> * -> *) a b. Default p a b => p a b
D.def Distinctspec fields fields
forall (p :: * -> * -> *) a b. Default p a b => p a b
D.def