ludic/docs/language/annotations/annot-appendonly.md
Orkuncakilkaya e2528c1b10 docs/language: a page for every keyword and attribute the vocabulary has
Keywords: module uses friend export internal numbers unsafe mut port bind action
reducer registry of as from def open alias component prop view (structure),
shows lasts then loads (scenes), system (ecs), dispatch (control), true false
null (operators). Attributes: @Ref @OneOf @Range @Unit @Asset @Color, @Node /
@Clip / @Material, @Tint @Derived, @Text / @Multiline, @Key, @AppendOnly /
@ByKey, @PerMap / @Chunked, @frame @max, @owns / @creates / @releases,
@deterministic @alloc_ok. Each is in tools/docgen/inventory.json; every fence
that is not marked skip parses (ludicc --fmt). annot-clearcolor's token loses its
quotes, which no reader strips.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 23:59:47 +03:00

18 lines
668 B
Markdown

---
id: annot-appendonly
name: @AppendOnly
category: annotations
kind: annotation
tokens: @AppendOnly @ByKey
sig: @AppendOnly @ByKey registry Name of Record ...
tip: How a registry's entries may change: only appended (their index is saved), or saved by key.
order: 74
---
<code>@AppendOnly</code> on a registry says an entry's index is stored somewhere that outlives the build, so entries are only ever appended; <code>@ByKey</code> says entries are saved by key, so their order is free. Editors keep to what each says.
```ludic
# doc-check: skip — the file it names is beside the example
@AppendOnly @ByKey
registry Tools of Tool as TL from "data/tools.lres"
```