Name: SEPPLES 2011-07-26 17:41
HASKELL
std::map<std::string, std::list<MyTypeThatHasLongName> > faggot;
//...
for (std::map<std::string, std::list<MyTypeThatHasLongName> >::iterator iter = faggot.cbegin(); iter != faggot.cend(); iter++) {
std::pair<std::string, std::list<MyTypeThatHasLongName> >& faggot_pair = *iter;
std::cout << "faggotry: " << faggot_pair.first << " -> " << faggot_pair.second << std::endl;
}
std::multimap<std::string, std::list<MyTypeThatHasLongName> > faggot;
//...
for (std::multimap<std::string, std::list<MyTypeThatHasLongName> >::iterator iter = faggot.cbegin(); iter != faggot.cend(); iter++) {
std::pair<std::string, std::list<MyTypeThatHasLongName> >& faggot_pair = *iter;
std::cout << "faggotry: " << faggot_pair.first << " -> " << faggot_pair.second << std::endl;
}code of yours. No need to thank me - just remember to include GPL license when distributing the modified code.
typedefs.
typedef std::list<MyTypeThatHasLongName> my_type_list;
typedef std::map<std::string, my_type_list> faggot_map;
faggot_map faggot;
//...
for (faggot_map::const_iterator it = faggot.cbegin(), it_end = faggot.cend(); it != it_end; ++it) {
std::cout << "faggotry: " << it->first << " -> " << it->second << std::endl;
}
for (auto& herp : derp)
harpdarp(herp);
std::parallel_for_each(derp.cbegin(), derp.cend(), [](derp_type::const_iterator herp) {
harpdarp(herp);
});
std::combinable<int> harp;
std::parallel_for_each(derp.cbegin(), derp.cend(), [&](derp_type::const_iterator herp) {
harp.local() = harpdarp(herp);
});
int final_harp = harp.combine([](int x, int y) {
return x + y;
});