clone

package
v1.17.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 27, 2025 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Overview

Package clone contains helper functions for implementing deep clones.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MapOfPointersRecursively

func MapOfPointersRecursively[M ~map[K]*V, K comparable, V Cloneable[V]](in M) M

MapOfPointersRecursively clones a map containing pointers to Cloneable values by recursing into Clone() of those values.

func MapOfSlicesRecursively

func MapOfSlicesRecursively[M ~map[K]S, K comparable, S ~[]V, V Cloneable[V]](in M) M

MapOfSlicesRecursively clones a map containing slices of Cloneable values.

func MapRecursively

func MapRecursively[M ~map[K]V, K comparable, V Cloneable[V]](in M) M

MapRecursively clones a map containing Cloneable values by recursing into Clone() of those values.

func SliceRecursively

func SliceRecursively[S ~[]V, V Cloneable[V]](in S) S

SliceRecursively clones a slice containing Cloneable values by recursing into Clone() of those values.

Types

type Cloneable

type Cloneable[Self any] interface {
	Clone() Self
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL