@ 260812.1

250511.1 · 3d5486c8bf7e4791ef453e91f1fa993d21420b9d

fastwalk: add new DirEntry.Depth method

The new DirEntry Depth method returns the depth at which the entry was generated relative to the root being walked. This is useful for programs that wish to limit traversal depth.

reading declarations

Changes to fastwalk_darwin.go. All files

fastwalk_darwin.go

@@ -8,7 +8,7 @@ import ( 	"unsafe" ) -func (w *walker) readDir(dirName string) (err error) {+func (w *walker) readDir(dirName string, depth int) (err error) { 	var fd uintptr 	for { 		fd, err = opendir(dirName)@@ -68,7 +68,7 @@ func (w *walker) readDir(dirName string) (err error) { 			continue 		} 		nm := string(name)-		de := newUnixDirent(dirName, nm, typ)+		de := newUnixDirent(dirName, nm, typ, depth) 		if w.sortMode == SortNone { 			if err := w.onDirEnt(dirName, nm, de); err != nil { 				if err != ErrSkipFiles {