Search Apps Documentation Source Content File Folder Download Copy Actions Download State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

getter_utils.gno

0.97 Kb · 58 lines
 1package staker
 2
 3func cloneStringSlice(src []string) []string {
 4	if src == nil {
 5		return nil
 6	}
 7	copied := make([]string, len(src))
 8	copy(copied, src)
 9	return copied
10}
11
12func cloneStringInt64Map(src map[string]int64) map[string]int64 {
13	if src == nil {
14		return nil
15	}
16
17	copied := make(map[string]int64, len(src))
18	for key, value := range src {
19		copied[key] = value
20	}
21	return copied
22}
23
24func cloneStringBoolMap(src map[string]bool) map[string]bool {
25	if src == nil {
26		return nil
27	}
28
29	copied := make(map[string]bool, len(src))
30	for key, value := range src {
31		copied[key] = value
32	}
33
34	return copied
35}
36
37func cloneExternalIncentives(src []ExternalIncentive) []ExternalIncentive {
38	if src == nil {
39		return nil
40	}
41
42	copied := make([]ExternalIncentive, len(src))
43	for i := range src {
44		copied[i] = *src[i].Clone()
45	}
46
47	return copied
48}
49
50func cloneWarmups(warmups []Warmup) []Warmup {
51	if warmups == nil {
52		return nil
53	}
54
55	copied := make([]Warmup, len(warmups))
56	copy(copied, warmups)
57	return copied
58}