package binsec

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type t = Dba.Expr.t
include Sigs.PRINTABLE with type t := t
val pp : Format.formatter -> t -> unit
val var : string -> Size.Bit.t -> Dba.VarTag.t -> t

Constructors

val flag : ?bits:Size.Bit.t -> string -> t

flag ~bits flagname constructs a variable named flagname tagged as a flag. bits defaults to Size.Bit.bits1.

val temporary : string -> Size.Bit.t -> t

temporary name nbits constructs a variable named name of size nbits flagged as a temporary

val sext : t -> Size.Bit.t -> t
val uext : t -> Size.Bit.t -> t
val bool_false : t
val bool_true : t

Encoding of booleans as DBA expressions

val temp : Size.Bit.t -> t

temp n creates an expression representing a temporary of size n with name Format.sprintf "temp%d" n.

val of_lvalue : Dba.LValue.t -> t

Operations

val is_symbolic : t -> bool

Predicates

val is_zero : t -> bool

is_zero e is true if e's value is equal to 0 whatever its length is

val is_one : t -> bool

is_one e is true if e's value is equal to 1 whatever its length is

val is_max : t -> bool

is_max e is true if e is a constant representing the maximum value for ** its size