| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Toml.Bi.Code
Contents
Synopsis
- type TomlCodec a = BiCodec Env St a
- type Env = ExceptT DecodeException (Reader TOML)
- type St = MaybeT (State TOML)
- data DecodeException
- data LoadTomlException = LoadTomlException FilePath Text
- prettyException :: DecodeException -> Text
- decode :: TomlCodec a -> Text -> Either DecodeException a
- decodeFile :: MonadIO m => TomlCodec a -> FilePath -> m a
- runTomlCodec :: TomlCodec a -> TOML -> Either DecodeException a
- encode :: TomlCodec a -> a -> Text
- execTomlCodec :: TomlCodec a -> a -> TOML
Types
type TomlCodec a = BiCodec Env St a Source #
Specialied Bi type alias for Toml monad. Keeps TOML object either as
environment or state.
type Env = ExceptT DecodeException (Reader TOML) Source #
Immutable environment for Toml conversion.
This is r type variable in Codec data type.
type St = MaybeT (State TOML) Source #
Mutable context for Toml conversion.
This is w type variable in Codec data type.
MaybeT (State TOML) a
= State TOML (Maybe a)
= TOML -> (Maybe a, TOML)
Exceptions
data DecodeException Source #
Type of exception for converting from Toml to user custom data type.
Constructors
| TrivialError | |
| KeyNotFound Key | No such key |
| TableNotFound Key | No such table |
| TypeMismatch Key Text TValue | Expected type vs actual type |
| ParseError ParseException | Exception during parsing |
Instances
data LoadTomlException Source #
File loading error data type.
Constructors
| LoadTomlException FilePath Text |
Instances
| Show LoadTomlException Source # | |
Defined in Toml.Bi.Code Methods showsPrec :: Int -> LoadTomlException -> ShowS # show :: LoadTomlException -> String # showList :: [LoadTomlException] -> ShowS # | |
| Exception LoadTomlException Source # | |
Defined in Toml.Bi.Code Methods toException :: LoadTomlException -> SomeException # | |
prettyException :: DecodeException -> Text Source #
Converts DecodeException into pretty human-readable text.
Encode/Decode
decode :: TomlCodec a -> Text -> Either DecodeException a Source #
Convert textual representation of toml into user data type.
decodeFile :: MonadIO m => TomlCodec a -> FilePath -> m a Source #
Decode a value from a file. In case of parse errors, throws LoadTomlException.
runTomlCodec :: TomlCodec a -> TOML -> Either DecodeException a Source #
Convert toml into user data type.
execTomlCodec :: TomlCodec a -> a -> TOML Source #