github.com/sagernet/sing@v0.2.6/common/closer.go (about) 1 package common 2 3 import "io" 4 5 type closeWrapper struct { 6 closer func() error 7 } 8 9 func (w *closeWrapper) Close() error { 10 return w.closer() 11 } 12 13 func Closer(closer func() error) io.Closer { 14 if closer == nil { 15 return nil 16 } 17 return &closeWrapper{closer} 18 }