[ https://issues.apache.org/jira/browse/GIRAPH-221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402928#comment-13402928 ]
Avery Ching commented on GIRAPH-221: ------------------------------------ We do have @Override public abstract Iterator<I> iterator(); I can't remember the exact reason, but I think Jake Mannix had some reason for this... > Make iteration over edges more explicit > --------------------------------------- > > Key: GIRAPH-221 > URL: https://issues.apache.org/jira/browse/GIRAPH-221 > Project: Giraph > Issue Type: Improvement > Components: graph > Reporter: Alessandro Presta > Assignee: Alessandro Presta > Priority: Minor > > Is there any particular reason why BasicVertex implements Iterable? > It seems to me that doing > {code:java} > for (I neighbor : vertex) > {code} > is not that explicit, and > {code:java} > for (I neighbor : this) > {code} > gets even obscure (which may be why all examples in the codebase explicitly > instantiate an iterator and call next()). > What I propose is a more explicit > {code:java} > Iterator<I> outEdgesIterator() > {code} > and also a convenient > {code:java} > Iterable<I> outEdges() > {code} > so, for example, an algorithm can use > {code:java} > for (int neighbor : outEdges()) > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira