Frama-C Kernel

Index of types
Index of exceptions
Index of values
Index of class attributes
Index of class methods
Index of classes
Index of class types
Index of modules
Index of module types

Chapter 1. Frama-C

Section Ai (in src/ai)


Abstract_interp
Undocumented.
Base
Undocumented.
Base_Set_Lattice
Undocumented.
Int_Base
Undocumented.
Ival
Undocumented.
Lattice_Interval_Set
Undocumented.
Map_Lattice
Undocumented.
Origin
Undocumented.

Section Buckx (in src/buckx)


Buckx
Undocumented.

Section Gui (in src/gui)


Analyses_manager
Automatic registration.
Debug_manager
Automatic registration.
Design
The extensible GUI.
File_manager
Automatic registration.
Filetree
The tree containing the list of modules and functions together with dynamic columns
Gtk_form
Undocumented.
Gtk_helper
Generic Gtk helpers.
Gui_parameters
Kernel of the GUI.
Help_manager
Automatic registration.
History
Source code navigation history.
Launcher
The Frama-C launcher.
Menu_manager
Handle the menubar and the toolbar.
Pretty_source
Utilities to pretty print source with located elements in a Gtk TextBuffer.
Project_manager
Extension of the GUI in order to support project switching.
Property_navigator
Extension of the GUI in order to navigate in ACSL properties.
Source_manager
The source viewer multi-tabs widget window.
Source_viewer
The Frama-C source viewer.
Warning_manager
Handle Frama-C warnings in the GUI.

Section Kernel (in src/kernel)


Alarms
Alarms Database for the value analysis.
Annotations
Annotations associated with a statement.
Ast
Access to the CIL AST which must be used from Frama-C.
Ast_info
AST manipulation utilities.
Ast_printer
Default printers of Frama-C.
CilE
CIL Extension for Frama-C.
Cmdline
Command line parsing.
Command
Useful high-level system operations.
Config
Information about version of Frama-C.
Db
Database in which static plugins are registered.
Dynamic
Dynamic plug-ins: registration and use.
Emitter
Emitter.
File
Frama-c preprocessing and Cil AST initialization.
Globals
Operations on globals.
Gui_init
Very early initialisation step requiered by any GUI.
Journal
Journalization of functions
Kernel
Provided services for kernel developers.
Kernel_function
Operations on kernel function.
Log
Logging Services for Frama-C Kernel and Plugins.
Loop
Operations on (natural) loops.
Messages
Stored messages.
Parameter
Parameter settable through a command line option.
Plugin
Provided plug-general services for plug-ins.
Printer
This pretty printer prints the annotations from Db but not the one in the code.
Special_hooks
Nothing is export: just register some special hooks for Frama-C.
Stmts_graph
Statements graph.
Task
High Level Interface to Command.
Unicode
Handling unicode string.
Unroll_loops
Syntactic loop unrolling.
Visitor
Frama-C visitors dealing with projects.

Section Lib (in src/lib)


Bag
List with constant-time concat operation.
Binary_cache
Undocumented.
Bitvector
Bitvector naive implementation.
Dynlink_common_interface
Wrapper for Dynlink compatible with all OCaml versions.
Extlib
Useful operations.
Hook
Hook builder.
Hptset
Sets over ordered types.
Map_common_interface
Wrapper for Map compatible with all OCaml versions.
My_bigint
pgcd u 0 is allowed and returns u
Pretty_utils
Pretty-printer utilities.
Printexc_common_interface
Wrapper for Printexc compatible with all OCaml versions.
Qstack
Mutable stack in which it is possible to add data at the end (like a queue) and to handle non top elements.
Rangemap
Association tables over ordered types.

Section Logic (in src/logic)


Description
Module for Describing items of Source and Properties.
Infer_annotations
This is empty on purpose.
Logic_interp
Undocumented.
Property
ACSL comparable property.
Property_status
Status of properties.
Translate_lightweight
Annotate files interpreting lightweight annotations.

Section Memory_state (in src/memory_state)


Abstract_value
Undocumented.
Bit_model_access
Empty on purpose.
Cvalue
Function_Froms
Undocumented.
Int_Interv
Undocumented.
Int_Interv_Map
Undocumented.
Lmap
Functors making map indexed by locations.
Lmap_bitwise
Functors making map indexed by zone.
Locations
Memory locations.
New_offsetmap
Maps from intervals to values (aka rangemaps).
Offsetmap
Undocumented.
Offsetmap_bitwise
Undocumented.
Path_lattice
Undocumented.
Shifted_Location
Undocumented.
State_imp
Undocumented.
State_set
Undocumented.
Tr_offset
Undocumented.
Widen
Undocumented.
Widen_type
Undocumented.

Section Misc (in src/misc)


Bit_utils
Some bit manipulations.
Filter
Filter helps to build a new cilfile from an old one by removing some of its elements.
Service_graph
Compute services from a callgraph.
Subst
Substitution of varinfos by exps.

Section Project (in src/project)


Dashtbl
Dashtbl.
Project
Projects management.
Project_skeleton
This module should not be used outside of the Project library.
State
A state is a project-compliant mutable value.
State_builder
State builders.
State_dependency_graph
State Dependency Graph.
State_selection
A state selection is a set of states with operations for easy handling of state dependencies.
State_topological
Topological ordering over states.

Section Type (in src/type)


Datatype
A datatype provides useful values for types.
Descr
Type descriptor for safe unmarshalling.
Structural_descr
Internal representations of OCaml type as first class values.
Type
Type value.

Chapter 2. C & ACSL

Section Ext (in cil/ext)


Availexpslv
Callgraph
Compute a static call graph.
Cfg
Code to compute the control-flow graph of a function or file.
Ciltools
START OF deepHasAttribute ***********************************************
Dataflow
A framework for data flow analysis for CIL code.
Deadcodeelim
Dominators
Compute dominators using data flow analysis
Expcompare
Liveness
Obfuscate
Oneret
Make sure that there is only one Return statement in the whole body.
Reachingdefs
Rmciltmps
Usedef
compute use/def information

Section Frontc (in cil/frontc)


Cabs
This file was originally part of Hugues Casee's frontc 2.0, and has been extensively changed since.
Cabs2cil
Registers a new hook that will be applied each time a side-effect free expression whose result is unused is dropped.
Cabscond
Interface to be used during Cabs2cil
Cabshelper
Helper functions for Cabs
Cabsvisit
Variable or function prototype name
Clexer
The C Lexer.
Cparser
Cprint
Printers for the Cabs AST
Errorloc
high-level position
Frontc
Signals that we are in MS VC mode
Lexerhack
Whitetrack

Section Logic (in cil/logic)


Logic_builtin
Logic_const
Smart contructors for logic annotations.
Logic_env
Global Logic Environment
Logic_lexer
Logic_parser
Logic_preprocess
adds another pre-processing step in order to expand macros in annotations.
Logic_print
Pretty-printing of a parsed logic tree.
Logic_ptree
logic constants.
Logic_typing
Logic typing and logic environment.
Logic_utils
exception raised when a parsed logic expression is syntactically not well-formed.
Utf8_logic
UTF-8 string for logic symbols.

Section Ocamlutil (in cil/ocamlutil)


Alpha
ALPHA conversion
Cilutil
A bunch of generally useful functions.
Clist
Utilities for managing "concatenable lists" (clists).
GrowArray
Array operations.
Inthash
Hashtable with integer keys.
SetWithNearest
Output signature of the functor SetWithNearest.Make.

Section Src (in cil/src)


Cil
CIL main API.
Cil_const
Smart constructors for some CIL data types
Cil_datatype
Datatypes of some useful CIL types.
Cil_state_builder
Functors for building computations which use kernel datatypes.
Cil_types
The Abstract Syntax of CIL.
Cilglobopt
Cilmsg
CIL's internal stack of errors.
Escape
OCaml types used to represent wide characters and strings
Machdep
Machine dependent values.
Machdep_ppc_32
Machdep_x86_16
Machdep_x86_32
Machdep_x86_64
Mergecil
Set this to true to ignore the merge conflicts
Rmtmps
removes unused labels for which is_removable is true.

Directory Nitrogen-20111001

Section External (in Nitrogen-20111001/external)


Hptmap
Unmarshal
This module provides a function input_val, similar in functionality to the standard library function Marshal.from_channel.
Unmarshal_nums
This module extends Unmarshal to deal with the data types of the Nums library.