(filename string, generate func(io.Writer) error)
| 201 | } |
| 202 | |
| 203 | func writeFile(filename string, generate func(io.Writer) error) error { |
| 204 | if buildV { |
| 205 | fmt.Fprintf(os.Stderr, "write %s\n", filename) |
| 206 | } |
| 207 | |
| 208 | if err := mkdir(filepath.Dir(filename)); err != nil { |
| 209 | return err |
| 210 | } |
| 211 | |
| 212 | if buildN { |
| 213 | return generate(io.Discard) |
| 214 | } |
| 215 | |
| 216 | f, err := os.Create(filename) |
| 217 | if err != nil { |
| 218 | return err |
| 219 | } |
| 220 | defer func() { |
| 221 | if cerr := f.Close(); err == nil { |
| 222 | err = cerr |
| 223 | } |
| 224 | }() |
| 225 | |
| 226 | return generate(f) |
| 227 | } |
| 228 | |
| 229 | func packagesConfig(t targetInfo) *packages.Config { |
| 230 | config := &packages.Config{} |
no test coverage detected