go generate
is only useful if you have tools to use it with! Here is an incomplete list of useful tools that generate code.
- go tool yacc – Yacc for Go.
- stringer – Implements
fmt.Stringer
interface for enums. - gostringer – Implements
fmt.GoStringer
interface for enums. - jsonenums – Implements
json.Marshaler
and json.Unmarshaler
interfaces for enums. - gen-mocks – Generate mocks for interfaces. Used in go-sourcegraph.
- gojson - Generates go struct definitions from example json documents.
- vfsgen - Generates a vfsdata.go file that statically implements the given virtual filesystem.