[LLVMdev] select1st, select2nd

David A. Greene greened at obbligato.org
Fri Jul 15 13:57:05 PDT 2011

Chris Lattner <clattner at apple.com> writes:

> On Jul 15, 2011, at 12:35 PM, David Greene wrote:
>> I've run into a use case where I'd like to use a mapped_iterator to
>> iterator the 1st (or 2nd) items in a sequence of std::pairs.  Does
>> select1st/select2nd exist somewhere within LLVM or is there some
>> equivalent?  If not, I'll add it.
> Is this making the resultant loop simpler?  C++ without lambda's isn't
> very friendly to functors, what is the before/after effect of doing
> this?

It's going to unify the DagInit constructors into one piece of code.
The problem now is there are two constructors.  One takes a vector of
pairs and the other takes two vectors.  They each make sense in their
use contexts but it results in a lot of code duplication when moving
DagInit to a uniqued pool implementation.  I wanted to put the
processing code in a third function which would be called with various
types of iterators over those vectors.


More information about the llvm-dev mailing list