3 import . "github.com/onsi/gomega/matchers/support/goraph/node"
12 func (ec EdgeSet) Free(node Node) bool {
13 for _, e := range ec {
14 if e.Node1 == node || e.Node2 == node {
22 func (ec EdgeSet) Contains(edge Edge) bool {
23 for _, e := range ec {
32 func (ec EdgeSet) FindByNodes(node1, node2 Node) (Edge, bool) {
33 for _, e := range ec {
34 if (e.Node1 == node1 && e.Node2 == node2) || (e.Node1 == node2 && e.Node2 == node1) {
42 func (ec EdgeSet) SymmetricDifference(ec2 EdgeSet) EdgeSet {
43 edgesToInclude := make(map[Edge]bool)
45 for _, e := range ec {
46 edgesToInclude[e] = true
49 for _, e := range ec2 {
50 edgesToInclude[e] = !edgesToInclude[e]
54 for e, include := range edgesToInclude {
56 result = append(result, e)