mirror of
https://github.com/restic/restic.git
synced 2024-12-28 02:38:33 +00:00
29 lines
370 B
Go
29 lines
370 B
Go
|
// +build !release
|
||
|
|
||
|
package debug
|
||
|
|
||
|
var (
|
||
|
hooks map[string]func(interface{})
|
||
|
)
|
||
|
|
||
|
func init() {
|
||
|
hooks = make(map[string]func(interface{}))
|
||
|
}
|
||
|
|
||
|
func Hook(name string, f func(interface{})) {
|
||
|
hooks[name] = f
|
||
|
}
|
||
|
|
||
|
func RunHook(name string, context interface{}) {
|
||
|
f, ok := hooks[name]
|
||
|
if !ok {
|
||
|
return
|
||
|
}
|
||
|
|
||
|
f(context)
|
||
|
}
|
||
|
|
||
|
func RemoveHook(name string) {
|
||
|
delete(hooks, name)
|
||
|
}
|