Files
kjol/tools/tsgo/internal/project/dirty/util.go
2026-07-09 16:50:43 -04:00

19 lines
378 B
Go

package dirty
import "maps"
func CloneMapIfNil[K comparable, V any, T any](dirty *T, original *T, getMap func(*T) map[K]V) map[K]V {
dirtyMap := getMap(dirty)
if dirtyMap == nil {
if original == nil {
return make(map[K]V)
}
originalMap := getMap(original)
if originalMap == nil {
return make(map[K]V)
}
return maps.Clone(originalMap)
}
return dirtyMap
}