{-# LANGUAGE Safe #-}
# LANGUAGE MultiParamTypeClasses #
# LANGUAGE FunctionalDependencies #
# LANGUAGE KindSignatures #
# LANGUAGE DataKinds #
# LANGUAGE NoImplicitPrelude #

  | @since 4.6.0.0
module GHC.IP (IP(..)) where

import GHC.TypeLits

-- | The syntax @?x :: a@ is desugared into @IP "x" a@
class IP (x :: Symbol) a | x -> a where
  ip :: a



# LANGUAGE Safe #
 | The syntax @?x :: a@ is desugared into @IP "x" a@
# LANGUAGE MultiParamTypeClasses #
# LANGUAGE FunctionalDependencies #
# LANGUAGE KindSignatures #
# LANGUAGE DataKinds #
# LANGUAGE NoImplicitPrelude #

  | @since 4.6.0.0
module GHC.IP (IP(..)) where

import GHC.TypeLits

class IP (x :: Symbol) a | x -> a where
  ip :: a


