envy.go
func Temp(f func()) {
	oenv := env
	env = map[string]string{}
	for k, v := range oenv {
		env[k] = v
	}
	defer func() { env = oenv }()
	f()
}
func Temp(f func()) {
	oenv := env
	env = map[string]string{}
	for k, v := range oenv {
		env[k] = v
	}
	defer func() { env = oenv }()
	f()
}
func Temp ( f func ( ) ) { oenv := env env = map [ string ] string { } for k , v := range oenv { env [ k ] = v } defer func ( ) { env = oenv } ( ) f ( ) }
// Temp makes a copy of the values and allows operation on
// those values temporarily during the run of the function.
// At the end of the function run the copy is discarded and
// the original values are replaced. This is useful for testing.
// Warning: This function is NOT safe to use from a goroutine or
// from code which may access any Get or Set function from a goroutine
Temp makes a copy of the values and allows operation on those values temporarily during the run of the function . At the end of the function run the copy is discarded and the original values are replaced . This is useful for testing . Warning : This function is NOT safe to use from a goroutine or from code which may access any Get or Set function from a goroutine