package bap-std
The Binary Analysis Platform Standard Library
Install
Dune Dependency
Authors
Maintainers
Sources
v2.2.0.tar.gz
sha256=7c6d0dfe2640e800829617dd150ffe748493fe3f317ed41be44312b2821deb46
md5=5dbc6677d646bec59fd7414f23e88cf8
doc/bap/Bap/Std/Bili/index.html
Module Std.Bili
BIL Interpreter.
bili
extends expi
with methods for evaluating BIL statements, thus allowing one to interpret BIL AST. To interpret BIL in the intermediate representation use biri.
Also, if you don't need to change the default behavior of the interpreter, then you may use Stmt.eval
that exposes an easier interface for BIL evaluation. For example,
let x = Var.create "x" bool_t;; val x : var = x let ctxt = Stmt.eval [Bil.(x := int Word.b0)] (new Bili.context);; val ctxt : Bili.context = <obj> ctxt#bindings |> Seq.to_list;; - : (var * Bil.result) list = [(x, [0x1] false)]
class context : object ... end
Bili.context
extends Expi.context
with PC (Program Counter).
module type S = sig ... end
include S with type ('a, 'e) state = ('a, 'e) Monads.Std.Monad.State.t
type ('a, 'e) state = ('a, 'e) Monads.Std.Monad.State.t
type 'a u = (unit, 'a) state
type 'a r = (Bil.result, 'a) state
class 'a t : object ... end
Base class for BIL interpreters
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>