/// <summary> /// Selects and edge by id. /// </summary> /// <param name="id">The specified edge id.</param> public E Select(EdgeId id) { if (null == id) { throw new ArgumentNullException(); } return(this.edges[id]); }
/// <summary> /// Initializes a new undirected edge with a specified id and set of nodes. /// </summary> /// <param name="id">The id for the edge.</param> /// <param name="nodeIds">The unordered nodes of the edge.</param> public UndirectedEdge(EdgeId id, ISet <NodeId> nodeIds) { if (null == id) { throw new ArgumentNullException(); } if (null == nodeIds) { throw new ArgumentNullException(); } this.id = id; this.nodeIds = nodeIds; }
/// <summary> /// Selects all the edges connected to a specified node by id. /// </summary> /// <param name="id">The specified node id.</param> public ISet <NodeId> SelectConnectedTo(EdgeId id) { return(Select(id).NodeIds()); }