Module CASS.Registry

This module collects all analyses in the analysis system.

Each analysis available in the analysis system must be registered in the top part of this module.

Author
Heiko Hoffmann, Michael Hanus
Version
March 2025

Exported Functions


registeredAnalysisNames :: [String]  Non-deterministic 

Names of all registered analyses.

Further infos:
  • might behave indeterministically

registeredAnalysisInfos :: [(String, String)]  Non-deterministic 

Names and titles of all registered analyses.

Further infos:
  • might behave indeterministically

functionAnalysisInfos :: [(String, String)]  Non-deterministic 

Names and titles of all registered function analyses.

Further infos:
  • might behave indeterministically

lookupRegAnaWorker :: String -> CConfig -> [String] -> IO ()  Non-deterministic 

Further infos:
  • might behave indeterministically

runAnalysisWithWorkers :: CConfig -> String -> OutputFormat -> AOutFormat -> Bool -> [Handle] -> String -> IO (Either (ProgInfo String) String)  Non-deterministic 

Further infos:
  • might behave indeterministically

analyzeMain :: (Eq a, Read a, Show a, ReadWrite a) => CConfig -> Analysis a -> String -> [Handle] -> Bool -> Bool -> IO (Either (ProgInfo a) String)  Non-deterministic 

Generic operation to analyze a module. The parameters are the analysis, the name of the main module to be analyzed, the handles for the workers, a flag indicating whether the (re-)analysis should be enforced, and a flag indicating whether the analysis results should be loaded and returned (if the flag is false, the result contains the empty program information). An error occurred during the analysis is returned as (Right ...).

Further infos:
  • might behave indeterministically