Добавить Policy Based Data Structures

kulkov.oleksandr
kulkov.oleksandr

По мотивам этого.

 

В SGI STL была проделана масштабная работа по описанию и реализации Policy Based Data Structures. Было бы здорово иметь эту вещь в стандарте. 

 

Мануал

12
рейтинг
5 комментариев
kulkov.oleksandr
Чуть подробнее:
Библиотека pbds -- гибкий инструмент для работы со сбалансированными двоичными деревьями с возможностью поддержки различного рода метаданных (размеры поддеревьев, какие-то функции от элементов поддерева, задаваемые пользователем), а также базовых операций (split, merge), выполняемых за O(log n). Кроме того, встроенные шаблоны политик включают в себя команды order_of_key и find_by_order, которых сильно недостаёт стандартным set и map.
kulkov.oleksandr
yndx-antoshkka
Создать и описать новые контейнеры - это очень тяжёлая работа. Если готовы идти до конца, то для начала обсудите идею на std-proposals форуме (он есть в полезных ссылках на этом сайте).

С написанием предложения помогу, но основная работа будет на вас.
yndx-antoshkka
Alexander Kulkov
А в чём заключается эта основная работа?
Alexander Kulkov
yndx-antoshkka
Alexander Kulkov, основная работа заключается в том, чтобы для каждого предложенного контейнера пройтись по секциям [container.requirements.general] и [sequence.reqmts]/[associative.reqmts]/[unord.req] и убедиться что они не нарушают требования для контейнеров. Так же надо будет проанализировать, каких новых фичей не хватает в контейнере (rvalue references, поддержка node, push() возвращающих ссылку или итератор и т.п) и добавить их по возможности.
yndx-antoshkka
Другие идеи
Группа создана, чтобы собирать предложения к стандарту C++, организовывать их внутренние обсуждения, помогать готовить их для отправки в комитет и защищать на общих собраниях в рабочей группе по С++ Международной организации по стандартизации (ISO).