type Edge … type EdgeSet … func (ec EdgeSet) Free(node Node) bool { … } func (ec EdgeSet) Contains(edge Edge) bool { … } func (ec EdgeSet) FindByNodes(node1, node2 Node) (Edge, bool) { … } func (ec EdgeSet) SymmetricDifference(ec2 EdgeSet) EdgeSet { … }