123456789101112package generator type Feature interface { Type() string Emit() (File, error)} type File struct { Path string Content []byte}