package mopsa

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Lang.Utils

val debug : ('a, Format.formatter, unit, unit) format4 -> 'a
val partition_list_by_length : int -> 'a list -> 'a list * 'a list
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 strip_object : MopsaLib.expr -> MopsaLib.expr
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
OCaml

Innovation. Community. Security.