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
21
docs/language/structure/kw-component.md
Normal file
21
docs/language/structure/kw-component.md
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
---
|
||||
id: kw-component
|
||||
name: component
|
||||
category: structure
|
||||
kind: keyword
|
||||
tokens: component
|
||||
sig: component Name[(states)] { prop p: T = v, state s: T = v, function ..., on e(...) { } }
|
||||
tip: A UI component: its props, state, functions and events, beside Name.xml and Name.lss.
|
||||
order: 70
|
||||
---
|
||||
|
||||
A <code>component</code> is a piece of interface: the code file declares its <code>prop</code>s (handed in by its parent), its own <code>state</code>, the functions its template calls and the events it handles with <code>on</code>; <code>Name.xml</code> beside it is its template and <code>Name.lss</code> its styles. The states named in its header are supplied by the runtime and never seen by the template.
|
||||
|
||||
```ludic
|
||||
# doc-check: skip — a component needs its template beside it
|
||||
component Counter {
|
||||
prop step: int = 1
|
||||
state count: int = 0
|
||||
on add() { count = count + step }
|
||||
}
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue