...
1
2
3
4
5 package netipx_test
6
7 import (
8 "fmt"
9 "net/netip"
10
11 "go4.org/netipx"
12 )
13
14 func ExampleIPSet() {
15 var b netipx.IPSetBuilder
16
17 b.AddPrefix(netip.MustParsePrefix("10.0.0.0/8"))
18 b.RemovePrefix(netip.MustParsePrefix("10.0.0.0/16"))
19
20 b.AddRange(netipx.IPRangeFrom(
21 netip.MustParseAddr("fed0::0400"),
22 netip.MustParseAddr("fed0::04ff"),
23 ))
24
25 s, _ := b.IPSet()
26
27 fmt.Println("Ranges:")
28 for _, r := range s.Ranges() {
29 fmt.Printf(" %s - %s\n", r.From(), r.To())
30 }
31
32 fmt.Println("Prefixes:")
33 for _, p := range s.Prefixes() {
34 fmt.Printf(" %s\n", p)
35 }
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 }
51
View as plain text