Delphi concept

This commit is contained in:
Olaf Monien
2026-02-10 23:55:42 +01:00
parent adaff67219
commit 645fd71e45
12 changed files with 529 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
# CodeGraph Pascal/Delphi Support (Fork-Konzept)
Dieses ZIP ist **kein fertiger CodeGraph-Fork**, sondern ein **umsetzbarer Bauplan** inklusive Query-Skizzen, Scaffold-Dateistruktur, Test-Fixtures und einer Checkliste.
Ziel: CodeGraph soll **Pascal/Delphi**-Dateien indexieren und daraus **Nodes** (Units, Klassen, Methoden, …) sowie **Edges** (uses/imports, calls, extends, implements, …) extrahieren.
## Inhalt
- `Docs/` Konzept, Capture-Konventionen, Implementations-Schritte
- `Scaffold/` vorgeschlagene Ordner/Dateien für `src/languages/pascal/` inkl. `.scm` Queries
- `fixtures/` kleine Delphi-Beispieldateien zum Testen der Extraktion
- `resolution/` Resolver-Heuristiken (Unit-Mapping, Call-Resolution)
## Wie du damit arbeitest
1. **Im CodeGraph-Repo** die bestehende Struktur für eine Sprache ansehen (z.B. `src/languages/go` oder `src/languages/java`).
2. Dieses ZIP als Vorlage nehmen und **1:1** in deinen Fork übertragen:
- `src/languages/pascal/**`
- Extension-Mapping (`.pas`, `.dpr`, `.dpk`, `.lpr`, optional `.inc`)
- Language-Registry erweitern
3. Queries (`.scm`) auf die **Capture-Namen** mappen, die CodeGraph intern erwartet.
4. Resolver erweitern (mindestens `uses` → Unit-File, einfache Call-Auflösung).
5. Fixtures in die Tests aufnehmen.
> Hinweis: Tree-sitter ist die Grundlage. Für Pascal/Delphi bietet sich `tree-sitter-pascal` an (Delphi + FreePascal).