| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Servant.Client.Core.BaseUrl
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.
Constructors
| BaseUrl | |
Fields
| |
Instances
| FromJSON BaseUrl Source # |
| ||||
Defined in Servant.Client.Core.BaseUrl Methods parseJSON :: Value -> Parser BaseUrl parseJSONList :: Value -> Parser [BaseUrl] omittedField :: Maybe BaseUrl | |||||
| FromJSONKey BaseUrl Source # | |||||
Defined in Servant.Client.Core.BaseUrl | |||||
| ToJSON BaseUrl Source # |
| ||||
Defined in Servant.Client.Core.BaseUrl Methods toEncoding :: BaseUrl -> Encoding toJSONList :: [BaseUrl] -> Value toEncodingList :: [BaseUrl] -> Encoding | |||||
| ToJSONKey BaseUrl Source # |
| ||||
Defined in Servant.Client.Core.BaseUrl | |||||
| NFData BaseUrl Source # | |||||
Defined in Servant.Client.Core.BaseUrl | |||||
| Data BaseUrl Source # | |||||
Defined in Servant.Client.Core.BaseUrl Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BaseUrl -> c BaseUrl gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BaseUrl dataTypeOf :: BaseUrl -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BaseUrl) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BaseUrl) gmapT :: (forall b. Data b => b -> b) -> BaseUrl -> BaseUrl gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BaseUrl -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BaseUrl -> r gmapQ :: (forall d. Data d => d -> u) -> BaseUrl -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> BaseUrl -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> BaseUrl -> m BaseUrl gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BaseUrl -> m BaseUrl gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BaseUrl -> m BaseUrl | |||||
| Generic BaseUrl Source # | |||||
Defined in Servant.Client.Core.BaseUrl Associated Types
| |||||
| Show BaseUrl Source # | |||||
| Eq BaseUrl Source # | |||||
| Ord BaseUrl Source # | |||||
| 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.20.3.0-Kf3rL9tWuy8Ecw7dDZk8Vf" 'False) (C1 ('MetaCons "BaseUrl" 'PrefixI 'True) ((S1 ('MetaSel ('Just "baseUrlScheme") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Scheme) :*: S1 ('MetaSel ('Just "baseUrlHost") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 String)) :*: (S1 ('MetaSel ('Just "baseUrlPort") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "baseUrlPath") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 String)))) | |||||
URI scheme to use
Instances
| Data Scheme Source # | |||||
Defined in Servant.Client.Core.BaseUrl Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Scheme -> c Scheme gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Scheme dataTypeOf :: Scheme -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Scheme) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Scheme) gmapT :: (forall b. Data b => b -> b) -> Scheme -> Scheme gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Scheme -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Scheme -> r gmapQ :: (forall d. Data d => d -> u) -> Scheme -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Scheme -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Scheme -> m Scheme gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Scheme -> m Scheme gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Scheme -> m Scheme | |||||
| Generic Scheme Source # | |||||
Defined in Servant.Client.Core.BaseUrl Associated Types
| |||||
| Show Scheme Source # | |||||
| Eq Scheme Source # | |||||
| Ord Scheme Source # | |||||
| Lift Scheme Source # | |||||
| type Rep Scheme Source # | |||||
Defined in Servant.Client.Core.BaseUrl type Rep Scheme = D1 ('MetaData "Scheme" "Servant.Client.Core.BaseUrl" "servant-client-core-0.20.3.0-Kf3rL9tWuy8Ecw7dDZk8Vf" 'False) (C1 ('MetaCons "Http" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Https" 'PrefixI 'False) (U1 :: Type -> Type)) | |||||
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 #
Constructors
| InvalidBaseUrlException String |
Instances
| Exception InvalidBaseUrlException Source # | |
Defined in Servant.Client.Core.BaseUrl Methods toException :: InvalidBaseUrlException -> SomeException fromException :: SomeException -> Maybe InvalidBaseUrlException displayException :: InvalidBaseUrlException -> String backtraceDesired :: InvalidBaseUrlException -> Bool | |
| Show InvalidBaseUrlException Source # | |
Defined in Servant.Client.Core.BaseUrl Methods showsPrec :: Int -> InvalidBaseUrlException -> ShowS show :: InvalidBaseUrlException -> String showList :: [InvalidBaseUrlException] -> ShowS | |