cleanupGeneratedFiles removes generated files to allow regeneration
(opts *GeneratorOptions)
| 379 | |
| 380 | // cleanupGeneratedFiles removes generated files to allow regeneration |
| 381 | func cleanupGeneratedFiles(opts *GeneratorOptions) error { |
| 382 | if opts.SourceFile != "" { |
| 383 | // File-based mode: remove filename_fory_gen.go |
| 384 | base := strings.TrimSuffix(filepath.Base(opts.SourceFile), ".go") |
| 385 | genFile := filepath.Join(filepath.Dir(opts.SourceFile), fmt.Sprintf("%s_fory_gen.go", base)) |
| 386 | |
| 387 | if _, err := os.Stat(genFile); err == nil { |
| 388 | logger.Printf("Removing generated file: %s", genFile) |
| 389 | return os.Remove(genFile) |
| 390 | } |
| 391 | } else { |
| 392 | // Package-based mode: need to load package to find generated file |
| 393 | // This is more complex and might need package analysis |
| 394 | logger.Printf("Package-based cleanup not yet implemented") |
| 395 | } |
| 396 | |
| 397 | return nil |
| 398 | } |
| 399 | |
| 400 | // generateStructSerializer generates a complete serializer for a struct |
| 401 | func generateStructSerializer(buf *bytes.Buffer, s *StructInfo) error { |