You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: appdirs_darwin.go
    path of file: ./repos/goHackTools/vendor/github.com/Wessie/appdirs
    
    the code of the file until where you have to start completion: package appdirs

import (
	"path/filepath"
)

func userDataDir(name, author, version string, roaming bool) (path strin
    
func userCacheDir(name, author, version string, opinion bool) (path string) {
	path = ExpandUser("~/Library/Caches")

	if name != "" {
		path = filepath.Join(path, name)
	}

	if name != "" && version != "" {
		path = filepath.Join(path, version)
	}
	return path
}