syntax-0.3.0.0: Syntax descriptions for unified parsing and pretty-printing.

Copyright(c) Paweł Nowak
LicenseMIT
MaintainerPaweł Nowak <pawel834@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Data.Syntax.Char

Description

Common combinators that work with sequences of chars.

Synopsis

Documentation

class (Syntax syn seq, Element seq ~ Char) => SyntaxChar syn seq where Source

Syntax constrainted to sequences of chars.

Note: methods of this class do not have default implementations (for now), because their code is quite ugly and already written in most parser libraries.

Methods

decimal :: Integral a => syn a Source

An unsigned decimal number.

hexadecimal :: (Integral a, Bits a) => syn a Source

An unsigned hexadecimal number.

realFloat :: RealFloat a => syn a Source

A signed real number.

scientific :: syn Scientific Source

A scientific number.

Instances

SyntaxChar syn seq => SyntaxChar (Indent syn) seq 

type SyntaxText syn = SyntaxChar syn Text Source

An useful synonym for SyntaxChars with Text sequences.

signed :: (Real a, SyntaxChar syn seq) => syn a -> syn a Source

A number with an optional leading + or - sign character.

spaces :: SyntaxChar syn seq => syn () Source

Accepts zero or more spaces. Generates a single space.

spaces_ :: SyntaxChar syn seq => syn () Source

Accepts zero or more spaces. Generates no output.

spaces1 :: SyntaxChar syn seq => syn () Source

Accepts one or more spaces. Generates a single space.

endOfLine :: SyntaxChar syn seq => syn () Source

Accepts a single newline. Generates a newline.

digitDec :: SyntaxChar syn seq => syn Int Source

A decimal digit.

digitOct :: SyntaxChar syn seq => syn Int Source

An octal digit.

digitHex :: SyntaxChar syn seq => syn Int Source

A hex digit.