package main import ( "encoding/json" "fmt" "ollie/tools/filetools/internal/filetools" "os" ) func main() { run(filetools.Write) } func run(fn func(map[string]any) (string, error)) { var m map[string]any if err := json.NewDecoder(os.Stdin).Decode(&m); err != nil { fail("invalid JSON input: %v", err) } out, err := fn(m) if err != nil { if out != "" { fmt.Fprintln(os.Stdout, out) } fail("%v", err) } fmt.Println(out) } func fail(f string, a ...any) { fmt.Fprintf(os.Stderr, "error: "+f+"\n", a...); os.Exit(1) }