27 lines
594 B
Go
27 lines
594 B
Go
package config
|
|
|
|
import "sync"
|
|
|
|
// this package can provide a trivial way to track which
|
|
// protobufs have been modified and need to be written to disk
|
|
// todo: autogenpb could generate code to work with this
|
|
|
|
var saveMap map[string]bool
|
|
var saveLock sync.Mutex
|
|
|
|
func init() {
|
|
// init() should be avoided, but this package and for making
|
|
// this small string map, it seems a sensible exception
|
|
saveMap = make(map[string]bool)
|
|
}
|
|
|
|
func SetChanged(name string, b bool) {
|
|
saveLock.Lock()
|
|
defer saveLock.Unlock()
|
|
saveMap[name] = b
|
|
}
|
|
|
|
func HasChanged(name string) bool {
|
|
return saveMap[name]
|
|
}
|