(name string, dst map[string]string)
| 246 | } |
| 247 | |
| 248 | func (o *Loader) readFile(name string, dst map[string]string) error { |
| 249 | f, err := o.sys.Open(name) |
| 250 | if err != nil { |
| 251 | return fmt.Errorf("ReadFile: %w", err) |
| 252 | } |
| 253 | defer f.Close() |
| 254 | |
| 255 | switch filepath.Ext(name) { |
| 256 | case ".json": |
| 257 | return o.readJSON(f, dst) |
| 258 | default: |
| 259 | return o.readDotenv(f, dst) |
| 260 | } |
| 261 | } |
| 262 | |
| 263 | func (o *Loader) readJSON(r io.Reader, dst map[string]string) error { |
| 264 | data, err := io.ReadAll(r) |