| Copyright | (c) Maciek Makowski Warsaw University C. Maeder 2004-2006 Mihai Codescu DFKI GmbH Bremen 2010 |
|---|---|
| License | GPLv2 or higher, see LICENSE.txt |
| Maintainer | till@informatik.uni-bremen.de |
| Stability | provisional |
| Portability | non-portable (via imports) |
| Safe Haskell | None |
Static.AnalysisArchitecture
Description
Static analysis of CASL architectural specifications Follows the extended static semantics sketched in Chap. III:5.6 of the CASL Reference Manual.
Synopsis
- anaArchSpec :: LogicGraph -> LibEnv -> LibName -> DGraph -> HetcatsOpts -> ExpOverrides -> ExtStUnitCtx -> Maybe Node -> ARCH_SPEC -> Result ([DiagNodeSig], Maybe DiagNodeSig, Diag, RefSig, DGraph, ARCH_SPEC)
- anaUnitSpec :: LogicGraph -> LibEnv -> LibName -> DGraph -> HetcatsOpts -> ExpOverrides -> SPEC_NAME -> MaybeNode -> Maybe RTPointer -> UNIT_SPEC -> Result (RefSig, DGraph, UNIT_SPEC)
- anaRefSpec :: Bool -> LogicGraph -> LibEnv -> LibName -> DGraph -> HetcatsOpts -> ExpOverrides -> MaybeNode -> SPEC_NAME -> ExtStUnitCtx -> Maybe RTPointer -> REF_SPEC -> Result ([DiagNodeSig], Maybe DiagNodeSig, Maybe Diag, RefSig, DGraph, REF_SPEC)
Documentation
Arguments
| :: LogicGraph | |
| -> LibEnv | |
| -> LibName | |
| -> DGraph | |
| -> HetcatsOpts | should only the structure be analysed? |
| -> ExpOverrides | |
| -> ExtStUnitCtx | for visibility levels |
| -> Maybe Node | |
| -> ARCH_SPEC | |
| -> Result ([DiagNodeSig], Maybe DiagNodeSig, Diag, RefSig, DGraph, ARCH_SPEC) |
Analyse an architectural specification
ARCH-SPEC ::= BASIC-ARCH-SPEC | GROUP-ARCH-SPEC | ARCH-SPEC-NAME
returns 1. the architectural signature of given ARCH-SPEC 2. development graph resulting from structured specs within the arch spec and 3. ARCH_SPEC after possible conversions
Arguments
| :: LogicGraph | |
| -> LibEnv | |
| -> LibName | |
| -> DGraph | |
| -> HetcatsOpts | should only the structure be analysed? |
| -> ExpOverrides | |
| -> SPEC_NAME | |
| -> MaybeNode | the signature of imports |
| -> Maybe RTPointer | |
| -> UNIT_SPEC | |
| -> Result (RefSig, DGraph, UNIT_SPEC) |
Analyse unit specification
returns 1. unit signature 2. the development graph resulting from structred specs inside the unit spec and 3. a UNIT_SPEC after possible conversions.
Arguments
| :: Bool | |
| -> LogicGraph | |
| -> LibEnv | |
| -> LibName | |
| -> DGraph | |
| -> HetcatsOpts | should only the structure be analysed? |
| -> ExpOverrides | |
| -> MaybeNode | the signature of imports |
| -> SPEC_NAME | |
| -> ExtStUnitCtx | |
| -> Maybe RTPointer | |
| -> REF_SPEC | |
| -> Result ([DiagNodeSig], Maybe DiagNodeSig, Maybe Diag, RefSig, DGraph, REF_SPEC) |
Analyse refinement specification