skip Files without Id; sort Files by Id
This commit is contained in:
parent
13ab5b1902
commit
cba38255a5
1 changed files with 11 additions and 1 deletions
12
tree.go
12
tree.go
|
@ -3,6 +3,7 @@ package zord_tree
|
||||||
import (
|
import (
|
||||||
"bufio"
|
"bufio"
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"cmp"
|
||||||
"crypto/md5"
|
"crypto/md5"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
@ -13,10 +14,10 @@ import (
|
||||||
"path"
|
"path"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"regexp"
|
"regexp"
|
||||||
|
"slices"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
abcex "g.arns.lt/zordsdavini/abcex/v4"
|
abcex "g.arns.lt/zordsdavini/abcex/v4"
|
||||||
"golang.org/x/exp/slices"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
|
@ -568,7 +569,16 @@ FILE_LOOP:
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return tree, err
|
return tree, err
|
||||||
}
|
}
|
||||||
|
if nextFile.Id == "" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
tree.Files = append(tree.Files, nextFile)
|
tree.Files = append(tree.Files, nextFile)
|
||||||
|
slices.SortFunc(tree.Files, func(a, b File) int {
|
||||||
|
if len(a.Id) == len(b.Id) {
|
||||||
|
return strings.Compare(a.Id, b.Id)
|
||||||
|
}
|
||||||
|
return cmp.Compare(len(a.Id), len(b.Id))
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
return tree, nil
|
return tree, nil
|
||||||
|
|
Loading…
Add table
Reference in a new issue