package batteries

  1. Overview
  2. Docs
On This Page
  1. Printing
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module BatUrefSource

Unifiable references using destructive union-find

Sourcetype 'a uref

A t uref is a reference to a cell that contains a value of type t.

Sourcetype 'a t = 'a uref

A synonym for convenience

Sourceval uref : 'a -> 'a uref

uref x allocates a new uref and places the value x in it.

Sourceval uget : 'a uref -> 'a

uget ur returns the value stored in the uref ur.

Sourceval uset : 'a uref -> 'a -> unit

uset ur x updates the contents of ur with x.

Sourceval unite : ?sel:('a -> 'a -> 'a) -> 'a uref -> 'a uref -> unit

unite ~sel ur1 ur2 unites the urefs ur1 and ur2, selecting the result of sel (uget ur1) (uget ur2) for the contents of the resulting united uref. After this operation, uget ur1 == uget ur2. By default, sel is fun x _y -> x.

Sourceval equal : 'a uref -> 'a uref -> bool

equal ur1 ur2 returns true iff ur1 and ur2 are equal urefs, either because they are physically the same or because they have been united.

Printing

Sourceval print : ('a, 'b) BatIO.printer -> ('a uref, 'b) BatIO.printer

Print the uref.

OCaml

Innovation. Community. Security.