| | |
| | |
| | |
| |
|
| | package maps_test |
| |
|
| | import ( |
| | "fmt" |
| | "maps" |
| | "slices" |
| | "strings" |
| | ) |
| |
|
| | func ExampleClone() { |
| | m1 := map[string]int{ |
| | "key": 1, |
| | } |
| | m2 := maps.Clone(m1) |
| | m2["key"] = 100 |
| | fmt.Println(m1["key"]) |
| | fmt.Println(m2["key"]) |
| |
|
| | m3 := map[string][]int{ |
| | "key": {1, 2, 3}, |
| | } |
| | m4 := maps.Clone(m3) |
| | fmt.Println(m4["key"][0]) |
| | m4["key"][0] = 100 |
| | fmt.Println(m3["key"][0]) |
| | fmt.Println(m4["key"][0]) |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | } |
| |
|
| | func ExampleCopy() { |
| | m1 := map[string]int{ |
| | "one": 1, |
| | "two": 2, |
| | } |
| | m2 := map[string]int{ |
| | "one": 10, |
| | } |
| |
|
| | maps.Copy(m2, m1) |
| | fmt.Println("m2 is:", m2) |
| |
|
| | m2["one"] = 100 |
| | fmt.Println("m1 is:", m1) |
| | fmt.Println("m2 is:", m2) |
| |
|
| | m3 := map[string][]int{ |
| | "one": {1, 2, 3}, |
| | "two": {4, 5, 6}, |
| | } |
| | m4 := map[string][]int{ |
| | "one": {7, 8, 9}, |
| | } |
| |
|
| | maps.Copy(m4, m3) |
| | fmt.Println("m4 is:", m4) |
| |
|
| | m4["one"][0] = 100 |
| | fmt.Println("m3 is:", m3) |
| | fmt.Println("m4 is:", m4) |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | } |
| |
|
| | func ExampleDeleteFunc() { |
| | m := map[string]int{ |
| | "one": 1, |
| | "two": 2, |
| | "three": 3, |
| | "four": 4, |
| | } |
| | maps.DeleteFunc(m, func(k string, v int) bool { |
| | return v%2 != 0 |
| | }) |
| | fmt.Println(m) |
| | |
| | |
| | } |
| |
|
| | func ExampleEqual() { |
| | m1 := map[int]string{ |
| | 1: "one", |
| | 10: "Ten", |
| | 1000: "THOUSAND", |
| | } |
| | m2 := map[int]string{ |
| | 1: "one", |
| | 10: "Ten", |
| | 1000: "THOUSAND", |
| | } |
| | m3 := map[int]string{ |
| | 1: "one", |
| | 10: "ten", |
| | 1000: "thousand", |
| | } |
| |
|
| | fmt.Println(maps.Equal(m1, m2)) |
| | fmt.Println(maps.Equal(m1, m3)) |
| | |
| | |
| | |
| | } |
| |
|
| | func ExampleEqualFunc() { |
| | m1 := map[int]string{ |
| | 1: "one", |
| | 10: "Ten", |
| | 1000: "THOUSAND", |
| | } |
| | m2 := map[int][]byte{ |
| | 1: []byte("One"), |
| | 10: []byte("Ten"), |
| | 1000: []byte("Thousand"), |
| | } |
| | eq := maps.EqualFunc(m1, m2, func(v1 string, v2 []byte) bool { |
| | return strings.EqualFold(v1, string(v2)) |
| | }) |
| | fmt.Println(eq) |
| | |
| | |
| | } |
| |
|
| | func ExampleAll() { |
| | m1 := map[string]int{ |
| | "one": 1, |
| | "two": 2, |
| | } |
| | m2 := map[string]int{ |
| | "one": 10, |
| | } |
| | maps.Insert(m2, maps.All(m1)) |
| | fmt.Println("m2 is:", m2) |
| | |
| | |
| | } |
| |
|
| | func ExampleKeys() { |
| | m1 := map[int]string{ |
| | 1: "one", |
| | 10: "Ten", |
| | 1000: "THOUSAND", |
| | } |
| | keys := slices.Sorted(maps.Keys(m1)) |
| | fmt.Println(keys) |
| | |
| | |
| | } |
| |
|
| | func ExampleValues() { |
| | m1 := map[int]string{ |
| | 1: "one", |
| | 10: "Ten", |
| | 1000: "THOUSAND", |
| | } |
| | values := slices.Sorted(maps.Values(m1)) |
| | fmt.Println(values) |
| | |
| | |
| | } |
| |
|
| | func ExampleInsert() { |
| | m1 := map[int]string{ |
| | 1000: "THOUSAND", |
| | } |
| | s1 := []string{"zero", "one", "two", "three"} |
| | maps.Insert(m1, slices.All(s1)) |
| | fmt.Println("m1 is:", m1) |
| | |
| | |
| | } |
| |
|
| | func ExampleCollect() { |
| | s1 := []string{"zero", "one", "two", "three"} |
| | m1 := maps.Collect(slices.All(s1)) |
| | fmt.Println("m1 is:", m1) |
| | |
| | |
| | } |
| |
|