-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Chris Done's path library, enriched with URL-related goodies.
--
-- Chris Done's path library, enriched with URL-related goodies.
@package path-extra
@version 0.0.4
module Path.Extended
-- | A location for some base and type - internally uses Path.
data Location b t
type QueryParam = (String, Maybe String)
-- | Convenience typeclass for symbolic, stringless routes - make an
-- instance for your own data type to use your constructors as
-- route-referencing symbols.
class ToPath sym base type' | sym -> base type'
toPath :: (ToPath sym base type', MonadThrow m) => sym -> m (Path base type')
-- | 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')
class PathAppend right base type'
(>) :: PathAppend right base type' => Path base Dir -> right Rel type' -> right base type'
-- | Prepend a parental accessor path - ../
addParent :: Location Rel t -> Location Rel t
delParent :: Location Rel t -> Location Rel t
-- | This should be your entry point for creating a Location.
fromPath :: Path b t -> Location b t
locPath :: Location b t -> Path b t
setFileExt :: Maybe String -> Location b File -> Location b File
addFileExt :: String -> Location b File -> Location b File
delFileExt :: Location b File -> Location b File
getFileExt :: Location b File -> Maybe String
setQuery :: [QueryParam] -> Location b t -> Location b t
-- | Appends a query parameter
addQuery :: QueryParam -> Location b t -> Location b t
(<&>) :: Location b t -> QueryParam -> Location b t
infixl 7 <&>
addQueries :: [QueryParam] -> Location b t -> Location b t
delQuery :: Location b t -> Location b t
getQuery :: Location b t -> [QueryParam]
setFragment :: Maybe String -> Location b t -> Location b t
addFragment :: String -> Location b t -> Location b t
(<#>) :: Location b t -> String -> Location b t
infixl 8 <#>
delFragment :: Location b t -> Location b t
instance GHC.Classes.Ord (Path.Extended.Location b t)
instance GHC.Classes.Eq (Path.Extended.Location b t)
instance Path.Extended.PathAppend Path.Internal.Path Path.Abs Path.Dir
instance Path.Extended.PathAppend Path.Internal.Path Path.Abs Path.File
instance Path.Extended.PathAppend Path.Internal.Path Path.Rel Path.Dir
instance Path.Extended.PathAppend Path.Internal.Path Path.Rel Path.File
instance Path.Extended.PathAppend Path.Extended.Location Path.Abs Path.Dir
instance Path.Extended.PathAppend Path.Extended.Location Path.Abs Path.File
instance Path.Extended.PathAppend Path.Extended.Location Path.Rel Path.Dir
instance Path.Extended.PathAppend Path.Extended.Location Path.Rel Path.File
instance GHC.Show.Show (Path.Extended.Location b t)