HINWEIS: k8s.io/gengo/v2
ist das aktuelle Entwicklungsmodul.
Ein Paket zum Generieren von Dingen basierend auf Go-Dateien. Dieser Mechanismus wurde erstmals im Kubernetes-Codegenerator verwendet und wird hier zur einfacheren Wiederverwendung und Wartbarkeit aufgeteilt.
go get k8s.io/gengo/...
Hier sind ein Set-Generator, ein Deep-Copy-Generator, ein Defaulter-Generator und ein Go-to-Protobuf-Generator enthalten. Außerdem erzwingt import-boss willkürliche Regeln für Importbäume.
Paketargumente definieren allgemeine Argumente für eine Generatorbinärdatei.
Der Paketgenerator definiert Schnittstellen für die Implementierung von Codegeneratoren und Maschinen, die diese Codegeneratoren ausführen.
Pakettypen enthalten die Typsystemdefinition. Es ist dem Typsystem von Go nachempfunden, aber es ist beabsichtigt, dass Sie diese Typen durch Parsen von etwas anderem erzeugen können, wenn Sie den Parser/Konverter schreiben möchten.
Wir verwenden die Go-Typen in der Go-Typecheck-Bibliothek nicht direkt, da sie auf der Implementierung unterschiedlicher Schnittstellen basieren. Ein strukturbasiertes Format ist eine bequemere Eingabe für die vorlagengesteuerte Ausgabe.
Der Paketparser analysiert Go-Quelldateien.
Der Paketname definiert ein Benennungssystem für:
Anweisungen zum Mitwirken finden Sie unter CONTRIBUTING.md.