| Copyright | (c) Eric Mertens 2023 |
|---|---|
| License | ISC |
| Maintainer | emertens@gmail.com |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
Toml
Description
This module parses TOML into semantically meaningful values.
This parser implements TOML 1.0.0 https://toml.io/en/v1.0.0 as carefully as possible.
types
Semantic TOML value with all table assignments resolved.
Constructors
| Integer Integer | |
| Float Double | |
| Array [Value] | |
| Table Table | |
| Bool Bool | |
| String String | |
| TimeOfDay TimeOfDay | |
| ZonedTime ZonedTime | |
| LocalTime LocalTime | |
| Day Day |
parsing
parse :: String -> Either String Table Source #
Parse a TOML formatted Value or report an error message.
printing
prettyToml :: Table -> TomlDoc Source #
Render a complete TOML document using top-level table and array of table sections where appropriate.
Annotation used to enable styling pretty-printed TOML
Constructors
| TableClass | top-level |
| KeyClass | dotted keys, left-hand side of assignments |
| StringClass | string literals |
| NumberClass | number literals |
| DateClass | date and time literals |
| BoolClass | boolean literals |
Serialization
decode :: FromTable a => String -> Result a Source #
Use the FromTable instance to decode a value from a TOML string.
encode :: ToTable a => a -> TomlDoc Source #
Use the ToTable instance to encode a value to a TOML string.