hets -- a heterogenous Specification (CASL) tool set
Contents
Index
CASL.StaticAna
Portability
portable
Stability
provisional
Maintainer
hets@tzi.de
Contents
traversing all data types of the abstract syntax
Description
CASL static analysis for basic specifications
Synopsis
checkPlaces
:: [
SORT
] ->
Id
-> [
Diagnosis
]
addOp
::
OpType
->
Id
->
State
Sign
()
addAssocOp
::
OpType
->
Id
->
State
Sign
()
addPred
::
PredType
->
Id
->
State
Sign
()
allOpIds
::
State
Sign
(
Set
Id
)
addAssocs
::
GlobalAnnos
->
State
Sign
GlobalAnnos
formulaIds
::
State
Sign
(
Set
Id
)
allPredIds
::
State
Sign
(
Set
Id
)
addSentences
:: [
Named
FORMULA
] ->
State
Sign
()
ana_BASIC_SPEC
::
GlobalAnnos
->
BASIC_SPEC
->
State
Sign
BASIC_SPEC
data
GenKind
=
Free
|
Generated
|
Loose
ana_BASIC_ITEMS
::
GlobalAnnos
->
BASIC_ITEMS
->
State
Sign
BASIC_ITEMS
ana_SIG_ITEMS
::
GlobalAnnos
->
GenKind
->
SIG_ITEMS
->
State
Sign
SIG_ITEMS
ana_SORT_ITEM
::
GlobalAnnos
->
SORT_ITEM
->
State
Sign
SORT_ITEM
toOpType
::
OP_TYPE
->
OpType
ana_OP_ITEM
::
GlobalAnnos
->
OP_ITEM
->
State
Sign
OP_ITEM
sortsOfArgs
:: [
ARG_DECL
] -> [
SORT
]
ana_OP_ATTR
::
GlobalAnnos
->
OP_ATTR
->
State
Sign
(
Maybe
OP_ATTR
)
toPredType
::
PRED_TYPE
->
PredType
ana_PRED_ITEM
::
GlobalAnnos
->
PRED_ITEM
->
State
Sign
PRED_ITEM
data
Component
=
Component
{
compId
::
Id
compType
::
OpType
}
data
Alternative
=
Construct
Id
OpType
[
Component
]
ana_DATATYPE_DECL
::
GenKind
->
DATATYPE_DECL
->
State
Sign
()
ana_ALTERNATIVE
::
SORT
->
ALTERNATIVE
->
State
Sign
(
Maybe
(
Component
,
Set
Component
))
ana_COMPONENTS
::
SORT
->
COMPONENTS
->
State
Sign
([
Component
], [
Component
])
basicAnalysis
:: (
BASIC_SPEC
,
Sign
,
GlobalAnnos
) ->
Result
(
BASIC_SPEC
,
Sign
,
Sign
, [
Named
FORMULA
])
Documentation
checkPlaces
:: [
SORT
] ->
Id
-> [
Diagnosis
]
addOp
::
OpType
->
Id
->
State
Sign
()
addAssocOp
::
OpType
->
Id
->
State
Sign
()
addPred
::
PredType
->
Id
->
State
Sign
()
allOpIds
::
State
Sign
(
Set
Id
)
addAssocs
::
GlobalAnnos
->
State
Sign
GlobalAnnos
formulaIds
::
State
Sign
(
Set
Id
)
allPredIds
::
State
Sign
(
Set
Id
)
addSentences
:: [
Named
FORMULA
] ->
State
Sign
()
traversing all data types of the abstract syntax
ana_BASIC_SPEC
::
GlobalAnnos
->
BASIC_SPEC
->
State
Sign
BASIC_SPEC
data
GenKind
Constructors
Free
Generated
Loose
Instances
Show
GenKind
Eq
GenKind
Ord
GenKind
ana_BASIC_ITEMS
::
GlobalAnnos
->
BASIC_ITEMS
->
State
Sign
BASIC_ITEMS
ana_SIG_ITEMS
::
GlobalAnnos
->
GenKind
->
SIG_ITEMS
->
State
Sign
SIG_ITEMS
ana_SORT_ITEM
::
GlobalAnnos
->
SORT_ITEM
->
State
Sign
SORT_ITEM
toOpType
::
OP_TYPE
->
OpType
ana_OP_ITEM
::
GlobalAnnos
->
OP_ITEM
->
State
Sign
OP_ITEM
sortsOfArgs
:: [
ARG_DECL
] -> [
SORT
]
ana_OP_ATTR
::
GlobalAnnos
->
OP_ATTR
->
State
Sign
(
Maybe
OP_ATTR
)
toPredType
::
PRED_TYPE
->
PredType
ana_PRED_ITEM
::
GlobalAnnos
->
PRED_ITEM
->
State
Sign
PRED_ITEM
data
Component
Constructors
Component
compId
::
Id
compType
::
OpType
Instances
Eq
Component
Ord
Component
PrettyPrint
Component
PosItem
Component
Show
Component
data
Alternative
Constructors
Construct
Id
OpType
[
Component
]
Instances
Show
Alternative
Eq
Alternative
ana_DATATYPE_DECL
::
GenKind
->
DATATYPE_DECL
->
State
Sign
()
ana_ALTERNATIVE
::
SORT
->
ALTERNATIVE
->
State
Sign
(
Maybe
(
Component
,
Set
Component
))
ana_COMPONENTS
::
SORT
->
COMPONENTS
->
State
Sign
([
Component
], [
Component
])
basicAnalysis
:: (
BASIC_SPEC
,
Sign
,
GlobalAnnos
) ->
Result
(
BASIC_SPEC
,
Sign
,
Sign
, [
Named
FORMULA
])
Produced by
Haddock
version 0.6