utils/cmd/ic-merge/main.go

35 lines
625 B
Go

package main
import (
"context"
"fmt"
"os"
c "codeberg.org/danjones000/utils/cli/context"
e "codeberg.org/danjones000/utils/cli/err"
ic "codeberg.org/danjones000/utils/infinitecraft"
)
func main() {
ctx, done := c.SelfCancelingContext(context.Background())
defer done()
m, err := ic.NewMerger(os.Args[1:])
e.HandleErr(err)
//nolint:errcheck // I don't care about this
defer m.Close()
err = m.ParseFiles()
e.HandleErr(err)
err = m.ReadData(ctx)
e.HandleErr(err)
g, err := m.Merge(ctx)
e.HandleErr(err)
var out string
out, err = m.Write(ctx, g)
e.HandleErr(err)
fmt.Printf("Saved to %s\n", out)
}