Copyright | (c) 2019 Daniel YU |
---|---|
License | BSD3 |
Maintainer | leptonyu@gmail.com |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
This module is designed for implementating configuration file loading.
Synopsis
- data Reload = Reload {}
- defReload :: String -> SourcePackT IO () -> Reload
- type Source = SourceT QV
- data SourcePack
- type SourcePackT = StateT SourcePack
- addErr' :: String -> SourcePack -> SourcePack
- data Selector
- simpleSelectors :: Text -> [Selector]
- insertSource :: Value -> Source -> Source
- updateSources :: Monad m => [Selector] -> (Source -> m Source) -> Source -> m Source
- updateSource :: Monad m => Selector -> (Source -> m Source) -> Source -> m Source
- tryLoadFile :: MonadIO m => (FilePath -> SourcePackT m ()) -> FilePath -> SourcePackT m ()
- loadFile :: Reload -> SourcePack -> (Priority -> Source -> Writer [String] Source) -> SourcePack
Reload
SourcePack
data SourcePack Source #
Instances
Show SourcePack Source # | |
Defined in Salak.Types showsPrec :: Int -> SourcePack -> ShowS # show :: SourcePack -> String # showList :: [SourcePack] -> ShowS # | |
MonadReader SourcePack Prop Source # | |
Defined in Salak.Prop ask :: Prop SourcePack # local :: (SourcePack -> SourcePack) -> Prop a -> Prop a # reader :: (SourcePack -> a) -> Prop a # | |
Monad m => HasSourcePack (ReaderT SourcePack m) Source # | |
Defined in Salak | |
Monad m => HasSourcePack (StateT SourcePack m) Source # | |
Defined in Salak |
type SourcePackT = StateT SourcePack Source #
addErr' :: String -> SourcePack -> SourcePack Source #
Selector
simpleSelectors :: Text -> [Selector] Source #
Source
Load
tryLoadFile :: MonadIO m => (FilePath -> SourcePackT m ()) -> FilePath -> SourcePackT m () Source #