Hets - the Heterogeneous Tool Set
Copyright(c) Till Mossakowski Uni Magdeburg 2002-2016
LicenseGPLv2 or higher, see LICENSE.txt
Maintainertill@informatik.uni-bremen.de
Stabilityprovisional
Portabilitynon-portable(Logic)
Safe HaskellNone

Static.AnalysisLibrary

Description

Static analysis of DOL documents and CASL specification libraries Follows the verification semantics sketched in Chap. IV:6 of the CASL Reference Manual. Follows the semantics of DOL documents, DOL OMG standard, clause 10.2.1

Synopsis

Documentation

anaLibFileOrGetEnv :: LogicGraph -> HetcatsOpts -> LNS -> LibEnv -> DGraph -> Maybe LibName -> FilePath -> ResultT IO (LibName, LibEnv) Source #

lookup or read a library

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

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) Source #

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) Source #

analyse genericity and view type and construct gmorphism

type LNS = Set LibName Source #