package mopsa

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

Domain header

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

include sig ... end
val id : unit Core__Id.id
val name : string
val debug : ('a, Stdlib.Format.formatter, unit, unit) Stdlib.format4 -> 'a
val checks : 'a list

Cache of last fixpoint

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

module LoopHeadMap : sig ... end

Fixpoints are attached to the callstack and the location of the loop head

module LastFixpointCtx : sig ... end

Cache of the last fixpoints at loop heads

val search_last_fixpoint : (Mopsa.range * Mopsa.callstack) -> ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> 'a Mopsa.Flow.flow option

Search the last fixpoint attached to a loop

val store_fixpoint : ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> (Mopsa.range * Mopsa.callstack) -> 'a Mopsa.Flow.flow

Update the last fixpoint attached to a loop

val join_w_old_lfp : ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> (Mopsa.range * Mopsa.callstack) -> 'a Mopsa.Flow.flow option
val merge_cur_and_continue : ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> 'a Mopsa.Flow.flow

Merge tokens T_cur and T_continue into T_cur

val init : 'a -> 'b -> 'c Mopsa.Flow.flow -> 'c Mopsa.Flow.flow
val decr_iteration : Ast.Expr.expr -> Ast.Stmt.stmt -> ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> 'a Mopsa.Flow.flow -> ('a, unit) Core.Cases.cases
val lfp : int -> int -> Ast.Expr.expr -> Mopsa.stmt -> ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> 'a Mopsa.Flow.flow -> ('a, unit) Core.Cases.cases
val unroll : int option -> Ast.Expr.expr -> Mopsa.stmt -> ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> ('a, bool * 'a Mopsa.Flow.flow) Mopsa.Cases.cases
val exec : Mopsa.stmt -> ('a, 'b) Mopsa.man -> 'a Mopsa.Flow.flow -> ('a, unit) Mopsa.Cases.cases option
val eval : 'a -> 'b -> 'c -> 'd option
val ask : 'a -> 'b -> 'c -> 'd option
val print_expr : 'a -> 'b -> 'c -> 'd -> unit
OCaml

Innovation. Community. Security.