package mopsa
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  MOPSA: A Modular and Open Platform for Static Analysis using Abstract Interpretation
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
  
    
      mopsa-analyzer-v1.1.tar.gz
    
    
        
    
  
  
  
    
  
  
    
  
        md5=fdee20e988343751de440b4f6b67c0f4
    
    
  sha512=f5cbf1328785d3f5ce40155dada2d95e5de5cce4f084ea30cfb04d1ab10cc9403a26cfb3fa55d0f9da72244482130fdb89c286a9aed0d640bba46b7c00e09500
    
    
  doc/cpython/Cpython/Cmodule/Domain/index.html
Module Cmodule.DomainSource
include module type of struct include EquivBaseAddrs end
include sig ... end
type t = AddrSet.t * OtherMap.tval bottom : tval top : tval map_snd : (OtherMap.t -> OtherMap.t) -> t -> tval print : Core.All.printer -> t -> unitSource
val find_opt_from_c : 
  C.Common.Points_to.points_to ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, Mopsa.addr option) Mopsa.Cases.casesSource
val find_opt_from_py : 
  Mopsa.addr ->
  Mopsa_utils.Location.range ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, C.Common.Points_to.points_to option) Mopsa.Cases.casesSource
val add_addr : 
  AddrSet.Set.elt ->
  ('a, AddrSet.t * 'b) Core.Manager.man ->
  'a Core.Flow.flow ->
  ('a, unit) Mopsa.Cases.casesSource
val add_c_py_equiv : 
  C.Common.Points_to.points_to ->
  OtherMap.ValueSet.elt ->
  ('a, 'b * OtherMap.t) Core.Manager.man ->
  'a Core.Flow.flow ->
  ('a, unit) Mopsa.Cases.casesSource
val rename_addr : 
  Mopsa.addr ->
  AddrSet.Set.elt ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, bool) Mopsa.Cases.casesinclude sig ... end
val id : t Core__Id.idSource
val init : 
  'a ->
  ('b, AddrSet.t * OtherMap.t) Core.Manager.man ->
  'b Core.Flow.flow ->
  ('b, unit) Core.Cases.cases optionSource
val materialize_builtin_val_addr : 
  Mopsa.addr ->
  ('a, 'b) Mopsa.man ->
  Mopsa_utils.Location.range ->
  'a Core.Flow.flow ->
  ('a, Ast.Addr.addr) Mopsa.Cases.casesSource
val mk_avalue_from_pyaddr : 
  Mopsa.addr ->
  Ast.Typ.typ ->
  Mopsa_utils.Location.range ->
  Mopsa.exprSource
val safe_get_name_of : 
  Mopsa.expr ->
  ('a, 'b) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, string Mopsa.Top.with_top option) Mopsa.Cases.casesSource
val bind_in_python : 
  Mopsa.addr ->
  string ->
  Mopsa.addr ->
  Mopsa_utils.Location.range ->
  ('a, 'b) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, unit) Mopsa.Cases.casesSource
val mk_base_offset_pointer : 
  C.Common.Base.base ->
  Mopsa.expr ->
  Mopsa.typ ->
  Mopsa_utils.Location.range ->
  Mopsa.exprSource
val alloc_py_addr : 
  ('a, 'b) Mopsa.man ->
  Ast.Addr.addr_kind ->
  ?mode:Mopsa.mode ->
  Mopsa_utils.Location.range ->
  'a Core.Flow.flow ->
  ('a, Ast.Expr.expr) Mopsa.Cases.casesSource
val new_method_from_def : 
  Mopsa.addr ->
  Python.Addr.py_c_function_kind ->
  Mopsa.expr ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, bool) Mopsa.Cases.casesSource
val fold_until_null : 
  (int -> 'a Core.Flow.flow -> ('a, bool) Mopsa.Cases.cases) ->
  int ->
  'a Core.Flow.flow ->
  ('a, unit) Mopsa.Cases.casesSource
val add_pymethoddef : 
  string ->
  Mopsa.addr ->
  Python.Addr.py_c_function_kind ->
  Mopsa.expr ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, unit) Core.Cases.casesSource
val add_pymemberdef : 
  Mopsa.addr ->
  Mopsa.expr ->
  ('a, 'b * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, unit) Core.Cases.casesSource
val new_module_from_def : 
  Mopsa.expr ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, Ast.Expr.expr) Mopsa.Cases.casesSource
val resolve_c_pointer_into_addr : 
  Mopsa.expr ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, Mopsa.addr Mopsa.Top.with_top option) Mopsa.Cases.casesSource
val c_to_python_boundary : 
  ?safe_check:Core.Alarm.check option ->
  ?on_null:('a Core.Flow.flow -> ('a, Ast.Expr.expr) Mopsa.Cases.cases) ->
  ?on_top:('a Core.Flow.flow -> ('a, Ast.Expr.expr) Mopsa.Cases.cases) ->
  Mopsa.expr ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  Mopsa_utils.Location.range ->
  ('a, Ast.Expr.expr) Mopsa.Cases.casesSource
val bind_function_in : 
  string ->
  Mopsa.expr ->
  Mopsa.addr ->
  Python.Addr.py_c_function_kind ->
  ('a, 'b * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, unit) Mopsa.Cases.casesSource
val check_consistent_null : 
  string ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Mopsa.Flow.flow ->
  Mopsa_utils.Location.range ->
  ('a, Ast.Expr.expr) Mopsa.Cases.casesSource
val points_to_to_c_expr : 
  C.Common.Points_to.points_to ->
  Mopsa.typ ->
  Mopsa_utils.Location.range ->
  Mopsa.exprSource
val py_addr_to_c_expr : 
  Mopsa.addr ->
  Mopsa.typ ->
  Mopsa_utils.Location.range ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, Mopsa.expr) Mopsa.Cases.casesSource
val try_init : 
  'a Core.Flow.flow ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  Mopsa_utils.Location.range ->
  ('a, unit) Mopsa.Cases.casesSource
val python_to_c_boundary : 
  Mopsa.addr ->
  Mopsa.typ option ->
  Mopsa.expr option ->
  ?size:Mopsa.expr option ->
  Mopsa_utils.Location.range ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Mopsa.flow ->
  'a Mopsa.evalSource
val new_class_from_def : 
  Mopsa.expr ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, Ast.Addr.addr) Mopsa.Cases.casesSource
val c_set_exception : 
  string ->
  string ->
  Mopsa_utils.Location.range ->
  ('a, 'b) Mopsa.man ->
  'a Mopsa.Flow.flow ->
  'a Core.Post.postSource
val len_of : 
  ('a, 'b) Mopsa.man ->
  Mopsa.addr ->
  'a Core.Flow.flow ->
  Mopsa_utils.Location.range ->
  ('a, int) Mopsa.Cases.casesSource
val pylong_to_c_type : 
  Mopsa.expr ->
  Mopsa_utils.Location.range ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  (Z.t * Z.t * string) ->
  ('a, Ast.Expr.expr) Mopsa.Cases.casesSource
val c_int_to_python : 
  Mopsa.expr ->
  ('a, 'b) Mopsa.man ->
  'a Mopsa.Flow.flow ->
  Mopsa_utils.Location.range ->
  ('a, Ast.Expr.expr) Mopsa.Cases.casesSource
val fold_c_to_python_boundary : 
  ?safe_check:Core.Alarm.check option ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  Mopsa_utils.Location.range ->
  Mopsa.expr list ->
  'a Core.Flow.flow ->
  ('a, Ast.Expr.expr list) Mopsa.Cases.casesSource
val build_value : 
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  Mopsa.range ->
  string ->
  Mopsa.expr list ->
  ('a, Mopsa.expr list) Mopsa.Cases.casesSource
val convert_single : 
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  Mopsa.expr ->
  char ->
  Mopsa.expr ->
  Mopsa_utils.Location.range ->
  'a Core.Flow.flow ->
  ('a, int) Mopsa.Cases.casesSource
val eval : 
  Mopsa.expr ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  'a Mopsa.Eval.eval optionSource
val exec : 
  Mopsa.stmt ->
  ('a, AddrSet.t * OtherMap.t) Mopsa.man ->
  'a Core.Flow.flow ->
  ('a, unit) Core.Cases.cases option sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >