Ein Suffix wie _GENERATED
hinzugefügt, um den Dateinamen enthält keine Informationen, bis die Datei generiert wird, da der Compiler Ihnen nur "nicht zusammenhängende" Fehler wie "undefined: xxx"
(der Compiler wird nicht raten, wenn der Bezeichner würde existiert, wäre es in version_GENERATED.go
). Der stringer
Generator erzeugt Dateien mit dem Namen type_string.go
, wobei der Typ durch den Namen des Typs ersetzt wird, für den er generiert wird.
Also ich denke, einfach die general guidelines für Dateinamen zu folgen ist genug, außer vielleicht _gen
oder _generated
Suffix verwenden. Oder wenn Ihr Werkzeug öffentlich ist und von anderen verwendet wird, dann verwenden Sie den Namen des Werkzeugs als Suffix (wie zB stringer
).
Wenn Sie den Benutzer tun wollen eine gesprächig Fehlermeldung zu erhalten, falls Ihr Generator noch ausgeführt werden soll, kann Ihr Generator eine exportierte Konstante, deren erzeugen Name gesprächig ist, wenn in einer Fehlermeldung enthalten, wie:
const MustRunStringerGenerator = 0
Und in Ihrem Programm finden Sie es mögen:
var _ = MustRunStringerGenerator // Test if stringer has been run
Wenn stringer
noch nicht ausgeführt wurde, wird eine Fehlermeldung angezeigt:
undefined: MustRunStringerGenerator