apiary-purescript-0.14.0: src/Web/Apiary/PureScript.hs
{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE Rank2Types #-}
{-# LANGUAGE FlexibleContexts #-}
module Web.Apiary.PureScript
( I.PureScriptConfig(..)
, HasPureScript
, withPureScript
, pureScript
) where
import Web.Apiary
import qualified Web.Apiary.PureScript.Internal as I
import Data.Reflection
type HasPureScript = Given I.PureScript
withPureScript :: MonadIO m => I.PureScriptConfig
-> (HasPureScript => m a) -> m a
withPureScript conf m = I.withPureScript conf $ \p -> give p m
pureScript :: (MonadIO m, HasPureScript) => FilePath -> ActionT m ()
pureScript = I.pureScript given