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>
This commit is contained in:
parent
eb2d6106af
commit
e2528c1b10
49 changed files with 746 additions and 7 deletions
20
docs/language/structure/kw-view.md
Normal file
20
docs/language/structure/kw-view.md
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
id: kw-view
|
||||
name: view
|
||||
category: structure
|
||||
kind: keyword
|
||||
tokens: view
|
||||
sig: view Name[(states)] { field = expr, function q(...), on e(...) { } }
|
||||
tip: The bridge to a template: what it may read and what it may do.
|
||||
order: 72
|
||||
---
|
||||
|
||||
A <code>view</code> says what a template may read (its fields, each an expression) and what it may do (its queries and its <code>on</code> events), and nothing else crosses. The compiler writes <code>view_name()</code>, whose model is a value object of every field and whose call runs a query or an event by name.
|
||||
|
||||
```ludic
|
||||
# doc-check: skip — the functions it names are elsewhere
|
||||
view Yard {
|
||||
spots: int = yard_spots()
|
||||
on buy(hf: int) { yard_buy(hf) }
|
||||
}
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue