mirror of
https://github.com/restic/restic.git
synced 2025-03-30 00:00:14 +01:00

name old time/op new time/op delta NodeFillUser-8 1.81µs ± 9% 1.50µs ± 5% -17.07% (p=0.000 n=19+20) NodeFromFileInfo-8 1.76µs ± 4% 1.49µs ± 6% -15.63% (p=0.000 n=20+19) name old alloc/op new alloc/op delta NodeFillUser-8 496B ± 0% 352B ± 0% -29.03% (p=0.000 n=20+20) NodeFromFileInfo-8 496B ± 0% 352B ± 0% -29.03% (p=0.000 n=20+20) name old allocs/op new allocs/op delta NodeFillUser-8 3.00 ± 0% 2.00 ± 0% -33.33% (p=0.000 n=20+20) NodeFromFileInfo-8 3.00 ± 0% 2.00 ± 0% -33.33% (p=0.000 n=20+20)
29 lines
723 B
Go
29 lines
723 B
Go
// +build dragonfly linux netbsd openbsd freebsd solaris darwin
|
|
|
|
package restic
|
|
|
|
import (
|
|
"os"
|
|
"syscall"
|
|
)
|
|
|
|
var mknod = syscall.Mknod
|
|
var lchown = os.Lchown
|
|
|
|
type statT syscall.Stat_t
|
|
|
|
func toStatT(i interface{}) (*statT, bool) {
|
|
s, ok := i.(*syscall.Stat_t)
|
|
if ok && s != nil {
|
|
return (*statT)(s), true
|
|
}
|
|
return nil, false
|
|
}
|
|
|
|
func (s statT) dev() uint64 { return uint64(s.Dev) }
|
|
func (s statT) ino() uint64 { return uint64(s.Ino) }
|
|
func (s statT) nlink() uint64 { return uint64(s.Nlink) }
|
|
func (s statT) uid() uint32 { return uint32(s.Uid) }
|
|
func (s statT) gid() uint32 { return uint32(s.Gid) }
|
|
func (s statT) rdev() uint64 { return uint64(s.Rdev) }
|
|
func (s statT) size() int64 { return int64(s.Size) }
|