 FootprintMatch | |
 MetaOperation | |
 OpCollection | Collection of operation templates |
 OpFootprint | Operation footprint given by an input/output template pair |
 OpTemplate | Operation (push_back, erase, ...) template we can match by footprints |
 BindingOff | Tuple of binding offsets assigned to abstract objects |
 CallInst | Bundles static identification of a function with its call instance number |
 cl_accessor | Accessor definition, available for some operands |
 cl_code_listener | Listener object - the core part of this interface |
 cl_cst | Constant, in the C language terminology: literal |
 cl_init_data | Collection of call-backs for writing various types of messages |
 cl_initializer | Initializer, used mainly for global/static variables |
 cl_insn | Single instruction definition |
 cl_loc | Generic location info |
 cl_operand | Generic operand |
 cl_type | Type definition available for each operand |
 cl_type_item | Used for nesting types into another (composite) type |
 cl_var | Variable (local, global, fnc argument, register, etc.) |
 CleanList< T > | |
 CltStackItem | |
 CmpOpTraits | |
 Block | Basic block - a single node in ControlFlow graph |
 Graph | |
 Node | Call-graph node (there is a 1:1 relation with Fnc, if the CG is built) |
 ControlFlow | Control flow graph - an easy to analyse representation of the intermediate code |
 Fnc | Function definition |
 FncDb | Lookup container for set of Fnc objects |
 Insn | High-level representation of an intermediate code instruction |
 KillVar | Value type describing a single 'kill variable' hint |
 ltKillVar | FIXME: inserting <id,0> and <id,1> could break the consistency of std::set |
 NameDb | Name to UID mapping for global/static symbols |
 GlobalData | |
 Graph | |
 Item | |
 Node | |
 Storage | Value type representing the whole serialised model of code |
 TypeDb | Type lookup table |
 Var | High-level variable representation |
 VarDb | Lookup container for set of Var objects |
 BlockData | Per-block data |
 CustomValue | Representation of a custom value, such as integer literal, or code pointer |
 CustomValueData | |
 CVar | Bundles static identification of a variable with its instance number |
 EntCounter | |
 EntStore< TBaseEnt > | |
 CfgEdge | Single control-flow edge connecting instructions (no basic blocks here) |
 GenericInsn | |
  AnnotatedInsn | |
   ClInsn | |
   TextInsn | |
 GenericVar | |
 GlobalState | Annotated fixed-point of a program (or its part, e.g. a function) |
 IStateRewriter | |
  MultiRewriter | |
  RecordRewriter | |
  StateRewriter | |
 LocalState | State summary for a single location (preceding a single instruction) |
 StateByInsn | |
 TraceEdge | Single heap-level trace edge holding inner ID mappings inside |
 FldHandle | |
  PtrHandle | |
 FldList | Ugly, but typedefs do not support partial declarations |
 Options | |
 IdMapper< TId, MIN, MAX > | |
 IntervalArena< TInt, TFld > | Ad-hoc implementation; wastes memory, performance, and human resources |
 IPendingCountProvider | |
  SymStateMap | Higher-level container that maintains a SymStateMarked object per each basic block |
 Range | Closed interval over integral domain |
 IStatsProvider | |
  BlockScheduler | |
 LeakMonitor | |
 PlotEnumerator | |
 ProtectionIntrusion | Temporarily disable protected mode of SymHeap in a debug build |
 RefCntLibBase | |
  RefCntLib< RCO_NON_VIRT > | |
  RefCntLib< RCO_VIRTUAL > | |
 RefCounter | |
 Shape | Inductive definition of a container shape |
 ShapeProps | Describe how the shape looks like |
 SignalCatcher | |
 SymBackTrace | Backtrace management |
 SymCallCache | Persistent cache for results of fncs called during the symbolic execution |
 SymCallCtx | Function call context, which represents a cache entry of SymCallCache |
 SymExecCoreParams | |
 SymHeapCore | SymHeapCore - the elementary representation of the state of program memory |
  SymHeap | Extension of SymHeapCore dealing with abstract objects (list segments etc.) |
 SymPairMap< TKey, TVal > | |
 SymPairSet< TKey, IREFLEXIVE > | Symmetric relation |
 SymProc | Layer on top of SymHeap, providing some higher-level operations |
  SymExecCore | Extension of SymProc, now only used by SymExecEngine::execNontermInsn() |
 SymState | |
  SymHeapList | |
  SymHeapUnion | Symbolic state represented as a union of SymHeap objects (aka disjuncts) |
   SymStateWithJoin | |
    SymStateMarked | Extension of SymStateWithJoin, which distinguishes among already processed symbolic heaps and symbolic heaps scheduled for processing |
 EndPointConsolidator | Container maintaining a set of trace graph end-points |
 Globals | Singleton holding global GraphProxy (may be extended later) |
 GraphProxy | Container maintaining a set of trace graphs being built on the fly |
 NodeBase | Abstract base for Node and NodeHandle (externally not much useful) |
  Node | Abstract node of the symbolic execution trace graph |
   AbstractionNode | Trace graph node that represents a single abstraction step |
   CallCacheHitNode | Trace graph node representing a cached call result |
   CallDoneNode | Trace graph node representing a call result |
   CallEntryNode | Trace graph node representing a call entry point |
   CallFrameNode | Trace graph node representing a call frame |
   CloneNode | Trace graph nodes inserted automatically per each SymHeap clone operation |
   ConcretizationNode | Trace graph node that represents a single concretization step |
   CondNode | Trace graph node that represents a conditional insn being traversed |
   ImportGlVarNode | Trace graph node that represents a single call of importGlVar() |
   InsnNode | Trace graph node that represents a non-terminal instruction |
   JoinNode | Trace graph node that represents a single join operation |
   MsgNode | Trace graph node representing an error/warning message |
   RootNode | Root node of the trace graph (usually a call of the root function) |
   SpliceOutNode | Trace graph node that represents a single splice-out operation |
   TransientNode | Used to explicitly highlight trace graph nodes that should not be reachable |
   UserNode | Trace graph node representing something important for the user |
  NodeHandle | Useful to prevent a trace sub-graph from being destroyed too early |
 UniformBlock | Only uninitialized or nullified blocks; generic arrays and strings need more |
 WorkList< T, TSched > | Really stupid, but easy to use, DFS implementation |
 WorkListLib< T, TShed > | |
 WorkListLib< T, std::queue< T > > | |
 WorkListLib< T, std::stack< T > > | |