Guidedog Handbuch 0.2.0
Sprache
Auf dieser Seite
Guidedog / Dokumentation 0.2.0

Die Guidedoc-Engine

Guidedoc ist der Konvertierungskern. Er leiht Speicher vom Aufrufer, liest eine Quelle, baut einen semantischen Baum, führt Pässe aus, misst die Ausgabe und erzeugt Bytes. Er öffnet keine Dateien und veröffentlicht keine Artefakte.

Die CLI ruft den Projekthost auf, der dem Konvertierungskern festen Speicher bereitstellt.
Abb. 4 Für externe Wirkungen ist der Host zuständig; für die Dokumentsemantik Guidedoc.

Die Grenze

Die Kernkonvertierung allokiert nicht. Der Aufrufer stellt Knotenspalten, Textspeicher, Diagnosen und Ausgabekapazität bereit. Der Host darf zur Vorbereitung Speicher allokieren. Fremde Compiler haben eigene Regeln. Die Garantie betrifft die Konvertierungsgrenze, nicht den gesamten Prozess.

Der Baum

Knoten besitzen typisierte IDs. Häufig genutzte Spalten enthalten Art und Teilbaumbereich; seltener genutzte Tabellen die jeweiligen Nutzdaten. Die flache Präorderdarstellung erlaubt Teilbaumsprünge ohne eine Kette von Heap-Zeigern.

Für Knoten \(i\) sei \(e_i\) das exklusive Teilbaumende. Der Teilbaum belegt \([i,e_i)\). Für ein Blatt gilt \(e_i=i+1\); ein Elternknoten endet nach seinen Nachfahren. Den Intervallbeweis enthält Invarianten vor Algorithmen.

Die API

Die Kern-API ist explizit: Speicher initialisieren, konvertieren, Ergebnis prüfen, zurücksetzen. Registries sind Werte mit Reader-, Pass- und Renderer-Beschreibungen. Es gibt weder Laufzeit-Plug-insuche noch globale Registrierungsnebenwirkungen. Die wenigen Verben erleichtern die Nutzung aus anderen Odin-Programmen.

Eigentümerschaft ist die zentrale Regel. Workspace-Ansichten verfallen beim Zurücksetzen oder Wiederverwenden. Ein vom Host gehaltenes Ergebnis muss langlebigeren Text besitzen. Die genauen Signaturen in core stammen aus demselben Odin-Code wie docs/api. Das Handbuch-PDF enthält sie mit internen Links. Die Designaufzeichnung ist GDS 0003 in docs/gds.