Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
-
data
BaseUrl
=
BaseUrl
{
- baseUrlScheme :: Scheme
- baseUrlHost :: String
- baseUrlPort :: Int
- baseUrlPath :: String
- data Scheme
- showBaseUrl :: BaseUrl -> String
- parseBaseUrl :: MonadThrow m => String -> m BaseUrl
- newtype InvalidBaseUrlException = InvalidBaseUrlException String
Documentation
Simple data type to represent the target of HTTP requests for servant's automatically-generated clients.
BaseUrl | |
|
Instances
Eq BaseUrl Source # | |
Data BaseUrl Source # | |
Defined in Servant.Client.Core.BaseUrl gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> BaseUrl -> c BaseUrl Source # gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c BaseUrl Source # toConstr :: BaseUrl -> Constr Source # dataTypeOf :: BaseUrl -> DataType Source # dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c BaseUrl ) Source # dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c BaseUrl ) Source # gmapT :: ( forall b. Data b => b -> b) -> BaseUrl -> BaseUrl Source # gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> BaseUrl -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> BaseUrl -> r Source # gmapQ :: ( forall d. Data d => d -> u) -> BaseUrl -> [u] Source # gmapQi :: Int -> ( forall d. Data d => d -> u) -> BaseUrl -> u Source # gmapM :: Monad m => ( forall d. Data d => d -> m d) -> BaseUrl -> m BaseUrl Source # gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> BaseUrl -> m BaseUrl Source # gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> BaseUrl -> m BaseUrl Source # |
|
Ord BaseUrl Source # | |
Defined in Servant.Client.Core.BaseUrl |
|
Show BaseUrl Source # | |
Generic BaseUrl Source # | |
ToJSON BaseUrl Source # |
|
ToJSONKey BaseUrl Source # |
|
Defined in Servant.Client.Core.BaseUrl |
|
FromJSON BaseUrl Source # |
|
FromJSONKey BaseUrl Source # | |
Defined in Servant.Client.Core.BaseUrl |
|
NFData BaseUrl Source # | |
Defined in Servant.Client.Core.BaseUrl |
|
Lift BaseUrl Source # | |
type Rep BaseUrl Source # | |
Defined in Servant.Client.Core.BaseUrl
type
Rep
BaseUrl
=
D1
('
MetaData
"BaseUrl" "Servant.Client.Core.BaseUrl" "servant-client-core-0.19-DAS79QGMO4DL64AFO0JBqz" '
False
) (
C1
('
MetaCons
"BaseUrl" '
PrefixI
'
True
) ((
S1
('
MetaSel
('
Just
"baseUrlScheme") '
NoSourceUnpackedness
'
NoSourceStrictness
'
DecidedLazy
) (
Rec0
Scheme
)
:*:
S1
('
MetaSel
('
Just
"baseUrlHost") '
NoSourceUnpackedness
'
NoSourceStrictness
'
DecidedLazy
) (
Rec0
String
))
:*:
(
S1
('
MetaSel
('
Just
"baseUrlPort") '
NoSourceUnpackedness
'
NoSourceStrictness
'
DecidedLazy
) (
Rec0
Int
)
:*:
S1
('
MetaSel
('
Just
"baseUrlPath") '
NoSourceUnpackedness
'
NoSourceStrictness
'
DecidedLazy
) (
Rec0
String
))))
|
URI scheme to use
Instances
Eq Scheme Source # | |
Data Scheme Source # | |
Defined in Servant.Client.Core.BaseUrl gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> Scheme -> c Scheme Source # gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c Scheme Source # toConstr :: Scheme -> Constr Source # dataTypeOf :: Scheme -> DataType Source # dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c Scheme ) Source # dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c Scheme ) Source # gmapT :: ( forall b. Data b => b -> b) -> Scheme -> Scheme Source # gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> Scheme -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> Scheme -> r Source # gmapQ :: ( forall d. Data d => d -> u) -> Scheme -> [u] Source # gmapQi :: Int -> ( forall d. Data d => d -> u) -> Scheme -> u Source # gmapM :: Monad m => ( forall d. Data d => d -> m d) -> Scheme -> m Scheme Source # gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> Scheme -> m Scheme Source # gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> Scheme -> m Scheme Source # |
|
Ord Scheme Source # | |
Show Scheme Source # | |
Generic Scheme Source # | |
Lift Scheme Source # | |
type Rep Scheme Source # | |
Defined in Servant.Client.Core.BaseUrl |
showBaseUrl :: BaseUrl -> String Source #
>>>
showBaseUrl <$> parseBaseUrl "api.example.com"
"http://api.example.com"
parseBaseUrl :: MonadThrow m => String -> m BaseUrl Source #
>>>
parseBaseUrl "api.example.com"
BaseUrl {baseUrlScheme = Http, baseUrlHost = "api.example.com", baseUrlPort = 80, baseUrlPath = ""}
Note: trailing slash is removed
>>>
parseBaseUrl "api.example.com/"
BaseUrl {baseUrlScheme = Http, baseUrlHost = "api.example.com", baseUrlPort = 80, baseUrlPath = ""}
>>>
parseBaseUrl "api.example.com/dir/"
BaseUrl {baseUrlScheme = Http, baseUrlHost = "api.example.com", baseUrlPort = 80, baseUrlPath = "/dir"}
newtype InvalidBaseUrlException Source #