mirror of
https://github.com/vbatts/go-mtree.git
synced 2024-11-21 07:55:44 +00:00
dont use slices
This commit is contained in:
parent
cc12bd7a0b
commit
d843e933df
2 changed files with 12 additions and 12 deletions
|
@ -5,7 +5,6 @@ import (
|
|||
"io"
|
||||
"math"
|
||||
"os"
|
||||
"slices"
|
||||
"strings"
|
||||
|
||||
cli "github.com/urfave/cli/v2"
|
||||
|
@ -76,20 +75,21 @@ func mutateAction(c *cli.Context) error {
|
|||
&tidyVisitor,
|
||||
}
|
||||
|
||||
dropped := []int{}
|
||||
dropped := map[int]bool{}
|
||||
entries := []mtree.Entry{}
|
||||
|
||||
skip:
|
||||
for _, entry := range spec.Entries {
|
||||
|
||||
if entry.Parent != nil && slices.Contains(dropped, entry.Parent.Pos) {
|
||||
if entry.Type == mtree.DotDotType {
|
||||
// directory for this .. has been dropped so shall this
|
||||
continue
|
||||
if entry.Parent != nil {
|
||||
if _, ok := dropped[entry.Parent.Pos]; ok {
|
||||
if entry.Type == mtree.DotDotType {
|
||||
// directory for this .. has been dropped so shall this
|
||||
continue
|
||||
}
|
||||
entry.Parent = entry.Parent.Parent
|
||||
// TODO: i am not sure if this is the correct behavior
|
||||
entry.Raw = strings.TrimPrefix(entry.Raw, " ")
|
||||
}
|
||||
entry.Parent = entry.Parent.Parent
|
||||
// TODO: i am not sure if this is the correct behavior
|
||||
entry.Raw = strings.TrimPrefix(entry.Raw, " ")
|
||||
}
|
||||
|
||||
for _, visitor := range visitors {
|
||||
|
@ -99,7 +99,7 @@ skip:
|
|||
}
|
||||
|
||||
if drop {
|
||||
dropped = append(dropped, entry.Pos)
|
||||
dropped[entry.Pos] = true
|
||||
continue skip
|
||||
}
|
||||
}
|
||||
|
|
2
go.mod
2
go.mod
|
@ -1,6 +1,6 @@
|
|||
module github.com/vbatts/go-mtree
|
||||
|
||||
go 1.18
|
||||
go 1.17
|
||||
|
||||
require (
|
||||
github.com/davecgh/go-spew v1.1.1
|
||||
|
|
Loading…
Reference in a new issue