@@ -52,6 +52,10 @@ func main() {
5252 Name : "verbose" ,
5353 Usage : "Verbose output" ,
5454 },
55+ & cli.BoolFlag {
56+ Name : "verbose-logs" ,
57+ Usage : "Generate verbose logging statements in code (for debugging)" ,
58+ },
5559 },
5660 Action : runGenerate ,
5761 },
@@ -77,7 +81,10 @@ func main() {
7781}
7882
7983func generateHelpersFile (root string ) error {
80- helpersContent := `// Code generated by guix. DO NOT EDIT.
84+ helpersContent := `//go:build js && wasm
85+ // +build js,wasm
86+
87+ // Code generated by guix. DO NOT EDIT.
8188
8289package main
8390
@@ -115,6 +122,7 @@ func runGenerate(c *cli.Context) error {
115122 watchMode := c .Bool ("watch" )
116123 lazy := c .Bool ("lazy" )
117124 verbose := c .Bool ("verbose" )
125+ verboseLogs := c .Bool ("verbose-logs" )
118126
119127 // Load or create cache
120128 var genCache * cache.Cache
@@ -127,13 +135,15 @@ func runGenerate(c *cli.Context) error {
127135 }
128136 }
129137
130- // Generate helpers file first
131- if err := generateHelpersFile (path ); err != nil {
132- return fmt .Errorf ("failed to generate helpers: %w" , err )
138+ // Generate helpers file first (only if verbose logs are enabled)
139+ if verboseLogs {
140+ if err := generateHelpersFile (path ); err != nil {
141+ return fmt .Errorf ("failed to generate helpers: %w" , err )
142+ }
133143 }
134144
135145 // Generate all files initially
136- if err := generateAll (path , genCache , verbose ); err != nil {
146+ if err := generateAll (path , genCache , verbose , verboseLogs ); err != nil {
137147 return err
138148 }
139149
@@ -146,13 +156,13 @@ func runGenerate(c *cli.Context) error {
146156
147157 // Watch mode
148158 if watchMode {
149- return watchFiles (path , genCache , verbose , lazy )
159+ return watchFiles (path , genCache , verbose , verboseLogs , lazy )
150160 }
151161
152162 return nil
153163}
154164
155- func generateAll (root string , genCache * cache.Cache , verbose bool ) error {
165+ func generateAll (root string , genCache * cache.Cache , verbose bool , verboseLogs bool ) error {
156166 p , err := parser .New ()
157167 if err != nil {
158168 return fmt .Errorf ("failed to create parser: %w" , err )
@@ -191,7 +201,7 @@ func generateAll(root string, genCache *cache.Cache, verbose bool) error {
191201 }
192202 }
193203
194- if err := generateFile (path , p , verbose ); err != nil {
204+ if err := generateFile (path , p , verbose , verboseLogs ); err != nil {
195205 return fmt .Errorf ("failed to generate %s: %w" , path , err )
196206 }
197207
@@ -231,7 +241,7 @@ func formatFile(path string) error {
231241 return nil
232242}
233243
234- func generateFile (srcPath string , p * parser.Parser , verbose bool ) error {
244+ func generateFile (srcPath string , p * parser.Parser , verbose bool , verboseLogs bool ) error {
235245 if verbose {
236246 log .Printf ("Generating %s" , srcPath )
237247 }
@@ -255,6 +265,7 @@ func generateFile(srcPath string, p *parser.Parser, verbose bool) error {
255265
256266 // Generate Go code
257267 gen := codegen .New (file .Package )
268+ gen .SetVerbose (verboseLogs )
258269 output , err := gen .Generate (file )
259270 if err != nil {
260271 return err
@@ -278,7 +289,7 @@ func generateFile(srcPath string, p *parser.Parser, verbose bool) error {
278289 return nil
279290}
280291
281- func watchFiles (root string , genCache * cache.Cache , verbose bool , lazy bool ) error {
292+ func watchFiles (root string , genCache * cache.Cache , verbose bool , verboseLogs bool , lazy bool ) error {
282293 watcher , err := fsnotify .NewWatcher ()
283294 if err != nil {
284295 return fmt .Errorf ("failed to create watcher: %w" , err )
@@ -346,7 +357,7 @@ func watchFiles(root string, genCache *cache.Cache, verbose bool, lazy bool) err
346357
347358 log .Printf ("File changed: %s" , event .Name )
348359
349- if err := generateFile (event .Name , p , verbose ); err != nil {
360+ if err := generateFile (event .Name , p , verbose , verboseLogs ); err != nil {
350361 log .Printf ("Error generating %s: %v" , event .Name , err )
351362 } else {
352363 log .Printf ("Successfully regenerated %s" , event .Name )
0 commit comments