Функции STL с трехсторонним предикатом сравнения

Есть ли какая-нибудь библиотека с функциями STL, такими как std :: sort () , std :: binary_search () , std :: lower_bound () , std :: upper_bound () , принимающая предикаты трехстороннего сравнения (которые возвращают -1 при меньшем, 0 при равном, 1 при большом) вместо предиката less (истинно для меньшего, ложь на равных или великих)?

Конечно, предикат less может быть легко получен из существующего трехстороннего предиката (например, [] (A a, B b) {return compare3 (a, b) <0;} ), но это приводит к дополнительному количеству вызовов к предикату.

5
задан littleadv 22 May 2011 в 06:44
поделиться