package mopsa

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

Parameters

Signature

module Interface : sig ... end
type t = Toplevel.t
val debug : ('a, Stdlib.Format.formatter, unit, unit) Stdlib.format4 -> 'a

Actions on the abstract domain

**********************************

type xaction =
  1. | Action : 'a return_action -> xaction
val action_range : 'a. 'a return_action -> Mopsa_utils.Location.range

Get the program location related to an action

val interface_action : 'a return_action -> Action.action

Interaction detection

*************************

val is_new_loc_action : 'a. Interface.state -> 'a return_action -> bool
val is_range_breakpoint : unit -> bool
val is_function_breakpoint : unit -> bool

Test if there is a breakpoint at a given function

val is_named_breakpoint : string -> bool
val is_alarm_breakpoint_active : unit -> bool
val is_interaction_point : Interface.state -> 'a return_action -> bool
val get_new_alarms : 'a return_action -> 'a -> Core.All.AlarmSet.t

Environment database

val envdb : t Envdb.envdb Stdlib.ref

Interactive engine

**********************

val apply_action : 'a. 'a return_action -> t Core.All.flow -> 'a

Apply an action on a flow and return its result

val interact : 'a. 'a return_action -> t Core.All.flow -> 'a

Wait for user input and process it

val interact_or_apply_action : 'a. 'a return_action -> Mopsa_utils.Location.range -> t Core.All.flow -> 'a

Interact with the user input or apply the action

Engine functions

********************

val subset : Toplevel.t Core.All.ctx -> Toplevel.t -> Toplevel.t -> bool
val eval : ?route:Core.Route.route -> ?translate:Ast.Semantic.semantic -> ?translate_when:(Ast.Semantic.semantic * (Ast.Expr.expr -> bool)) list -> Ast.Expr.expr -> t Core.Flow.flow -> t Core.Eval.eval
OCaml

Innovation. Community. Security.