package granary

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

Module Join.MakeSource

Make (S) builds an incremental equi-join operator for spec S.

Parameters

module S : SPEC

Signature

Sourcetype t

A stateful join operator: the integrated left/right inputs plus the materialized output.

Sourceval create : unit -> t

A fresh operator with empty inputs and output.

Sourceval step : t -> left:S.Left.t -> right:S.Right.t -> S.Out.t

step t ~left ~right integrates the input deltas left and right (pass Zset.S.zero for a side with no change) and returns the resulting output delta, also folding it into output.

Sourceval output : t -> S.Out.t

The current materialized join of everything integrated so far.