Re: [Boost-bugs] [Boost C++ Libraries] #8317: Edge coloring

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #8317: Edge coloring
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-07-15 19:11:45


#8317: Edge coloring
-------------------------------+----------------------------
  Reporter: uzytkownik2@… | Owner: jewillco
      Type: Patches | Status: new
 Milestone: To Be Determined | Component: graph
   Version: Boost 1.52.0 | Severity: Not Applicable
Resolution: | Keywords:
-------------------------------+----------------------------

Comment (by Maciej Piechotka <uzytkownik2@…>):

 Replying to [comment:1 jewillco]:
> This code looks nice, and I'll put it into Boost.Graph when it is ready.
 Could you please write a documentation page for it and a simple test
 program?

 Done.

> Also, here are some suggested changes to the code:
>
> * Please remove the `boost::` qualifications on calls such as
 `out_edges`, `put`, etc. on generic types passed in by the user. The code
 needs to use argument-dependent lookup for those functions so that the
 user can define them in other namespaces. Uses of traits classes still
 need the namespaces, though.
>

 Corrected. I didn't thought C++ is capable of 'namespace'-polymorphism.

> * Instead of `BOOST_FOREACH`, you can use `BGL_FORALL_...` from
 `<boost/graph/iteration_macros.hpp>` (don't worry about undefining the
 macros at the end of your file like some of the other parts of Boost.Graph
 do).
>

 Done.

> * It appears that Phoenix is used once in the code. Wouldn't it be
 easier (and likely run faster) to use a manually-written function object?
 It seems like it would be short and quick to write.

 Done. I would be surprised if there was a significant overhead due to
 creation of Phoenix objects on modern compilers with optimization turned
 on but I guess it was also to eliminate the dependency.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8317#comment:3>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:13 UTC