blob: b1c0e1e1c0263f3c2355bad04ed21c84470a51c6 [file] [log] [blame]
package internal
import (
"os"
"path/filepath"
)
// FilePath returns the path to the specified file. If the file is not found
// in the current directory, it will return a relative path for the prefix
// that the file exists at.
func FilePath(base string, prefixes ...string) string {
// First, attempt to find the file with no prefix.
prefixes = append([]string{""}, prefixes...)
for _, p := range prefixes {
if _, err := os.Stat(filepath.Join(p, base)); err == nil {
return filepath.Join(p, base)
}
}
return base
}