Bricks

Expressions

data Expression

Rendering expressions

render'expression

render'expression'listContext

render'expression'dotLeftContext

render'expression'applyLeftContext

render'expression'applyRightContext

render'expression'inParens

render'expression'dictKey

Parsing expressions

parse'expression

parse'expression'paren

parse'expression'dictKey

Parsing lists of expressions

parse'expressionList

parse'expressionList'1

parse'expressionList'1'noDot

Strings

str'escape

parse'str'within'normalQ

parse'str'escape'normalQ

Static strings

type Str'Static

render'strStatic'unquotedIfPossible

render'strStatic'quoted

parse'strStatic

parse'strStatic'quoted

parse'strStatic'unquoted

Dynamic strings

data Str'Dynamic

data Str'1

strDynamic'toList

strDynamic'fromList

strDynamic'singleton

render'strDynamic'unquotedIfPossible

render'strDynamic'quoted

parse'strDynamic'quoted

parse'strDynamic'normalQ

parse'strDynamic'indentedQ

Unquoted strings

data Str'Unquoted

str'tryUnquoted

str'unquoted'orThrow

str'canRenderUnquoted

char'canRenderUnquoted

render'strUnquoted

parse'strUnquoted

String conversions

str'dynamicToStatic

str'staticToDynamic

str'unquotedToDynamic

Indented strings

data InStr

inStr'toList

inStr'join

inStr'level

inStr'dedent

inStr'trim

render'inStr'1

parse'inStr

parse'inStr'1

Single line of an indented string

data InStr'1

inStr'1'nonEmpty

inStr'1'empty

inStr'1'modifyLevel

Lists

data List

render'list

parse'list

Dicts

data Dict

keyword'rec

render'dict

parse'dict

parse'dict'rec

parse'dict'noRec

Dict bindings

data DictBinding

render'dictBinding

parse'dictBinding

parse'dictBinding'inherit

parse'dictBinding'eq

Dict lookup (dot)

data Dot

expression'applyDots

render'dot

parse'dot'rhs'chain

Functions

Lambdas

data Lambda

render'lambda

parse'lambda

Function parameters

data Param

render'param

parse'param

parse'param'var

parse'param'noVar

Dict patterns

data DictPattern

data DictPattern'1

render'dictPattern

render'dictPattern'1

parse'dictPattern

parse'dictPattern'start

Function application

data Apply

expression'applyArgs

render'apply

let

data Let

keyword'let

keyword'in

render'let

parse'let

let bindings

data LetBinding

render'letBinding

parse'letBinding

parse'letBinding'eq

parse'letBinding'inherit

with

data With

keyword'with

render'with

parse'with

inherit

data Inherit

keyword'inherit

render'inherit

parse'inherit

Keywords

data Keyword

keywords

keywordString

keywordText

parse'keyword

Comments and whitespace

keyword'inlineComment

parse'spaces

parse'comment

parse'comment'inline

parse'comment'block

Miscellanea

type Render a

parse'antiquote