exercism/go/custom-set/cmd/main.go

50 lines
986 B
Go
Raw Normal View History

2016-08-15 19:08:39 +00:00
package main
import (
"fmt"
"../../custom-set"
)
func main() {
fmt.Println("Creating Set 1")
s1 := stringset.NewFromSlice([]string{"a", "b"})
addAndOutput(s1, "A")
addAndOutput(s1, "c")
addAndOutput(s1, "B")
addAndOutput(s1, "B1")
addAndOutput(s1, "A1")
addAndOutput(s1, "B2")
addAndOutput(s1, "A2")
addAndOutput(s1, "B3")
addAndOutput(s1, "A3")
delAndOutput(s1, "a")
fmt.Println("Creating Set 2")
s2 := stringset.NewFromSlice([]string{"A", "c"})
addAndOutput(s2, "a")
addAndOutput(s2, "b")
addAndOutput(s2, "B1")
addAndOutput(s2, "A3")
addAndOutput(s2, "A2")
addAndOutput(s2, "B2")
addAndOutput(s2, "A1")
addAndOutput(s2, "B3")
addAndOutput(s2, "B")
s2.PrettyPrint()
delAndOutput(s2, "a")
s2.PrettyPrint()
}
func addAndOutput(s *stringset.Set, val string) {
fmt.Println("Adding " + val)
s.Add(val)
fmt.Println(s.String())
}
func delAndOutput(s *stringset.Set, val string) {
fmt.Println("Deleting " + val)
s.Delete(val)
fmt.Println(s.String())
}