package colibri2

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

Context and backtrack point management

type context

A context, with an history of backtrack point

type creator

Same than context, but only used for creating datastructure

val creator : context -> creator
type bp

A backtrack point associated to a context

val create : unit -> context

Create a new context, with a base backtrack point. It is not possible to go below this backtrack point.

val bp : context -> bp

Get the current backtrack point

val push : context -> unit

Push a new backtrack point

exception AlreadyPoped
val pop : bp -> unit

Pop the context associated to this backtrack point to this backtrack point. All the backtrack point created since the given backtrack point are also poped.

raise AlreadyPoped if it already has been poped.

module Ref : sig ... end
module Ref2 : sig ... end
type 'a history

history of the values

module Make (S : sig ... end) : sig ... end
module Basic (S : sig ... end) : sig ... end
module Expert : sig ... end
module Push : sig ... end
module Queue : sig ... end

The saving is equal to the current size of the datastructure. Should be used when usually it is empty at backtrack point

module Array : sig ... end
module type Hashtbl = sig ... end
module type HashtblWithDefault = sig ... end
module type Memo = sig ... end

Clicket

The added element are given back after each pop

module type Clicket = sig ... end
module Clicket : Clicket
type 'k fold = {
  1. fold : 'a. ('a -> 'k -> 'a) -> 'a -> 'a;
}
module type Trie = sig ... end
module Trie (S : Colibri2_popop_lib.Popop_stdlib.Datatype) : Trie with type key := S.t and type Set.set := S.S.t
OCaml

Innovation. Community. Security.