module LinearScan.IApplicative where
import qualified Prelude
import qualified Data.List
import qualified Data.Ord
import qualified Data.Functor.Identity
import qualified LinearScan.Utils
import qualified LinearScan.IEndo as IEndo
#ifdef __GLASGOW_HASKELL__
import qualified GHC.Base as GHC.Base
unsafeCoerce = GHC.Base.unsafeCoerce#
#else
import qualified LinearScan.IOExts as IOExts
unsafeCoerce = IOExts.unsafeCoerce
#endif
__ :: any
__ = Prelude.error "Logical or arity value used"
data IApplicative f =
Build_IApplicative (IEndo.IFunctor f) (() -> () -> () -> f) (() -> () ->
() -> () -> ()
-> f -> f ->
f)
ipure :: (IApplicative a1) -> a3 -> a1
ipure iApplicative x =
case iApplicative of {
Build_IApplicative is_ifunctor ipure0 iap -> unsafeCoerce ipure0 __ __ x}