Hets - the Heterogeneous Tool Set

Copyright(c) Till Mossakowski, Uni Bremen 2002-2006
LicenseGPLv2 or higher, see LICENSE.txt
Maintainertill@informatik.uni-bremen.de
Stabilityprovisional
Portabilitynon-portable(Logic)
Safe HaskellNone

Static.AnalysisLibrary

Description

Static analysis of CASL specification libraries Follows the verification semantics sketched in Chap. IV:6 of the CASL Reference Manual.

Synopsis

Documentation

anaLibDefn :: LogicGraph -> HetcatsOpts -> LNS -> LibEnv -> DGraph -> LIB_DEFN -> FilePath -> ResultT IO (LibName, LIB_DEFN, GlobalAnnos, LibEnv)

analyze a LIB_DEFN. Parameters: logic graph, default logic, opts, library env, LIB_DEFN. Call this function as follows:

   do Result diags res <- runResultT (anaLibDefn ...)
      mapM_ (putStrLn . show) diags

anaSourceFile :: LogicGraph -> HetcatsOpts -> LNS -> LibEnv -> DGraph -> FilePath -> ResultT IO (LibName, LibEnv)

parsing and static analysis for files Parameters: logic graph, default logic, file name

anaViewDefn :: LogicGraph -> LibName -> LibEnv -> DGraph -> HetcatsOpts -> ExpOverrides -> IRI -> GENERICITY -> VIEW_TYPE -> [G_mapping] -> Range -> Result (LIB_ITEM, DGraph, LibEnv, LogicGraph, ExpOverrides)

analyse genericity and view type and construct gmorphism

type LNS = Set LibName