{-# LANGUAGE RankNTypes #-}
module Data.PTraversable
  ( PTraversable (..),
    ptraverse,

    -- * Specialized traversals
    fmapDefault,
    foldMapDefault,
    traverseDefault,
    cardinality1,
    enum1,
    coenum1,
    ptraverseDay, ptraverseDayWith,

    -- * Default equality and comparison
    eq1Default,
    liftEq',
    liftEqDefault,
    compare1Default,
    liftCompare',
    liftCompareDefault,

    WrappedPTraversable (..),

    -- * Generic derivation
    Generically1 (..)
  )
where

import GHC.Generics ( Generically1(..) )
import GHC.Generics.Orphans()
import Data.Orphans()

import Data.PTraversable.Internal.ClassOnly
import Data.PTraversable.Internal.Generics ()
import Data.PTraversable.Internal.Instances
import Data.PTraversable.Internal.Day