tomland-1.3.3.3: Bidirectional TOML serialization
Copyright(c) 2018-2022 Kowainik
LicenseMPL-2.0
MaintainerKowainik <xrom.xkov@gmail.com>
StabilityStable
PortabilityPortable
Safe HaskellNone
LanguageHaskell2010

Toml.Codec.Combinator.Primitive

Description

TOML-specific combinators for converting between TOML and Haskell primitive types, e.g. Int, ByteString.

For the overall picture you can see how different types are represented by codecs in the following table:

Haskell TypeTOMLTomlCodec
Boola = truebool "a"
Integera = 100integer "a"
Inta = -42int "a"
Naturala = 11natural "a"
Worda = 1word "a"
Word8a = 1word8 "a"
Doublea = 36.6double "a"
Floata = -100.09float "a"
Stringa = "Hello"string "a"
Texta = "Hello"text "a"
LazyTexta = "Hey"lazyText "a"
ByteStringa = "Hello"byteString "a"
LazyByteStringa = "Hey"lazyByteString "a"
ByteString as Arraya = [10, 15]byteStringArray "a"
LazyByteString as Arraya = [15, 10]lazyByteStringArray "a"

Since: 1.3.0.0

Synopsis

Boolean

bool :: Key -> TomlCodec Bool #

Codec for boolean values.

Since: 0.0.0

Integral numbers

integer :: Key -> TomlCodec Integer #

Codec for integer values.

Since: 0.1.0

int :: Key -> TomlCodec Int #

Codec for integer values.

Since: 0.0.0

natural :: Key -> TomlCodec Natural #

Codec for natural values.

Since: 0.5.0

word :: Key -> TomlCodec Word #

Codec for word values.

Since: 0.5.0

word8 :: Key -> TomlCodec Word8 #

Codec for word8 values.

Since: 1.2.0.0

Floating point numbers

double :: Key -> TomlCodec Double #

Codec for floating point values with double precision.

Since: 0.0.0

float :: Key -> TomlCodec Float #

Codec for floating point values.

Since: 0.5.0

Text types

string :: Key -> TomlCodec String #

Codec for string values.

Since: 0.4.0

text :: Key -> TomlCodec Text #

Codec for text values.

Since: 0.3.0

lazyText :: Key -> TomlCodec Text #

Codec for lazy text values.

Since: 1.0.0

byteString :: Key -> TomlCodec ByteString #

Codec for text values as ByteString.

Since: 0.5.0

lazyByteString :: Key -> TomlCodec ByteString #

Codec for text values as ByteString.

Since: 0.5.0

byteStringArray :: Key -> TomlCodec ByteString #

Codec for positive integer array values as ByteString.

Since: 1.2.0.0

lazyByteStringArray :: Key -> TomlCodec ByteString #

Codec for positive integer array values as lazy ByteString.

Since: 1.2.0.0