| Copyright | (c) 2019-2022 Vaclav Svejcar |
|---|---|
| License | BSD-3-Clause |
| Maintainer | vaclav.svejcar@gmail.com |
| Stability | experimental |
| Portability | POSIX |
| Safe Haskell | None |
| Language | Haskell2010 |
Headroom.Config
Description
This module provides logic for working with the cofiguration data types. Headroom uses the partial options monoid pattern for the configuration.
Synopsis
- loadAppConfig :: (MonadIO m, MonadThrow m) => FilePath -> m PtAppConfig
- parseAppConfig :: MonadThrow m => ByteString -> m PtAppConfig
- makeAppConfig :: MonadThrow m => PtAppConfig -> m CtAppConfig
- makeHeadersConfig :: MonadThrow m => PtHeadersConfig -> m CtHeadersConfig
- makeHeaderConfig :: MonadThrow m => FileType -> PtHeaderConfig -> m CtHeaderConfig
Loading & Parsing Configuration
loadAppConfig :: (MonadIO m, MonadThrow m) => FilePath -> m PtAppConfig Source #
Loads and parses application configuration from given YAML file.
Arguments
| :: MonadThrow m | |
| => ByteString | raw input to parse |
| -> m PtAppConfig | parsed application configuration |
Parses application configuration from given raw input in YAML format.
Processing Partial Configuration
Arguments
| :: MonadThrow m | |
| => PtAppConfig | source |
| -> m CtAppConfig | full |
Makes full CtAppConfig from provided PtAppConfig (if valid).
Arguments
| :: MonadThrow m | |
| => PtHeadersConfig | source |
| -> m CtHeadersConfig | full |
Makes full CtHeadersConfig from provided PtHeadersConfig (if valid).
Arguments
| :: MonadThrow m | |
| => FileType | determines file type of configuration |
| -> PtHeaderConfig | source |
| -> m CtHeaderConfig | full |
Makes full CtHeaderConfig from provided PtHeaderConfig (if valid).