toml-parser-2.0.0.0: TOML 1.0.0 parser
Copyright(c) Eric Mertens 2023
LicenseISC
Maintaineremertens@gmail.com
Safe HaskellNone
LanguageHaskell2010

Toml.Syntax.Token

Description

This module provides the datatype for the lexical syntax of TOML files. These tokens are generated by Toml.Syntax.Lexer and consumed in Toml.Syntax.Parser.

Synopsis

Types

data Token #

Lexical token

Constructors

TokTrue
true
TokFalse
false
TokComma
','
TokEquals
'='
TokNewline
end-of-line
TokPeriod
.
TokSquareO
'['
TokSquareC
']'
Tok2SquareO
'[['
Tok2SquareC
']]'
TokCurlyO
'{'
TokCurlyC
'}'
TokBareKey Text

bare key

TokString Text

string literal

TokMlString Text

multiline string literal

TokInteger !Integer

integer literal

TokFloat !Double

floating-point literal

TokOffsetDateTime !ZonedTime

date-time with timezone offset

TokLocalDateTime !LocalTime

local date-time

TokLocalDate !Day

local date

TokLocalTime !TimeOfDay

local time

TokEOF
end-of-input

Instances

Instances details
Read Token # 
Instance details

Defined in Toml.Syntax.Token

Show Token # 
Instance details

Defined in Toml.Syntax.Token

Methods

showsPrec :: Int -> Token -> ShowS #

show :: Token -> String #

showList :: [Token] -> ShowS #

Integer literals

mkBinInteger :: String -> Token #

Construct a TokInteger from a binary integer literal lexeme.

mkDecInteger :: String -> Token #

Construct a TokInteger from a decimal integer literal lexeme.

mkOctInteger :: String -> Token #

Construct a TokInteger from a octal integer literal lexeme.

mkHexInteger :: String -> Token #

Construct a TokInteger from a hexadecimal integer literal lexeme.

Float literals

mkFloat :: String -> Token #

Construct a TokFloat from a floating-point literal lexeme.

Date and time patterns

localDatePatterns :: [String] #

Format strings for local date lexemes.

localTimePatterns :: [String] #

Format strings for local time lexemes.

localDateTimePatterns :: [String] #

Format strings for local datetime lexemes.

offsetDateTimePatterns :: [String] #

Format strings for offset datetime lexemes.