dhall-1.30.0: A configuration language guaranteed to terminate

Safe Haskell None Haskell2010

Dhall.Parser.Token

Description

Parse Dhall tokens. Even though we don't have a tokenizer per-se this

Synopsis

# Documentation

Returns True if the given Int is a valid Unicode codepoint

Parse 0 or more whitespace characters (including comments)

This corresponds to the whsp rule in the official grammar

Parse 1 or more whitespace characters (including comments)

This corresponds to the whsp1 rule in the official grammar

Parse a valid Bash environment variable name

This corresponds to the bash-environment-variable rule in the official grammar

Parse a valid POSIX environment variable name, which permits a wider range of characters than a Bash environment variable name

This corresponds to the posix-environment-variable rule in the official grammar

The pathComponent function uses this type to distinguish whether to parse a URL path component or a file path component

Constructors

 URLComponent FileComponent

A variation on text that doesn't quote the expected in error messages

A variation on char that doesn't quote the expected token in error messages

Parse a File

Parse a label (e.g. a variable/field/alternative name)

Rejects labels that match built-in names (e.g. Natural/even)

This corresponds to the nonreserved-label rule in the official grammar

Same as label except that built-in names are allowed

This corresponds to the any-label rule in the official grammar

Parse a braced sequence of comma-separated labels

For example, this is used to parse the record projection syntax

This corresponds to the labels rule in the official grammar

Parse an HTTP(S) URL without trailing whitespace

This corresponds to the http-raw rule in the official grammar

Parse a hex digit (uppercase or lowercase)

This corresponds to the HEXDIG rule in the official grammar

Parse an identifier (i.e. a variable or built-in)

Variables can have an optional index to disambiguate shadowed variables

This corresponds to the identifier rule from the official grammar

Parse a hexademical number and convert to the corresponding Int

Parse a Expr literal

This corresponds to the double-literal rule from the official grammar

Parse a signed Infinity

This corresponds to the minus-infinity-literal and plus-infinity-literal rules from the official grammar

Parse a Expr literal

This corresponds to the natural-literal rule from the official grammar

Parse an Expr literal

This corresponds to the integer-literal rule from the official grammar

Parse the Optional built-in

This corresponds to the Optional rule from the official grammar

_if :: Parser () Source #

Parse the if keyword

This corresponds to the if rule from the official grammar

Parse the then keyword

This corresponds to the then rule from the official grammar

Parse the else keyword

This corresponds to the else rule from the official grammar

Parse the let keyword

This corresponds to the let rule from the official grammar

_in :: Parser () Source #

Parse the in keyword

This corresponds to the in rule from the official grammar

_as :: Parser () Source #

Parse the as keyword

This corresponds to the as rule from the official grammar

Parse the using keyword

This corresponds to the using rule from the official grammar

Parse the merge keyword

This corresponds to the merge rule from the official grammar

Parse the toMap keyword

This corresponds to the toMap rule from the official grammar

Parse the assert keyword

This corresponds to the assert rule from the official grammar

Parse the Some built-in

This corresponds to the Some rule from the official grammar

Parse the None built-in

This corresponds to the None rule from the official grammar

Parse the Natural/fold built-in

This corresponds to the Natural-fold rule from the official grammar

Parse the Natural/build built-in

This corresponds to the Natural-build rule from the official grammar

Parse the Natural/isZero built-in

This corresponds to the Natural-isZero rule from the official grammar

Parse the Natural/even built-in

This corresponds to the Natural-even rule from the official grammar

Parse the Natural/odd built-in

This corresponds to the Natural-odd rule from the official grammar

Parse the Natural/toInteger built-in

This corresponds to the Natural-toInteger rule from the official grammar

Parse the Natural/show built-in

This corresponds to the Natural-show rule from the official grammar

Parse the Natural/subtract built-in

This corresponds to the Natural-subtract rule from the official grammar

Parse the Integer/clamp built-in

This corresponds to the Integer-clamp rule from the official grammar

Parse the Integer/negate built-in

This corresponds to the Integer-negate rule from the official grammar

Parse the Integer/show built-in

This corresponds to the Integer-show rule from the official grammar

Parse the Integer/toDouble built-in

This corresponds to the Integer-toDouble rule from the official grammar

Parse the Double/show built-in

This corresponds to the Double-show rule from the official grammar

Parse the List/build built-in

This corresponds to the List-build rule from the official grammar

Parse the List/fold built-in

This corresponds to the List-fold rule from the official grammar

Parse the List/length built-in

This corresponds to the List-length rule from the official grammar

Parse the List/head built-in

This corresponds to the List-head rule from the official grammar

Parse the List/last built-in

This corresponds to the List-last rule from the official grammar

Parse the List/indexed built-in

This corresponds to the List-indexed rule from the official grammar

Parse the List/reverse built-in

This corresponds to the List-reverse rule from the official grammar

Parse the Optional/fold built-in

This corresponds to the Optional-fold rule from the official grammar

Parse the Optional/build built-in

This corresponds to the Optional-build rule from the official grammar

Parse the Bool built-in

This corresponds to the Bool rule from the official grammar

Parse the Natural built-in

This corresponds to the Natural rule from the official grammar

Parse the Integer built-in

This corresponds to the Integer rule from the official grammar

Parse the Double built-in

This corresponds to the Double rule from the official grammar

Parse the Text built-in

This corresponds to the Text rule from the official grammar

Parse the Text/show built-in

This corresponds to the Text-show rule from the official grammar

Parse the List built-in

This corresponds to the List rule from the official grammar

Parse the True built-in

This corresponds to the True rule from the official grammar

Parse the False built-in

This corresponds to the False rule from the official grammar

Parse a NaN literal

This corresponds to the NaN rule from the official grammar

Parse the Type built-in

This corresponds to the Type rule from the official grammar

Parse the Kind built-in

This corresponds to the Kind rule from the official grammar

Parse the Sort built-in

This corresponds to the Sort rule from the official grammar

Parse the Location keyword

This corresponds to the Location rule from the official grammar

Parse the = symbol

_or :: Parser () Source #

Parse the || symbol

Parse the + symbol

Parse the ++ symbol

Parse the # symbol

Parse the && symbol

Parse the * symbol

Parse the == symbol

Parse the != symbol

Parse the . symbol

Parse the { symbol

Parse the } symbol

Parse the [] symbol

Parse the ] symbol

Parse the < symbol

Parse the > symbol

Parse the | symbol

Parse the , symbol

Parse the ( symbol

Parse the ) symbol

Parse the : symbol

_at :: Parser () Source #

Parse the @ symbol

Parse the equivalence symbol (=== or ≡)

Parse the missing keyword

Parse the ? symbol

Parse the record combine operator (/\ or ∧)

Parse the record type combine operator (//\\ or ⩓)

Parse the record "prefer" operator (// or ⫽)

Parse a lambda (\ or λ)

Parse a forall (forall or ∀)

Parse a right arrow (-> or →)

Parse a double colon (::)