-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Painfully simple URL deployment. -- -- Painfully simple URL deployment. @package urlpath @version 3.2.1 module Data.Url class MonadUrl b (m :: * -> *) pathUrl :: MonadUrl b m => Path b t -> m String locUrl :: MonadUrl b m => Location b t -> m String symbolUrl :: (MonadUrl b m, ToLocation s b t) => s -> m String -- | Make an instance for your own stringless route type to use your -- symbols instead of strings or Path. class ToLocation a b t | a -> b t toLocation :: ToLocation a b t => a -> Location b t -- | Overload extraction for deployment transformers. class UrlReader m where type family RunUrlReader m :: * -> * runUrlReader :: UrlReader m => m a -> UrlAuthority -> RunUrlReader m a -- | The hostname of a URL. data UrlAuthority UrlAuthority :: String -> Bool -> Maybe UrlAuthent -> String -> Maybe Int -> UrlAuthority [urlScheme] :: UrlAuthority -> String [urlSlashes] :: UrlAuthority -> Bool [urlAuth] :: UrlAuthority -> Maybe UrlAuthent [urlHost] :: UrlAuthority -> String [urlPort] :: UrlAuthority -> Maybe Int data UrlAuthent UrlAuthent :: String -> Maybe String -> UrlAuthent [urlAuthUser] :: UrlAuthent -> String [urlAuthPass] :: UrlAuthent -> Maybe String newtype RelativeUrlT m a RelativeUrlT :: (UrlAuthority -> m a) -> RelativeUrlT m a [runRelativeUrlT] :: RelativeUrlT m a -> UrlAuthority -> m a type RelativeUrl = RelativeUrlT Identity newtype GroundedUrlT m a GroundedUrlT :: (UrlAuthority -> m a) -> GroundedUrlT m a [runGroundedUrlT] :: GroundedUrlT m a -> UrlAuthority -> m a type GroundedUrl = GroundedUrlT Identity newtype AbsoluteUrlT m a AbsoluteUrlT :: (UrlAuthority -> m a) -> AbsoluteUrlT m a [runAbsoluteUrlT] :: AbsoluteUrlT m a -> UrlAuthority -> m a type AbsoluteUrl = AbsoluteUrlT Identity instance GHC.Base.Functor m => GHC.Base.Functor (Data.Url.AbsoluteUrlT m) instance GHC.Base.Functor m => GHC.Base.Functor (Data.Url.GroundedUrlT m) instance GHC.Base.Functor m => GHC.Base.Functor (Data.Url.RelativeUrlT m) instance GHC.Classes.Ord Data.Url.UrlAuthority instance GHC.Classes.Eq Data.Url.UrlAuthority instance GHC.Classes.Ord Data.Url.UrlAuthent instance GHC.Classes.Eq Data.Url.UrlAuthent instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.Maybe.MaybeT m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.List.ListT m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.Resource.Internal.ResourceT m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.Identity.IdentityT m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Logger.LoggingT m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Logger.NoLoggingT m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.Reader.ReaderT r m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m, GHC.Base.Monoid w) => Data.Url.MonadUrl b (Control.Monad.Trans.Writer.Lazy.WriterT w m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.State.Lazy.StateT s m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m, Control.Monad.Trans.Error.Error e) => Data.Url.MonadUrl b (Control.Monad.Trans.Error.ErrorT e m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.Cont.ContT r m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m) => Data.Url.MonadUrl b (Control.Monad.Trans.Except.ExceptT e m) instance (Data.Url.MonadUrl b m, GHC.Base.Monad m, GHC.Base.Monoid w) => Data.Url.MonadUrl b (Control.Monad.Trans.RWS.Lazy.RWST r w s m) instance GHC.Show.Show Data.Url.UrlAuthority instance GHC.Show.Show Data.Url.UrlAuthent instance GHC.Base.Applicative m => GHC.Base.Applicative (Data.Url.RelativeUrlT m) instance GHC.Base.Monad m => GHC.Base.Monad (Data.Url.RelativeUrlT m) instance Control.Monad.Trans.Class.MonadTrans Data.Url.RelativeUrlT instance Control.Monad.IO.Class.MonadIO m => Control.Monad.IO.Class.MonadIO (Data.Url.RelativeUrlT m) instance GHC.Base.Applicative m => Data.Url.MonadUrl Path.Rel (Data.Url.RelativeUrlT m) instance Data.Url.UrlReader (Data.Url.RelativeUrlT m) instance Control.Monad.Reader.Class.MonadReader r m => Control.Monad.Reader.Class.MonadReader r (Data.Url.RelativeUrlT m) instance Control.Monad.Writer.Class.MonadWriter w m => Control.Monad.Writer.Class.MonadWriter w (Data.Url.RelativeUrlT m) instance Control.Monad.State.Class.MonadState s m => Control.Monad.State.Class.MonadState s (Data.Url.RelativeUrlT m) instance Control.Monad.RWS.Class.MonadRWS r w s m => Control.Monad.RWS.Class.MonadRWS r w s (Data.Url.RelativeUrlT m) instance Control.Monad.Cont.Class.MonadCont m => Control.Monad.Cont.Class.MonadCont (Data.Url.RelativeUrlT m) instance Control.Monad.Error.Class.MonadError e m => Control.Monad.Error.Class.MonadError e (Data.Url.RelativeUrlT m) instance Control.Monad.Base.MonadBase b m => Control.Monad.Base.MonadBase b (Data.Url.RelativeUrlT m) instance Control.Monad.Trans.Control.MonadTransControl Data.Url.RelativeUrlT instance Control.Monad.Trans.Control.MonadBaseControl b m => Control.Monad.Trans.Control.MonadBaseControl b (Data.Url.RelativeUrlT m) instance Control.Monad.Catch.MonadThrow m => Control.Monad.Catch.MonadThrow (Data.Url.RelativeUrlT m) instance Control.Monad.Catch.MonadCatch m => Control.Monad.Catch.MonadCatch (Data.Url.RelativeUrlT m) instance Control.Monad.Catch.MonadMask m => Control.Monad.Catch.MonadMask (Data.Url.RelativeUrlT m) instance Control.Monad.Logger.MonadLogger m => Control.Monad.Logger.MonadLogger (Data.Url.RelativeUrlT m) instance Control.Monad.Trans.Resource.Internal.MonadResource m => Control.Monad.Trans.Resource.Internal.MonadResource (Data.Url.RelativeUrlT m) instance Control.Monad.Morph.MFunctor Data.Url.RelativeUrlT instance Control.Monad.Morph.MMonad Data.Url.RelativeUrlT instance GHC.Base.Applicative m => GHC.Base.Applicative (Data.Url.GroundedUrlT m) instance GHC.Base.Monad m => GHC.Base.Monad (Data.Url.GroundedUrlT m) instance Control.Monad.Trans.Class.MonadTrans Data.Url.GroundedUrlT instance Control.Monad.IO.Class.MonadIO m => Control.Monad.IO.Class.MonadIO (Data.Url.GroundedUrlT m) instance GHC.Base.Applicative m => Data.Url.MonadUrl Path.Abs (Data.Url.GroundedUrlT m) instance Data.Url.UrlReader (Data.Url.GroundedUrlT m) instance Control.Monad.Reader.Class.MonadReader r m => Control.Monad.Reader.Class.MonadReader r (Data.Url.GroundedUrlT m) instance Control.Monad.Writer.Class.MonadWriter w m => Control.Monad.Writer.Class.MonadWriter w (Data.Url.GroundedUrlT m) instance Control.Monad.State.Class.MonadState s m => Control.Monad.State.Class.MonadState s (Data.Url.GroundedUrlT m) instance Control.Monad.RWS.Class.MonadRWS r w s m => Control.Monad.RWS.Class.MonadRWS r w s (Data.Url.GroundedUrlT m) instance Control.Monad.Cont.Class.MonadCont m => Control.Monad.Cont.Class.MonadCont (Data.Url.GroundedUrlT m) instance Control.Monad.Error.Class.MonadError e m => Control.Monad.Error.Class.MonadError e (Data.Url.GroundedUrlT m) instance Control.Monad.Base.MonadBase b m => Control.Monad.Base.MonadBase b (Data.Url.GroundedUrlT m) instance Control.Monad.Trans.Control.MonadTransControl Data.Url.GroundedUrlT instance Control.Monad.Trans.Control.MonadBaseControl b m => Control.Monad.Trans.Control.MonadBaseControl b (Data.Url.GroundedUrlT m) instance Control.Monad.Catch.MonadThrow m => Control.Monad.Catch.MonadThrow (Data.Url.GroundedUrlT m) instance Control.Monad.Catch.MonadCatch m => Control.Monad.Catch.MonadCatch (Data.Url.GroundedUrlT m) instance Control.Monad.Catch.MonadMask m => Control.Monad.Catch.MonadMask (Data.Url.GroundedUrlT m) instance Control.Monad.Logger.MonadLogger m => Control.Monad.Logger.MonadLogger (Data.Url.GroundedUrlT m) instance Control.Monad.Trans.Resource.Internal.MonadResource m => Control.Monad.Trans.Resource.Internal.MonadResource (Data.Url.GroundedUrlT m) instance Control.Monad.Morph.MFunctor Data.Url.GroundedUrlT instance Control.Monad.Morph.MMonad Data.Url.GroundedUrlT instance GHC.Base.Applicative m => GHC.Base.Applicative (Data.Url.AbsoluteUrlT m) instance GHC.Base.Monad m => GHC.Base.Monad (Data.Url.AbsoluteUrlT m) instance Control.Monad.Trans.Class.MonadTrans Data.Url.AbsoluteUrlT instance Control.Monad.IO.Class.MonadIO m => Control.Monad.IO.Class.MonadIO (Data.Url.AbsoluteUrlT m) instance GHC.Base.Applicative m => Data.Url.MonadUrl Path.Abs (Data.Url.AbsoluteUrlT m) instance Data.Url.UrlReader (Data.Url.AbsoluteUrlT m) instance Control.Monad.Reader.Class.MonadReader r m => Control.Monad.Reader.Class.MonadReader r (Data.Url.AbsoluteUrlT m) instance Control.Monad.Writer.Class.MonadWriter w m => Control.Monad.Writer.Class.MonadWriter w (Data.Url.AbsoluteUrlT m) instance Control.Monad.State.Class.MonadState s m => Control.Monad.State.Class.MonadState s (Data.Url.AbsoluteUrlT m) instance Control.Monad.RWS.Class.MonadRWS r w s m => Control.Monad.RWS.Class.MonadRWS r w s (Data.Url.AbsoluteUrlT m) instance Control.Monad.Cont.Class.MonadCont m => Control.Monad.Cont.Class.MonadCont (Data.Url.AbsoluteUrlT m) instance Control.Monad.Error.Class.MonadError e m => Control.Monad.Error.Class.MonadError e (Data.Url.AbsoluteUrlT m) instance Control.Monad.Base.MonadBase b m => Control.Monad.Base.MonadBase b (Data.Url.AbsoluteUrlT m) instance Control.Monad.Trans.Control.MonadTransControl Data.Url.AbsoluteUrlT instance Control.Monad.Trans.Control.MonadBaseControl b m => Control.Monad.Trans.Control.MonadBaseControl b (Data.Url.AbsoluteUrlT m) instance Control.Monad.Catch.MonadThrow m => Control.Monad.Catch.MonadThrow (Data.Url.AbsoluteUrlT m) instance Control.Monad.Catch.MonadCatch m => Control.Monad.Catch.MonadCatch (Data.Url.AbsoluteUrlT m) instance Control.Monad.Catch.MonadMask m => Control.Monad.Catch.MonadMask (Data.Url.AbsoluteUrlT m) instance Control.Monad.Logger.MonadLogger m => Control.Monad.Logger.MonadLogger (Data.Url.AbsoluteUrlT m) instance Control.Monad.Trans.Resource.Internal.MonadResource m => Control.Monad.Trans.Resource.Internal.MonadResource (Data.Url.AbsoluteUrlT m) instance Control.Monad.Morph.MFunctor Data.Url.AbsoluteUrlT instance Control.Monad.Morph.MMonad Data.Url.AbsoluteUrlT