package bonsai

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module Incr = Ui_incr
type 'r t
val create : ?initial_model_sexp:Core.Sexp.t -> ?optimize:bool -> clock:Incr.Clock.t -> 'r Bonsai.Computation.t -> 'r t

Builds a new driver for a bonsai component.

The "main loop" of a bonsai handle is 1. flush - dequeue events and process actions 2. result - compute the final value of the computation 3. trigger_lifecycles - run any lifecycle events for this stabilization

val flush : _ t -> unit

Apply all pending actions and stabilize the incremental graph, updating result.

val result : 'r t -> 'r

retreives the computed result of the bonsai application

val trigger_lifecycles : _ t -> unit

Triggers all lifecycle events that need to be run. Lifecycle events are run in this order: 1. componnet deactivations 2. component activations 3. after display, which includes things like on_change

val schedule_event : _ t -> unit Ui_effect.t -> unit

Schedules an event

val has_after_display_events : _ t -> bool

returns true if the lifecycle collection has anything that it wants to do after the display is processed.

module Expert : sig ... end
OCaml

Innovation. Community. Security.