Versions in this module Expand all Collapse all v1 v1.0.3 Oct 29, 2018 v1.0.2 Oct 28, 2018 Changes in this version + func ReadChunk(f *os.File, buf []byte) (n int, err error) v1.0.1 Oct 21, 2018 Changes in this version + func EqualXAttrs(pathname1, pathname2 string) (bool, error) + func MaxNlinkVal(pathname string) uint64 + type DevStatInfo struct + Dev uint64 + func LStatInfo(pathname string) (DevStatInfo, error) + type Digest uint32 + func ContentDigest(pathname string, buf []byte) (Digest, error) + type FilenamePaths struct + FPMap map[string]pathsplitSet + func (f *FilenamePaths) Add(ps P.Pathsplit) + func (f *FilenamePaths) Any() P.Pathsplit + func (f *FilenamePaths) AnyWithFilename(filename string) P.Pathsplit + func (f *FilenamePaths) CountPaths() int + func (f *FilenamePaths) HasFilename(filename string) bool + func (f *FilenamePaths) HasPath(ps P.Pathsplit) bool + func (f *FilenamePaths) IsEmpty() bool + func (f *FilenamePaths) PathsAsSlice() []P.Pathsplit + func (f *FilenamePaths) Remove(ps P.Pathsplit) + type Hash uint64 + func HashIno(si StatInfo, ignoreTime, ignorePerm, ignoreOwner bool) Hash + type Ino uint64 + type InoDigests struct + InoSets map[Digest]Set + InosWithDigest Set + func NewInoDigests() InoDigests + func (id *InoDigests) Add(pi PathInfo, digest Digest) + func (id *InoDigests) GetInos(d Digest) Set + func (id *InoDigests) NewDigest(pi PathInfo, buf []byte) bool + type InoHashes map[Hash]Set + type InoStatInfo map[Ino]*StatInfo + type LinkableInoSets map[Ino]Set + func (l LinkableInoSets) Add(ino1, ino2 Ino) + func (l LinkableInoSets) All() <-chan Set + func (l LinkableInoSets) Containing(ino Ino) Set + type PathInfo struct + func (p1 PathInfo) EqualMode(p2 PathInfo) bool + func (p1 PathInfo) EqualOwnership(p2 PathInfo) bool + func (p1 PathInfo) EqualTime(p2 PathInfo) bool + type PathsMap map[Ino]*FilenamePaths + func (pm PathsMap) AllPaths(ino Ino) <-chan P.Pathsplit + func (pm PathsMap) AppendPath(ino Ino, path P.Pathsplit) + func (pm PathsMap) ArbitraryFilenamePath(ino Ino, filename string) P.Pathsplit + func (pm PathsMap) ArbitraryPath(ino Ino) P.Pathsplit + func (pm PathsMap) HasPath(ino Ino, path P.Pathsplit) bool + func (pm PathsMap) MovePath(dstPath P.Pathsplit, srcIno Ino, dstIno Ino) + func (pm PathsMap) PathCount() (paths int64, dirs int64) + type Set map[Ino]struct + func NewSet(inos ...Ino) Set + func SetIntersections(sets ...Set) Set + func (s Set) Add(ino Ino) + func (s Set) AsSlice() []Ino + func (s Set) Copy() Set + func (s Set) Difference(other Set) Set + func (s Set) Has(ino Ino) bool + func (s Set) HasAll(inos ...Ino) bool + func (s Set) Intersection(other Set) Set + func (s Set) Overlaps(other Set) bool + func (s Set) Remove(ino Ino) + type StatInfo struct + Gid uint32 + Ino Ino + Mode os.FileMode + Mtim time.Time + Nlink uint64 + Size uint64 + Uid uint32