hets -- a heterogenous Specification (CASL) tool setContentsIndex
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