Versions in this module Expand all Collapse all v0 v0.0.2 Apr 15, 2024 Changes in this version + const DevNullFilePath + const DevStderrFilePath + const DevStdinFilePath + const DevStdoutFilePath + func Args(argList ArgContainer) []string + func CacheDirPath(envContainer EnvContainer) (string, error) + func ConfigDirPath(envContainer EnvContainer) (string, error) + func DataDirPath(envContainer EnvContainer) (string, error) + func EnvBool(container EnvContainer, key string, defaultValue bool) (bool, error) + func Environ(envContainer EnvContainer) []string + func EnvironMap(envContainer EnvContainer) map[string]string + func GetExitCode(err error) int + func HomeDirPath(envContainer EnvContainer) (string, error) + func IsDevNull(path string) bool + func IsDevPath(path string) bool + func IsDevStderr(path string) bool + func IsDevStdin(path string) bool + func IsDevStdout(path string) bool + func Main(ctx context.Context, f func(context.Context, Container) error) + func NewError(exitCode int, message string) error + func NewErrorf(exitCode int, format string, args ...interface{}) error + func Run(ctx context.Context, container Container, ...) error + type ArgContainer interface + Arg func(i int) string + NumArgs func() int + func NewArgContainer(args ...string) ArgContainer + func NewArgContainerForOS() ArgContainer + type Container interface + func NewContainer(env map[string]string, stdin io.Reader, stdout io.Writer, stderr io.Writer, ...) Container + func NewContainerForArgs(container Container, newArgs ...string) Container + func NewContainerForOS() (Container, error) + type EnvContainer interface + Env func(key string) string + ForEachEnv func(func(string, string)) + func NewEnvContainer(m map[string]string) EnvContainer + func NewEnvContainerForOS() (EnvContainer, error) + func NewEnvContainerWithOverrides(envContainer EnvContainer, overrides map[string]string) EnvContainer + type EnvStderrContainer interface + type EnvStdinContainer interface + type EnvStdioContainer interface + type EnvStdoutContainer interface + type StderrContainer interface + Stderr func() io.Writer + func NewStderrContainer(writer io.Writer) StderrContainer + func NewStderrContainerForOS() StderrContainer + type StdinContainer interface + Stdin func() io.Reader + func NewStdinContainer(reader io.Reader) StdinContainer + func NewStdinContainerForOS() StdinContainer + type StdioContainer interface + type StdoutContainer interface + Stdout func() io.Writer + func NewStdoutContainer(writer io.Writer) StdoutContainer + func NewStdoutContainerForOS() StdoutContainer