package gentools func Ptr[T any](t T) *T { return &t } func ShallowCopy[T any](t *T) *T { if t == nil { return t } tCopy := *t return &tCopy } func ShallowCopyTo[T any](dst **T, src *T) { if src != nil { *dst = ShallowCopy(src) } }