-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Painfully simple URL deployment. -- -- Painfully simple URL deployment. @package urlpath @version 4.1.0 module Data.Url -- | Turns a Path or Location into a String, -- where the rendering behavior (relative, grounded and absolute) is -- encoded in the monad you use, much like LoggingT and -- NoLoggingT from monad-logger. class MonadUrl base type' (m :: * -> *) pathUrl :: MonadUrl base type' m => Path base type' -> m String locUrl :: MonadUrl base type' m => Location base type' -> m String -- | Convenience typeclass for symbolic, stringless routes - make an -- instance for your own data type to use your constructors as -- route-referencing symbols. class ToLocation sym base type' | sym -> base type' toLocation :: (ToLocation sym base type', MonadThrow m) => sym -> m (Location base type') -- | 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 showUrlAuthority :: UrlAuthority -> String data UrlAuthent UrlAuthent :: String -> Maybe String -> UrlAuthent [urlAuthUser] :: UrlAuthent -> String [urlAuthPass] :: UrlAuthent -> Maybe String showUrlAuthent :: UrlAuthent -> 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.Show.Show Data.Url.UrlAuthority instance GHC.Classes.Ord Data.Url.UrlAuthent instance GHC.Classes.Eq Data.Url.UrlAuthent instance GHC.Show.Show Data.Url.UrlAuthent instance Data.Url.MonadUrl b t GHC.Types.IO instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.Maybe.MaybeT m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.List.ListT m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.Resource.Internal.ResourceT m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.Identity.IdentityT m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Logger.LoggingT m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Logger.NoLoggingT m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.Reader.ReaderT r m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m, GHC.Base.Monoid w) => Data.Url.MonadUrl b t (Control.Monad.Trans.Writer.Lazy.WriterT w m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.State.Lazy.StateT s m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m, Control.Monad.Trans.Error.Error e) => Data.Url.MonadUrl b t (Control.Monad.Trans.Error.ErrorT e m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.Cont.ContT r m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m) => Data.Url.MonadUrl b t (Control.Monad.Trans.Except.ExceptT e m) instance (Data.Url.MonadUrl b t m, GHC.Base.Monad m, GHC.Base.Monoid w) => Data.Url.MonadUrl b t (Control.Monad.Trans.RWS.Lazy.RWST r w s m) instance GHC.Base.Applicative m => Data.Url.MonadUrl Path.Rel Path.File (Data.Url.RelativeUrlT m) instance GHC.Base.Applicative m => Data.Url.MonadUrl Path.Rel Path.Dir (Data.Url.RelativeUrlT m) 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 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 => Data.Url.MonadUrl Path.Abs Path.File (Data.Url.GroundedUrlT m) instance GHC.Base.Applicative m => Data.Url.MonadUrl Path.Abs Path.Dir (Data.Url.GroundedUrlT m) 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 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 => Data.Url.MonadUrl Path.Abs Path.File (Data.Url.AbsoluteUrlT m) instance GHC.Base.Applicative m => Data.Url.MonadUrl Path.Abs Path.Dir (Data.Url.AbsoluteUrlT m) 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 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