package core_kernel

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

A weak pointer is a pointer to a heap block that does not cause the heap block to remain live during garbage collection.

If the block would otherwise remain live, then the weak pointer remains pointed to the block. If the block is collected, then the weak pointer is cleared.

type 'a t
val sexp_of_t : ('a -> Sexplib0.Sexp.t) -> 'a t -> Sexplib0.Sexp.t
val create : unit -> _ t

create creates an empty weak pointer. One must set it to point it to something.

val get : 'a t -> 'a Core.Heap_block.t option
val is_some : _ t -> bool

is_some t = Option.is_some (get t).

val is_none : _ t -> bool

is_none t = Option.is_none (get t).

val set : 'a t -> 'a Core.Heap_block.t -> unit