package bap-std

  1. Overview
  2. Docs
The Binary Analysis Platform Standard Library

Install

Dune Dependency

Authors

Maintainers

Sources

v2.4.0.tar.gz
sha256=63ada71fa4f602bd679174dc6bf780d54aeded40ad4ec20d256df15886e3d2d5
md5=b8b1aff8c6846f2213eafc54de07b304

doc/bap/Bap/Std/Interval_tree/index.html

Module Std.Interval_tree

Balanced Interval Tree.

Interval trees are used to build efficient mappings from intervals to arbitrary data.

The interval tree may contain overlapping intervals and allows inserting and removing elements.

The interval tree is implemented using AVL trees.

  • since 1.4

Abstract Interval.

Abstractly an interval is a pair of points, with one point being the lower bound and another is the upper bound. The upper bound shall be greater or equal than the lower bound, i.e., compare (lower x) (upper x) <= 0 for all intervals x.

The interval x represents a set of points that are greater or equal than the lower x and less than or equal than upper x. (Thus, empty intervals are not representable).

module type Interval = sig ... end
module type S = sig ... end

The Interval Tree Interface.

module Make (Interval : Interval) : S with type key := Interval.t and type point := Interval.point

Make(Interval) create an abstract interval tree data type that uses abstract Interval.

module type Interval_binable = sig ... end

Binable Abstract Interval.

module type S_binable = sig ... end

Binable Interval Tree.

Make_binable(Interval) create an abstract interval tree data type that uses abstract Interval and can be serialized via the Binable interface.

OCaml

Innovation. Community. Security.