26 lines
431 B
Go
26 lines
431 B
Go
|
|
package infinitecraft
|
||
|
|
|
||
|
|
import (
|
||
|
|
"fmt"
|
||
|
|
"os"
|
||
|
|
)
|
||
|
|
|
||
|
|
func NewMerger(args []string) (*Merger, error) {
|
||
|
|
m := Merger{}
|
||
|
|
var err error
|
||
|
|
if len(args) < 2 {
|
||
|
|
//nolint:err113 // Don't care
|
||
|
|
return nil, fmt.Errorf("expected at lease 2 arguments. Got %d", len(args))
|
||
|
|
}
|
||
|
|
fs := make([]*os.File, len(args))
|
||
|
|
for idx, pth := range args {
|
||
|
|
fs[idx], err = os.Open(pth)
|
||
|
|
if err != nil {
|
||
|
|
return nil, err
|
||
|
|
}
|
||
|
|
}
|
||
|
|
m.files = fs
|
||
|
|
|
||
|
|
return &m, nil
|
||
|
|
}
|