{-# LANGUAGE RankNTypes #-} module Dhall.X where import Data.Data (Data(..)) import Data.Text.Prettyprint.Doc (Pretty(..)) import Instances.TH.Lift () import Language.Haskell.TH.Syntax (Lift, lift) -- | Like `Data.Void.Void`, except with a shorter inferred type newtype X = X { absurd :: forall a . a } instance Show X where show = absurd instance Eq X where _ == _ = True instance Data X where dataTypeOf = absurd gunfold _ _ _ = undefined toConstr = absurd instance Pretty X where pretty = absurd instance Lift X where lift (X impossible) = impossible