Safe Haskell | None |
---|
The abstract syntax of language TIP.
Synopsis
- data Start = Start [Decl]
- data Decl
- = DeclareDatatype AttrSymbol Datatype
- | DeclareDatatypes [DatatypeName] [Datatype]
- | DeclareSort AttrSymbol Integer
- | DeclareConst AttrSymbol ConstType
- | DeclareFun AttrSymbol FunType
- | DefineFun FunDec Expr
- | DefineFunRec FunDec Expr
- | DefineFunsRec [BracketedFunDec] [Expr]
- | Formula Assertion [Attr] Expr
- | FormulaPar Assertion [Attr] Par Expr
- data Assertion
- data Par = Par [Symbol]
- data ConstType
- data InnerFunType = InnerFunType [Type] Type
- data FunType
- data InnerFunDec = InnerFunDec [Binding] Type
- data FunDec
- data BracketedFunDec = BracketedFunDec FunDec
- data DatatypeName = DatatypeName AttrSymbol Integer
- data InnerDatatype = InnerDatatype [Constructor]
- data Datatype
- data Constructor = Constructor AttrSymbol [Binding]
- data Binding = Binding Symbol Type
- data LetDecl = LetDecl Symbol Expr
- data Type
- data Expr
- data Lit
- data Binder
- data Case = Case Pattern Expr
- data Pattern
- data Head
- data PolySymbol
- data AttrSymbol = AttrSymbol Symbol [Attr]
- data Attr
- data Symbol
- newtype UnquotedSymbol = UnquotedSymbol ((Int, Int), String)
- newtype QuotedSymbol = QuotedSymbol ((Int, Int), String)
- newtype Keyword = Keyword String
- type BNFC'Position = Maybe (Int, Int)
- pattern BNFC'NoPosition :: BNFC'Position
- pattern BNFC'Position :: Int -> Int -> BNFC'Position
- class HasPosition a where
- hasPosition :: a -> BNFC'Position
Documentation
data InnerFunType Source #
Instances
Eq InnerFunType Source # | |
Defined in TIP.AbsTIP (==) :: InnerFunType -> InnerFunType -> Bool (/=) :: InnerFunType -> InnerFunType -> Bool | |
Ord InnerFunType Source # | |
Defined in TIP.AbsTIP compare :: InnerFunType -> InnerFunType -> Ordering (<) :: InnerFunType -> InnerFunType -> Bool (<=) :: InnerFunType -> InnerFunType -> Bool (>) :: InnerFunType -> InnerFunType -> Bool (>=) :: InnerFunType -> InnerFunType -> Bool max :: InnerFunType -> InnerFunType -> InnerFunType min :: InnerFunType -> InnerFunType -> InnerFunType | |
Read InnerFunType Source # | |
Defined in TIP.AbsTIP readsPrec :: Int -> ReadS InnerFunType readList :: ReadS [InnerFunType] readPrec :: ReadPrec InnerFunType readListPrec :: ReadPrec [InnerFunType] | |
Show InnerFunType Source # | |
Defined in TIP.AbsTIP showsPrec :: Int -> InnerFunType -> ShowS show :: InnerFunType -> String showList :: [InnerFunType] -> ShowS | |
Print InnerFunType Source # | |
Defined in TIP.PrintTIP prt :: Int -> InnerFunType -> Doc Source # |
data InnerFunDec Source #
Instances
Eq InnerFunDec Source # | |
Defined in TIP.AbsTIP (==) :: InnerFunDec -> InnerFunDec -> Bool (/=) :: InnerFunDec -> InnerFunDec -> Bool | |
Ord InnerFunDec Source # | |
Defined in TIP.AbsTIP compare :: InnerFunDec -> InnerFunDec -> Ordering (<) :: InnerFunDec -> InnerFunDec -> Bool (<=) :: InnerFunDec -> InnerFunDec -> Bool (>) :: InnerFunDec -> InnerFunDec -> Bool (>=) :: InnerFunDec -> InnerFunDec -> Bool max :: InnerFunDec -> InnerFunDec -> InnerFunDec min :: InnerFunDec -> InnerFunDec -> InnerFunDec | |
Read InnerFunDec Source # | |
Defined in TIP.AbsTIP readsPrec :: Int -> ReadS InnerFunDec readList :: ReadS [InnerFunDec] readPrec :: ReadPrec InnerFunDec readListPrec :: ReadPrec [InnerFunDec] | |
Show InnerFunDec Source # | |
Defined in TIP.AbsTIP showsPrec :: Int -> InnerFunDec -> ShowS show :: InnerFunDec -> String showList :: [InnerFunDec] -> ShowS | |
Print InnerFunDec Source # | |
Defined in TIP.PrintTIP prt :: Int -> InnerFunDec -> Doc Source # |
data BracketedFunDec Source #
Instances
data DatatypeName Source #
DatatypeName AttrSymbol Integer |
Instances
data InnerDatatype Source #
Instances
Eq InnerDatatype Source # | |
Defined in TIP.AbsTIP (==) :: InnerDatatype -> InnerDatatype -> Bool (/=) :: InnerDatatype -> InnerDatatype -> Bool | |
Ord InnerDatatype Source # | |
Defined in TIP.AbsTIP compare :: InnerDatatype -> InnerDatatype -> Ordering (<) :: InnerDatatype -> InnerDatatype -> Bool (<=) :: InnerDatatype -> InnerDatatype -> Bool (>) :: InnerDatatype -> InnerDatatype -> Bool (>=) :: InnerDatatype -> InnerDatatype -> Bool max :: InnerDatatype -> InnerDatatype -> InnerDatatype min :: InnerDatatype -> InnerDatatype -> InnerDatatype | |
Read InnerDatatype Source # | |
Defined in TIP.AbsTIP readsPrec :: Int -> ReadS InnerDatatype readList :: ReadS [InnerDatatype] readPrec :: ReadPrec InnerDatatype readListPrec :: ReadPrec [InnerDatatype] | |
Show InnerDatatype Source # | |
Defined in TIP.AbsTIP showsPrec :: Int -> InnerDatatype -> ShowS show :: InnerDatatype -> String showList :: [InnerDatatype] -> ShowS | |
Print InnerDatatype Source # | |
Defined in TIP.PrintTIP prt :: Int -> InnerDatatype -> Doc Source # |
data Constructor Source #
Instances
Var PolySymbol | |
App Head [Expr] | |
Match Expr [Case] | |
Let [LetDecl] Expr | |
Binder Binder [Binding] Expr | |
Lit Lit |
Const PolySymbol | |
At | |
IfThenElse | |
And | |
Or | |
Not | |
Implies | |
Equal | |
Distinct | |
NumAdd | |
NumSub | |
NumMul | |
NumDiv | |
IntDiv | |
IntMod | |
NumGt | |
NumGe | |
NumLt | |
NumLe | |
NumWiden |
data PolySymbol Source #
Instances
Eq PolySymbol Source # | |
Defined in TIP.AbsTIP (==) :: PolySymbol -> PolySymbol -> Bool (/=) :: PolySymbol -> PolySymbol -> Bool | |
Ord PolySymbol Source # | |
Defined in TIP.AbsTIP compare :: PolySymbol -> PolySymbol -> Ordering (<) :: PolySymbol -> PolySymbol -> Bool (<=) :: PolySymbol -> PolySymbol -> Bool (>) :: PolySymbol -> PolySymbol -> Bool (>=) :: PolySymbol -> PolySymbol -> Bool max :: PolySymbol -> PolySymbol -> PolySymbol min :: PolySymbol -> PolySymbol -> PolySymbol | |
Read PolySymbol Source # | |
Defined in TIP.AbsTIP readsPrec :: Int -> ReadS PolySymbol readList :: ReadS [PolySymbol] readPrec :: ReadPrec PolySymbol readListPrec :: ReadPrec [PolySymbol] | |
Show PolySymbol Source # | |
Defined in TIP.AbsTIP showsPrec :: Int -> PolySymbol -> ShowS show :: PolySymbol -> String showList :: [PolySymbol] -> ShowS | |
Print PolySymbol Source # | |
Defined in TIP.PrintTIP prt :: Int -> PolySymbol -> Doc Source # |
data AttrSymbol Source #
Instances
Eq AttrSymbol Source # | |
Defined in TIP.AbsTIP (==) :: AttrSymbol -> AttrSymbol -> Bool (/=) :: AttrSymbol -> AttrSymbol -> Bool | |
Ord AttrSymbol Source # | |
Defined in TIP.AbsTIP compare :: AttrSymbol -> AttrSymbol -> Ordering (<) :: AttrSymbol -> AttrSymbol -> Bool (<=) :: AttrSymbol -> AttrSymbol -> Bool (>) :: AttrSymbol -> AttrSymbol -> Bool (>=) :: AttrSymbol -> AttrSymbol -> Bool max :: AttrSymbol -> AttrSymbol -> AttrSymbol min :: AttrSymbol -> AttrSymbol -> AttrSymbol | |
Read AttrSymbol Source # | |
Defined in TIP.AbsTIP readsPrec :: Int -> ReadS AttrSymbol readList :: ReadS [AttrSymbol] readPrec :: ReadPrec AttrSymbol readListPrec :: ReadPrec [AttrSymbol] | |
Show AttrSymbol Source # | |
Defined in TIP.AbsTIP showsPrec :: Int -> AttrSymbol -> ShowS show :: AttrSymbol -> String showList :: [AttrSymbol] -> ShowS | |
Print AttrSymbol Source # | |
Defined in TIP.PrintTIP prt :: Int -> AttrSymbol -> Doc Source # |
newtype UnquotedSymbol Source #
UnquotedSymbol ((Int, Int), String) |
Instances
newtype QuotedSymbol Source #
QuotedSymbol ((Int, Int), String) |
Instances
Keyword String |
type BNFC'Position = Maybe (Int, Int) Source #
Start position (line, column) of something.
pattern BNFC'NoPosition :: BNFC'Position Source #
pattern BNFC'Position :: Int -> Int -> BNFC'Position Source #
class HasPosition a where Source #
Get the start position of something.
hasPosition :: a -> BNFC'Position Source #
Instances
HasPosition QuotedSymbol Source # | |
Defined in TIP.AbsTIP | |
HasPosition UnquotedSymbol Source # | |
Defined in TIP.AbsTIP |