summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2025-05-15 11:33:42 -0300
committerEuAndreh <eu@euandre.org>2025-05-15 11:37:28 -0300
commit40039d355287b43ccd42c58443bec914c8e57067 (patch)
tree7f57c6b85d9d9e57e6d93410c589d55df9044e37
parentpo/: Remove extra headers from files (diff)
downloaduuid-40039d355287b43ccd42c58443bec914c8e57067.tar.gz
uuid-40039d355287b43ccd42c58443bec914c8e57067.tar.xz
src/uuid.go: Use envT in run()
-rw-r--r--src/uuid.go33
-rw-r--r--tests/uuid.go8
2 files changed, 28 insertions, 13 deletions
diff --git a/src/uuid.go b/src/uuid.go
index c99f20b..bf7b783 100644
--- a/src/uuid.go
+++ b/src/uuid.go
@@ -67,6 +67,13 @@ type argsT struct{
version uint8
}
+type envT struct{
+ args argsT
+ in io.Reader
+ out io.Writer
+ err io.Writer
+}
+
func NewV4From(r io.Reader) (UUID, error) {
@@ -234,20 +241,22 @@ func getopt(allArgs []string, w io.Writer) (argsT, int) {
}, 0
}
-func run(args argsT, _ io.Reader, stdout io.Writer, stderr io.Writer) int {
- switch args.action {
+func run(env envT) int {
+ switch env.args.action {
case actionType_generate:
- if args.version == 4 {
- fmt.Fprintf(stdout, "%v\n", NewV4().String())
- } else if args.version == 7 {
- fmt.Fprintf(stdout, "%v\n", NewV7().String())
+ if env.args.version == 4 {
+ fmt.Fprintf(env.out, "%v\n", NewV4().String())
+ } else if env.args.version == 7 {
+ fmt.Fprintf(env.out, "%v\n", NewV7().String())
}
return 0
case actionType_parse:
- _, err := FromString(strings.TrimSpace(args.subArgs[0]))
+ _, err := FromString(strings.TrimSpace(
+ env.args.subArgs[0],
+ ))
if err != nil {
- fmt.Fprintln(stderr, err)
+ fmt.Fprintln(env.err, err)
return 3
} else {
return 0
@@ -260,9 +269,15 @@ func run(args argsT, _ io.Reader, stdout io.Writer, stderr io.Writer) int {
func Main() {
+ gt.Init(Name, LOCALEDIR)
args, rc := getopt(os.Args, os.Stderr)
if rc != 0 {
os.Exit(rc)
}
- os.Exit(run(args, os.Stdin, os.Stdout, os.Stderr))
+ os.Exit(run(envT{
+ args: args,
+ in: os.Stdin,
+ out: os.Stdout,
+ err: os.Stderr,
+ }))
}
diff --git a/tests/uuid.go b/tests/uuid.go
index 912339a..242fd8e 100644
--- a/tests/uuid.go
+++ b/tests/uuid.go
@@ -570,8 +570,8 @@ func test_run() {
version: 7,
}
- rc1 := run(args1, nil, &out1, nil)
- rc2 := run(args2, nil, &out2, nil)
+ rc1 := run(envT{args1, nil, &out1, nil})
+ rc2 := run(envT{args2, nil, &out2, nil})
assertEq(rc1, 0)
assertEq(rc2, 0)
@@ -591,8 +591,8 @@ func test_run() {
subArgs: []string{New().String()},
}
- rc1 := run(args1, nil, nil, &err1)
- rc2 := run(args2, nil, nil, nil)
+ rc1 := run(envT{args1, nil, nil, &err1})
+ rc2 := run(envT{args2, nil, nil, nil})
assertEq(rc1, 3)
assertEq(rc2, 0)