Retains composed syntax and semantic presentation by source revision.
Preparation visits each displayed buffer once, independent of its span count on a cache hit. Raw frame sources remain immutable. Hidden buffers retain their composition until their sources are removed; frontend acknowledgement and reset do not affect this derived state.
Summary
Functions
Composes only displayed buffers whose source revisions changed.
Discards outdated compositions without evaluating their replacement.
Types
@type highlights() :: %{required(pid()) => MingaEditor.UI.Highlight.t() | nil}
@type t() :: %MingaEditor.Renderer.HighlightCache{ entries: %{required(pid()) => entry()} }
Functions
@spec new() :: t()
@spec prepare(t(), MingaEditor.RenderPipeline.Intent.t()) :: {t(), highlights()}
Composes only displayed buffers whose source revisions changed.
@spec retain(t(), MingaEditor.RenderPipeline.Intent.t()) :: t()
Discards outdated compositions without evaluating their replacement.