package mopsa
MOPSA: A Modular and Open Platform for Static Analysis using Abstract Interpretation
Install
dune-project
Dependency
Authors
Maintainers
Sources
mopsa-analyzer-v1.2.tar.gz
md5=37966e98ffeebcedc09bd6e9b2b81f69
sha512=40d4d826c25f680766c07eccbabdf5e8a4fa023016e8a164e4e4f6b3781c8484dc4df437055721dfd19b9db8fb7fe3b61236c4833186d346fc7204a68d01eaaa
doc/mopsa.mopsa_analyzer/Mopsa_analyzer/Languages/Python/Lang/Utils/index.html
Module Lang.Utils
val debug : ('a, Format.formatter, unit, unit) format4 -> 'a
val mk_builtin_raise :
?ssynthetic:bool ->
string ->
Mopsa_utils.Core.Location.range ->
MopsaLib.stmt
val mk_builtin_raise_args :
?ssynthetic:bool ->
string ->
MopsaLib.expr list ->
Mopsa_utils.Core.Location.range ->
MopsaLib.stmt
val mk_builtin_raise_msg :
?ssynthetic:bool ->
string ->
string ->
Mopsa_utils.Core.Location.range ->
MopsaLib.stmt
val mk_builtin_call :
?esynthetic:bool ->
string ->
MopsaLib.expr list ->
Mopsa_utils.Core.Location.range ->
MopsaLib.expr
Creates an AST block, tagged by `range`, representing the call of a builtin defined as `f` (a string), to which a list of parameters is passed
val mk_hasattr :
?esynthetic:bool ->
MopsaLib.expr ->
string ->
Mopsa_utils.Core.Location.range ->
MopsaLib.expr
val mk_object_hasattr :
?esynthetic:bool ->
(MopsaLib.addr * MopsaLib.expr option) ->
string ->
Mopsa_utils.Core.Location.range ->
MopsaLib.expr
val mk_addr_hasattr :
?esynthetic:bool ->
Framework.Core.Ast.Addr.addr ->
string ->
Mopsa_utils.Core.Location.range ->
MopsaLib.expr
val mk_try_stopiteration :
?ssynthetic:bool ->
MopsaLib.stmt ->
MopsaLib.stmt ->
Mopsa_utils.Core.Location.range ->
MopsaLib.stmt
Creates a block try: `body` except StopIteration: `except`
This statement will be created with the provided `range`
val check_instances :
?arguments_after_check:int ->
string ->
('a, 'b) MopsaLib.man ->
'a Core.Flow.flow ->
Mopsa_utils.Core.Location.range ->
Framework.Core.Ast.Expr.expr list ->
string list ->
(MopsaLib.expr list ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Core.Cases.cases) ->
('a, Framework.Core.Ast.Expr.expr) Mopsa_analyzer.MopsaLib.Cases.cases
val check_instances_disj :
?arguments_after_check:int ->
string ->
('a, 'b) MopsaLib.man ->
'a Core.Flow.flow ->
Mopsa_utils.Core.Location.range ->
Framework.Core.Ast.Expr.expr list ->
string list list ->
(MopsaLib.expr list ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Core.Cases.cases) ->
('a, Framework.Core.Ast.Expr.expr) Mopsa_analyzer.MopsaLib.Cases.cases
val strip_object : MopsaLib.expr -> MopsaLib.expr
val new_wrapper :
('a, 'b) MopsaLib.man ->
Mopsa_utils.Core.Location.range ->
'a Core.Flow.flow ->
string ->
Framework.Core.Ast.Expr.expr ->
fthennew:
('a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Core.Cases.cases) ->
('a, Framework.Core.Ast.Expr.expr) Mopsa_analyzer.MopsaLib.Cases.cases option
val bind_list_args :
?cleaners:bool ->
('b, 'a) Framework.Core.Manager.man ->
MopsaLib.expr list ->
'b Mopsa_analyzer.MopsaLib.Flow.flow ->
Mopsa_utils.Core.Location.range ->
(MopsaLib.var list ->
'b MopsaLib.flow ->
('b, 'c) Mopsa_analyzer.MopsaLib.Cases.cases) ->
('b, 'c) Mopsa_analyzer.MopsaLib.Cases.cases
val change_var_type : MopsaLib.typ -> MopsaLib.var -> MopsaLib.var
val change_evar_type : MopsaLib.typ -> MopsaLib.expr -> MopsaLib.expr
val extract_oobject : MopsaLib.expr -> MopsaLib.expr
val get_eobj_itv :
('a, 'b) MopsaLib.man ->
'a Core.Flow.flow ->
MopsaLib.expr ->
Mopsa_analyzer.MopsaLib.ItvUtils.IntItv.t Mopsa_utils.Core.Bot.with_bot
val try_eval_expr :
?on_empty:
(MopsaLib.expr ->
string ->
Universal.Strings.Powerset.StringPower.t ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
'a Mopsa_analyzer.MopsaLib.Eval.eval option) ->
on_result:
(MopsaLib.expr -> 'a MopsaLib.flow -> ('a, MopsaLib.expr) MopsaLib.cases) ->
('a, 'b) MopsaLib.man ->
?route:Mopsa_analyzer.MopsaLib.Core.Route.route ->
Framework.Core.Ast.Expr.expr ->
'a MopsaLib.flow ->
('a, MopsaLib.expr) MopsaLib.cases option
val check :
('a, 'b) MopsaLib.man ->
MopsaLib.expr ->
Mopsa_utils.Core.Location.range ->
'a Core.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Core.Cases.cases
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>