StatifierUI.EventLog.Macrostep (StatifierUI v0.1.0)

Copy Markdown View Source

One macrostep's worth of an StatifierUI.EventLog.t(): its rounds, its round-less effect.* messages, and two summaries derived from its rounds rather than carried on any single message.

configuration is the configuration of the last round (by round order) that carried a trace.macrostep_stable - statifier ADR-0044's rule that the last-arriving trace.macrostep_stable in a macrostep is that macrostep's quiescence, since a stream may carry more than one. event is the first round's dequeued event, nil for the initialize burst, which lets a collapsed macrostep be summarized by what triggered it without inspecting every round.

Summary

Functions

Builds a macrostep from its already-ordered rounds and its already-sorted round-less effects, deriving configuration and event from rounds.

Types

t()

@type t() :: %StatifierUI.EventLog.Macrostep{
  configuration: [non_neg_integer()] | nil,
  effects: [StatifierUI.Trace.Message.t()],
  event: map() | nil,
  macrostep: non_neg_integer(),
  rounds: [StatifierUI.EventLog.Round.t()]
}

Functions

new(macrostep, rounds, effects)

Builds a macrostep from its already-ordered rounds and its already-sorted round-less effects, deriving configuration and event from rounds.