Copyright | (c) C. Maeder, DFKI 2008 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | Christian.Maeder@dfki.de |
Stability | provisional |
Portability | portable |
Safe Haskell | None |
CASL extention to VSE programs and dynamic logic as described on page 4-7 (Sec 2.3.1, 2.5.2, 2.5.4, 2.6) of Bruno Langenstein's API description
- data Paramkind
- data Procparam = Procparam Paramkind SORT
- data Profile = Profile [Procparam] (Maybe SORT)
- data Sigentry = Procedure Id Profile Range
- data Procdecls = Procdecls [Annoted Sigentry] Range
- data Ranged a = Ranged {}
- mkRanged :: a -> Ranged a
- type Program = Ranged PlainProgram
- data PlainProgram
- data VarDecl = VarDecl VAR SORT (Maybe (TERM ())) Range
- toVarDecl :: [VAR_DECL] -> [VarDecl]
- addInits :: [VarDecl] -> Program -> ([VarDecl], Program)
- data VSEforms
- type Dlformula = Ranged VSEforms
- type Sentence = FORMULA Dlformula
- data BoxOrDiamond
- data ProcKind
- data Defproc = Defproc ProcKind Id [VAR] Program Range
- data Procs = Procs {}
- emptyProcs :: Procs
- unionProcs :: Procs -> Procs -> Result Procs
- interProcs :: Procs -> Procs -> Result Procs
- diffProcs :: Procs -> Procs -> Procs
- isSubProcsMap :: Procs -> Procs -> Bool
- block :: Doc -> Doc
- prettyProcKind :: ProcKind -> Doc
- assign :: Doc
- genSortName :: String -> SORT -> Id
- gnUniformName :: SORT -> Id
- gnRestrName :: SORT -> Id
- gnEqName :: SORT -> Id
- genVars :: [SORT] -> [(Token, SORT)]
- xVar :: Token
- yVar :: Token
- printRestrTypedecl :: Map SORT Id -> DATATYPE_DECL -> Doc
- prettyProcdefs :: [Defproc] -> Doc
Documentation
data Paramkind
input or output procedure parameter kind
data Procparam
a procedure parameter
data Profile
procedure or function declaration
data Sigentry
further VSE signature entries
data Procdecls
data Ranged a
wrapper for positions
type Program = Ranged PlainProgram
programs with ranges
data PlainProgram
programs based on restricted terms and formulas
data VarDecl
alternative variable declaration
data VSEforms
extend CASL formulas by box or diamond formulas and defprocs
Dlformula BoxOrDiamond Program Sentence | |
Defprocs [Defproc] | |
RestrictedConstraint [Constraint] (Map SORT Id) Bool |
data BoxOrDiamond
box or diamond indicator
data ProcKind
data Defproc
procedure definitions as basic items becoming sentences
data Procs
emptyProcs :: Procs
unionProcs :: Procs -> Procs -> Result Procs
interProcs :: Procs -> Procs -> Result Procs
isSubProcsMap :: Procs -> Procs -> Bool
Pretty instances
prettyProcKind :: ProcKind -> Doc
genSortName :: String -> SORT -> Id
gnUniformName :: SORT -> Id
gnRestrName :: SORT -> Id
printRestrTypedecl :: Map SORT Id -> DATATYPE_DECL -> Doc
prettyProcdefs :: [Defproc] -> Doc