coda-0.0.1: The coda compiler

Copyright(c) Edward Kmett 2017
LicenseBSD2
MaintainerEdward Kmett <ekmett@gmail.com>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Coda.Syntax.Token

Description

 

Synopsis

Documentation

data Pair Source #

Constructors

Brace 
Bracket 
Paren 

Instances

Bounded Pair Source # 
Enum Pair Source # 

Methods

succ :: Pair -> Pair #

pred :: Pair -> Pair #

toEnum :: Int -> Pair #

fromEnum :: Pair -> Int #

enumFrom :: Pair -> [Pair] #

enumFromThen :: Pair -> Pair -> [Pair] #

enumFromTo :: Pair -> Pair -> [Pair] #

enumFromThenTo :: Pair -> Pair -> Pair -> [Pair] #

Eq Pair Source # 

Methods

(==) :: Pair -> Pair -> Bool #

(/=) :: Pair -> Pair -> Bool #

Ord Pair Source # 

Methods

compare :: Pair -> Pair -> Ordering #

(<) :: Pair -> Pair -> Bool #

(<=) :: Pair -> Pair -> Bool #

(>) :: Pair -> Pair -> Bool #

(>=) :: Pair -> Pair -> Bool #

max :: Pair -> Pair -> Pair #

min :: Pair -> Pair -> Pair #

Read Pair Source # 
Show Pair Source # 

Methods

showsPrec :: Int -> Pair -> ShowS #

show :: Pair -> String #

showList :: [Pair] -> ShowS #

Ix Pair Source # 

Methods

range :: (Pair, Pair) -> [Pair] #

index :: (Pair, Pair) -> Pair -> Int #

unsafeIndex :: (Pair, Pair) -> Pair -> Int

inRange :: (Pair, Pair) -> Pair -> Bool #

rangeSize :: (Pair, Pair) -> Int #

unsafeRangeSize :: (Pair, Pair) -> Int

Generic Pair Source # 

Associated Types

type Rep Pair :: * -> * #

Methods

from :: Pair -> Rep Pair x #

to :: Rep Pair x -> Pair #

type Rep Pair Source # 
type Rep Pair = D1 * (MetaData "Pair" "Coda.Syntax.Token" "coda-0.0.1-Lrfl9CggVgIC7W2mVql1dH" False) ((:+:) * (C1 * (MetaCons "Brace" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "Bracket" PrefixI False) (U1 *)) (C1 * (MetaCons "Paren" PrefixI False) (U1 *))))

data Keyword Source #

Instances

Bounded Keyword Source # 
Enum Keyword Source # 
Eq Keyword Source # 

Methods

(==) :: Keyword -> Keyword -> Bool #

(/=) :: Keyword -> Keyword -> Bool #

Data Keyword Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Keyword -> c Keyword #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Keyword #

toConstr :: Keyword -> Constr #

dataTypeOf :: Keyword -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Keyword) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Keyword) #

gmapT :: (forall b. Data b => b -> b) -> Keyword -> Keyword #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Keyword -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Keyword -> r #

gmapQ :: (forall d. Data d => d -> u) -> Keyword -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Keyword -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Keyword -> m Keyword #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Keyword -> m Keyword #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Keyword -> m Keyword #

Ord Keyword Source # 
Read Keyword Source # 
Show Keyword Source # 
Ix Keyword Source # 
Generic Keyword Source # 

Associated Types

type Rep Keyword :: * -> * #

Methods

from :: Keyword -> Rep Keyword x #

to :: Rep Keyword x -> Keyword #

type Rep Keyword Source # 
type Rep Keyword = D1 * (MetaData "Keyword" "Coda.Syntax.Token" "coda-0.0.1-Lrfl9CggVgIC7W2mVql1dH" False) ((:+:) * ((:+:) * ((:+:) * ((:+:) * (C1 * (MetaCons "KAs" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KCase" PrefixI False) (U1 *)) (C1 * (MetaCons "KClass" PrefixI False) (U1 *)))) ((:+:) * (C1 * (MetaCons "KData" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KDefault" PrefixI False) (U1 *)) (C1 * (MetaCons "KDeriving" PrefixI False) (U1 *))))) ((:+:) * ((:+:) * (C1 * (MetaCons "KDo" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KElse" PrefixI False) (U1 *)) (C1 * (MetaCons "KHiding" PrefixI False) (U1 *)))) ((:+:) * (C1 * (MetaCons "KIf" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KImport" PrefixI False) (U1 *)) (C1 * (MetaCons "KIn" PrefixI False) (U1 *)))))) ((:+:) * ((:+:) * ((:+:) * (C1 * (MetaCons "KInfix" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KInfixl" PrefixI False) (U1 *)) (C1 * (MetaCons "KInfixr" PrefixI False) (U1 *)))) ((:+:) * (C1 * (MetaCons "KInstance" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KLet" PrefixI False) (U1 *)) (C1 * (MetaCons "KModule" PrefixI False) (U1 *))))) ((:+:) * ((:+:) * (C1 * (MetaCons "KNewtype" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KOf" PrefixI False) (U1 *)) (C1 * (MetaCons "KQualified" PrefixI False) (U1 *)))) ((:+:) * (C1 * (MetaCons "KThen" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "KType" PrefixI False) (U1 *)) (C1 * (MetaCons "KWhere" PrefixI False) (U1 *)))))))

keywords :: Set String Source #

These are keywords that may occur anywhere in a source file

startingKeywords :: Set String Source #

these are keywords that are only valid at the start of a top level statement

layoutKeywords :: Set String Source #

These are keywords that introduce layout