# `StatifierUI.EventLog.Round`
[🔗](https://github.com/riddler/statifier-ui/blob/v0.11.0/lib/statifier_ui/event_log/round.ex#L1)

One `(macrostep, round)` bucket of an `StatifierUI.EventLog.t()`.

A round is the timeline key the wire format names
(`docs/wire-format.md:91-94`): the messages an event's dequeue (or, for
the initialize burst and any eventless probe, the absence of one) sets in
motion, up to and including the round's own `trace.macrostep_stable` when
it reached quiescence.

Every field below is populated by folding this round's messages in
`{microstep, seq}` order (`StatifierUI.EventLog.build/1`); nothing here is
computed by inspecting the round's messages a second time, so the struct
and `messages` never disagree about what happened.

# `t`

```elixir
@type t() :: %StatifierUI.EventLog.Round{
  budget_exhausted: map() | nil,
  cause: map() | nil,
  configuration: [non_neg_integer()] | nil,
  content: [%{owner: map(), c_indexes: [non_neg_integer()]}],
  done: map() | nil,
  entered: [non_neg_integer()],
  event: map() | nil,
  eventless?: boolean(),
  exited: [non_neg_integer()],
  from: String.t() | nil,
  macrostep: non_neg_integer(),
  messages: [StatifierUI.Trace.Message.t()],
  round: non_neg_integer(),
  t_indexes: [non_neg_integer()] | nil
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
