Refactor types #49

Closed
opened 2026-09-12 15:04:00 +02:00 by admin · 0 comments

Eine Refactoring-Runde speziell für Typen:

Typen (ob jetzt "String" oder "Color" oder "Texture") werden vertreut eingesetzt:
Geh alles durch, und refactore so, dass

  • wenn ein neuer Typ in Zukunft irgendwann hinzugefügt wird
  • oder ein Typ geändert wird
  • oder wieder wegkommt
    dass es nicht ewig viele Stellen beachtet werden müssen.

Reduziere dass auf ein Minimum, wir brauchen das so "modular" wie möglich.

Falls es schon so passt wie es ist, dann braucht man natürlich auch nichts machen, aber ich will nur auf nummer sicher gehen.

Falls dir bei der Arbeit noch andere Dinge auffallen die man besser/konstruktiver/schöner bauen kann, dann kannst du das natürlich gleich mitnehmen.


Umgesetzt (Umfang "alles", inkl. Literal-Nodes). Jede Wert-Art ist jetzt eine Zeile in
src/core/properties/kinds.ts; die Art-Listen, Menues, Tags, Port-Felder und Literal-Nodes folgen
daraus. Ein Tag ist '$' + kind, also generisch. Eine neue Art ist die Zeile plus – wenn sie etwas
im Projekt benennt – ihr Picker (fieldFactory.REFERENCES, vom Typecheck erzwungen).
Nicht angefasst, weil kein Typ-Thema: die type !== 'exec'-Guards und das Zwillingspaar
Variables.ts/Properties.ts.


Übernommen aus todo-notes/done/refactor-types.md beim Umzug auf das Issue-System (2026-09-12).

  • Angelegt: 2026-09-12 · 8a71859 — Make texture and colour full kinds and drop the load-time migrations
  • Abgeschlossen: 2026-09-12 · 3ed8b68 — Describe every value kind in one table instead of spreading it over the code
  • Gemeldet von: admin
## Eine Refactoring-Runde speziell für Typen: Typen (ob jetzt "String" oder "Color" oder "Texture") werden vertreut eingesetzt: Geh alles durch, und refactore so, dass - wenn ein neuer Typ in Zukunft irgendwann hinzugefügt wird - oder ein Typ geändert wird - oder wieder wegkommt dass es nicht ewig viele Stellen beachtet werden müssen. Reduziere dass auf ein Minimum, wir brauchen das so "modular" wie möglich. Falls es schon so passt wie es ist, dann braucht man natürlich auch nichts machen, aber ich will nur auf nummer sicher gehen. Falls dir bei der Arbeit noch andere Dinge auffallen die man besser/konstruktiver/schöner bauen kann, dann kannst du das natürlich gleich mitnehmen. --- Umgesetzt (Umfang "alles", inkl. Literal-Nodes). Jede Wert-Art ist jetzt eine Zeile in `src/core/properties/kinds.ts`; die Art-Listen, Menues, Tags, Port-Felder und Literal-Nodes folgen daraus. Ein Tag ist `'$' + kind`, also generisch. Eine neue Art ist die Zeile plus – wenn sie etwas im Projekt benennt – ihr Picker (`fieldFactory.REFERENCES`, vom Typecheck erzwungen). Nicht angefasst, weil kein Typ-Thema: die `type !== 'exec'`-Guards und das Zwillingspaar `Variables.ts`/`Properties.ts`. --- *Übernommen aus `todo-notes/done/refactor-types.md` beim Umzug auf das Issue-System (2026-09-12).* - **Angelegt:** 2026-09-12 · `8a71859` — Make texture and colour full kinds and drop the load-time migrations - **Abgeschlossen:** 2026-09-12 · `3ed8b68` — Describe every value kind in one table instead of spreading it over the code - **Gemeldet von:** admin
admin added the todo-note label 2026-09-12 15:04:00 +02:00
admin closed this issue 2026-09-12 15:04:00 +02:00
admin added this to the Development project 2026-09-13 13:43:19 +02:00
admin moved this to Done in Development on 2026-09-13 13:44:09 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: meleki/feuerwerk#49