Safe Haskell | None |
---|---|
Language | GHC2021 |
Navi.Config
Contents
Description
This modules provides functionality for parsing configuration data from a toml file.
Synopsis
- readConfig :: (HasCallStack, MonadFileReader m, MonadIORef m, MonadThrow m) => OsPath -> m Config
- data ConfigErr
- data Config = MkConfig {}
- data Logging = MkLogging {}
- data LogLoc
- data NoteSystem (p :: ConfigPhase)
- = AppleScript
- | DBus (DBusF p)
- | NotifySend
Config
readConfig :: (HasCallStack, MonadFileReader m, MonadIORef m, MonadThrow m) => OsPath -> m Config Source #
ConfigErr
represents the errors we can encounter when attempting to
parse a config file.
Constructors
FileErr SomeException | |
TomlError TOMLError | |
NoEvents |
Instances
Exception ConfigErr Source # | |
Defined in Navi.Config.Types Methods toException :: ConfigErr -> SomeException # fromException :: SomeException -> Maybe ConfigErr # displayException :: ConfigErr -> String # backtraceDesired :: ConfigErr -> Bool # | |
Show ConfigErr Source # | |
Config
holds the data from ConfigToml
once it has been processed
(e.g., all user defined Events are parsed).
Constructors
MkConfig | |
Fields
|
Instances
Show Config Source # | |
(k ~ A_Lens, a ~ NonEmpty AnyEvent, b ~ NonEmpty AnyEvent) => LabelOptic "events" k Config Config a b Source # | |
Defined in Navi.Config.Types | |
(k ~ A_Lens, a ~ Logging, b ~ Logging) => LabelOptic "logging" k Config Config a b Source # | |
Defined in Navi.Config.Types | |
(k ~ A_Lens, a ~ NoteSystem 'ConfigPhaseToml, b ~ NoteSystem 'ConfigPhaseToml) => LabelOptic "noteSystem" k Config Config a b Source # | |
Defined in Navi.Config.Types |
Logging
Logging configuration.
Constructors
MkLogging | |
Instances
Show Logging Source # | |
Eq Logging Source # | |
(k ~ A_Lens, a ~ Maybe LogLoc, b ~ Maybe LogLoc) => LabelOptic "location" k Logging Logging a b Source # | |
Defined in Navi.Config.Types | |
(k ~ A_Lens, a ~ Maybe LogLevel, b ~ Maybe LogLevel) => LabelOptic "severity" k Logging Logging a b Source # | |
Defined in Navi.Config.Types | |
(k ~ A_Lens, a ~ Maybe FilesSizeMode, b ~ Maybe FilesSizeMode) => LabelOptic "sizeMode" k Logging Logging a b Source # | |
Defined in Navi.Config.Types |
Log location configuration.
Note System
data NoteSystem (p :: ConfigPhase) Source #
Configuration for notification systems.
Constructors
AppleScript | For use with osx. |
DBus (DBusF p) | For use with a running notification server that receives messages via DBus. |
NotifySend | For use with the notify-send tool. |
Instances
Show (NoteSystem 'ConfigPhaseToml) Source # | |
Defined in Navi.Config.Types Methods showsPrec :: Int -> NoteSystem 'ConfigPhaseToml -> ShowS # show :: NoteSystem 'ConfigPhaseToml -> String # showList :: [NoteSystem 'ConfigPhaseToml] -> ShowS # | |
Eq (NoteSystem 'ConfigPhaseToml) Source # | |
Defined in Navi.Config.Types Methods (==) :: NoteSystem 'ConfigPhaseToml -> NoteSystem 'ConfigPhaseToml -> Bool # (/=) :: NoteSystem 'ConfigPhaseToml -> NoteSystem 'ConfigPhaseToml -> Bool # |