![]() |
PIP 6.1.0
Platform-Independent Primitives
|
Класс Branch - контейнер для объектов Entry. Подробнее...
#include <piconfig.h>
Открытые члены | |
| Entry & | getValue (const PIString &vname, const PIString &def=PIString(), bool *exists=0) |
| Получить значение из ветки по имени со значением по умолчанию | |
| Entry & | getValue (const PIString &vname, const char *def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const PIStringList &def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const bool def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const short def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const int def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const long def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const uchar def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const ushort def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const uint def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const ulong def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const float def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Entry & | getValue (const PIString &vname, const double def, bool *exists=0) |
| Получить запись с именем "vname" и значением по умолчанию "def". | |
| Branch | allLeaves () |
| Возвращает все листовые потомки, достижимые из этой ветви. | |
| Branch | getValues (const PIString &name) |
| Получить все записи с именем, содержащим указанную подстроку | |
| Branch | getLeaves () |
| Возвращает только записи этой ветви без дочерних элементов. | |
| Branch | getBranches () |
| Возвращает только записи этой ветви, имеющие дочерние элементы. | |
| Branch & | filter (const PIString &f) |
| Удаляет записи, чьи имена не содержат "f". | |
| bool | isEntryExists (const PIString &name) const |
| Возвращает true, если какая-либо запись этой ветви или ее потомков имеет имя "name". | |
| int | indexOf (const Entry *e) |
| Возвращает позицию указателя на запись "e" в этой ветви или -1. | |
| Открытые члены унаследованные от PIVector< Entry * > | |
| PIVector () | |
| Создает пустой массив. | |
| PIVector< Entry * > & | operator= (const PIVector< Entry * > &v) |
| Оператор присваивания. | |
| iterator | begin () |
| Итератор на первый элемент. | |
| iterator | end () |
| Итератор на элемент, следующий за последним элементом. | |
| reverse_iterator | rbegin () |
| Обратный итератор на первый элемент. | |
| reverse_iterator | rend () |
| Обратный итератор на элемент, следующий за последним элементом. | |
| size_t | size () const |
| Количество элементов массива. | |
| ssize_t | size_s () const |
| Количество элементов массива в виде знакового числа. | |
| size_t | length () const |
| Синоним size(). | |
| size_t | capacity () const |
| Количество элементов, для которого сейчас выделена память массивом. | |
| bool | isEmpty () const |
| Проверяет пуст ли массив. | |
| bool | isNotEmpty () const |
| Проверяет не пуст ли массив. | |
| bool | any (std::function< bool(const Entry *&e)> test) const |
| Проверяет, удовлетворяет ли какой-либо элемент массива условию, заданному в передаваемой функции test. | |
| bool | every (std::function< bool(const Entry *&e)> test) const |
| Проверяет, удовлетворяют ли все элементы массива условию, заданному в передаваемой функции test. | |
| Entry *& | operator[] (size_t index) |
| Полный доступ к элементу по индексу index. | |
| const Entry *& | at (size_t index) const |
| Доступ исключительно на чтение к элементу по индексу index. | |
| const Entry *& | atWhere (std::function< bool(const Entry *&e)> test, ssize_t start=0, const Entry *&def=Entry *()) const |
| Возвращает первый элемент массива, проходящего по условию, заданному в передаваемой функции test, или def если такого элемента нет. | |
| const Entry *& | lastAtWhere (std::function< bool(const Entry *&e)> test, ssize_t start=-1, const Entry *&def=Entry *()) const |
| Возвращает последний элемент массива, проходящего по условию, заданному в передаваемой функции test, или def если такого элемента нет. | |
| Entry *& | back () |
| Последний элемент массива. | |
| Entry *& | front () |
| Первый элемент массива. | |
| bool | operator== (const PIVector< Entry * > &v) const |
| Оператор сравнения с массивом v. | |
| bool | operator!= (const PIVector< Entry * > &v) const |
| Оператор сравнения с массивом v. | |
| bool | contains (const Entry *&e, ssize_t start=0) const |
| Проверяет наличие элемента e в массиве. | |
| bool | containsAll (const PIVector< Entry * > &v, ssize_t start=0) const |
| Проверяет наличие всех элементов v в массиве. | |
| bool | containsAny (const PIVector< Entry * > &v, ssize_t start=0) const |
| Проверяет наличие хотя бы одного из элементов v в массиве. | |
| int | entries (const Entry *&e, ssize_t start=0) const |
| Подсчитывает количество элементов, совпадающих с элементом e в массиве. | |
| ssize_t | indexOf (const Entry *&e, ssize_t start=0) const |
| Возвращает первый индекс, по которому данный элемент e может быть найден в массиве или -1, если такого индекса нет. | |
| ssize_t | indexWhere (std::function< bool(const Entry *&e)> test, ssize_t start=0) const |
| Возвращает первый индекс элемента проходящего по условию, заданному в передаваемой функции test, или -1, если таких элементов нет. | |
| ssize_t | lastIndexOf (const Entry *&e, ssize_t start=-1) const |
| Возвращает последний индекс, по которому данный элемент e может быть найден в массиве или -1, если такого индекса нет. | |
| ssize_t | lastIndexWhere (std::function< bool(const Entry *&e)> test, ssize_t start=-1) const |
| Возвращает последний индекс элемента проходящего по условию, заданному в передаваемой функции test, или -1, если таких элементов нет. | |
| Entry ** | data (size_t index=0) |
| Указатель на память массива | |
| PIVector< Entry * > | getRange (size_t index, size_t count) const |
| Создает подмассив, то есть кусок из текущего массива. | |
| PIVector< Entry * > & | clear () |
| Очищает массив, удаляет все элементы. | |
| PIVector< Entry * > & | fill (const Entry *&e=Entry *()) |
| Заполняет весь массив копиями элемента 'e'. | |
| PIVector< Entry * > & | assign (const Entry *&e=Entry *()) |
| Тоже самое что и fill(). | |
| PIVector< Entry * > & | resize (size_t new_size, const Entry *&e=Entry *()) |
| Устанавливает размер массива, новые элементы копируются из e. | |
| PIVector< Entry * > & | reserve (size_t new_size) |
| Резервируется память под как минимум new_size элементов. | |
| PIVector< Entry * > & | insert (size_t index, const Entry *&e=Entry *(), size_t count=1) |
| Вставляет значение e в позицию index в массиве. | |
| PIVector< Entry * > & | remove (size_t index, size_t count=1) |
| Удаляет элементы из массива, начиная с позиции index в количестве count. | |
| void | swap (PIVector< Entry * > &v) |
| Меняет местами массив v с этим массивом. | |
| PIVector< Entry * > & | sort () |
| Сортировка элементов в порядке возрастания. | |
| PIVector< Entry * > & | reverse () |
| Обращает порядок следования элементов этого массива. | |
| PIVector< Entry * > | reversed () const |
| Возвращает перевернутый массив. | |
| PIVector< Entry * > & | enlarge (ssize_t add_size, const Entry *&e=Entry *()) |
| Увеличивает или уменьшает размер массива на add_size элементов. | |
| PIVector< Entry * > & | removeOne (const Entry *&e) |
| Удаляет первый элемент, который равен элементу e. | |
| PIVector< Entry * > & | removeAll (const Entry *&e) |
| Удаляет все элементы, равные элементу e. | |
| PIVector< Entry * > & | removeWhere (std::function< bool(const Entry *&e)> test) |
| Удаляет все элементы, удовлетворяющие условию, заданному в передаваемой функции test. | |
| PIVector< Entry * > & | push_back (const Entry *&e) |
| Добавляет элемент e в конец массива. | |
| PIVector< Entry * > & | append (const Entry *&e) |
| Добавляет элемент e в конец массива. | |
| PIVector< Entry * > & | operator<< (const Entry *&e) |
| Добавляет элемент e в конец массива. | |
| PIVector< Entry * > & | push_front (const Entry *&e) |
| Добавляет элемент e в начало массива. | |
| PIVector< Entry * > & | prepend (const Entry *&e) |
| Добавляет элемент e в начало массива. | |
| PIVector< Entry * > & | pop_back () |
| Удаляет один элемент с конца массива. | |
| PIVector< Entry * > & | pop_front () |
| Удаляет один элемент с начала массива. | |
| Entry * | take_back () |
| Удаляет один элемент с начала массива и возвращает его. | |
| Entry * | take_front () |
| Удаляет один элемент с конца массива и возвращает его. | |
| PIVector< ST > | toType () const |
| Возвращает конвертированный в другой тип массив. | |
| PIVector< Entry * > | filter (std::function< bool(const Entry *&e)> test) const |
| Возвращает новый массив со всеми элементами, прошедшими проверку, задаваемую в передаваемой функции bool test(const T & e). | |
| PIVector< Entry * > | filterIndexed (std::function< bool(size_t index, const Entry *&e)> test) const |
| Аналогично filter() но с параметром индекса index в функции test. | |
| PIVector< Entry * > | filterReverse (std::function< bool(const Entry *&e)> test) const |
| Аналогично filter() но от конца до начала (справа на лево). | |
| PIVector< Entry * > | filterReverseIndexed (std::function< bool(size_t index, const Entry *&e)> test) const |
| Аналогично filterReverse() но с параметром индекса index в функции test. | |
| void | forEach (std::function< void(const Entry *&e)> f) const |
| Выполняет функцию void f(const T & e) для каждого элемента массива. | |
| void | forEachIndexed (std::function< void(size_t index, const Entry *&e)> f) const |
| Аналогично forEach() но с параметром индекса index в функции f. | |
| void | forEachReverse (std::function< void(const Entry *&e)> f) const |
| Аналогично forEach() но от конца до начала (справа на лево). | |
| void | forEachReverseIndexed (std::function< void(size_t index, const Entry *&e)> f) const |
| Аналогично forEachIndexed() но от конца до начала (справа на лево). | |
| PIVector< ST > | map (std::function< ST(const Entry *&e)> f) const |
| Создаёт новый массив с результатом вызова указанной функции ST f(const T & e) для каждого элемента массива. | |
| PIVector< ST > | mapIndexed (std::function< ST(size_t index, const Entry *&e)> f) const |
| Аналогично map() но с параметром индекса index в функции f. | |
| PIVector< ST > | mapReverse (std::function< ST(const Entry *&e)> f) const |
| Аналогично map() но от конца до начала (справа на лево). | |
| PIVector< ST > | mapReverseIndexed (std::function< ST(size_t index, const Entry *&e)> f) const |
| Аналогично mapReverse() но с параметром индекса index в функции f. | |
| ST | reduce (std::function< ST(const Entry *&e, const ST &acc)> f, const ST &initial=ST()) const |
| Применяет функцию ST f(const T & e, const ST & acc) к каждому элементу массива (слева-направо), возвращает одно значение. | |
| ST | reduceIndexed (std::function< ST(size_t index, const Entry *&e, const ST &acc)> f, const ST &initial=ST()) const |
| Аналогично reduce() но с параметром индекса index в функции f. | |
| ST | reduceReverse (std::function< ST(const Entry *&e, const ST &acc)> f, const ST &initial=ST()) const |
| Аналогично reduce() но от конца до начала (справа на лево). | |
| ST | reduceReverseIndexed (std::function< ST(size_t index, const Entry *&e, const ST &acc)> f, const ST &initial=ST()) const |
| Аналогично reduceReverse() но с параметром индекса index в функции f. | |
| PIVector< PIVector< Entry * > > | reshape (size_t rows, size_t cols, ReshapeOrder order=ReshapeByRow) const |
| Изменяет размерность массива, из одномерного массива создает двухмерный. | |
| PIVector< C > | flatten (ReshapeOrder order=ReshapeByRow) const |
| Изменяет размерность массива, из двухмерный массива создает одномерный. | |
| PIVector< PIVector< Entry * > > | split (const Entry *&separator) const |
| Разделяет массив на двумерный массив с помощью разделителяseparator. | |
| PIVector< PIVector< Entry * > > | splitBySize (size_t sz) const |
| Разделяет массив на двумерный массив по кускам не более чем sz. | |
| PIVector< Entry * > | takeRange (size_t index, size_t count) |
| Вырезает подмассив, то есть кусок из текущего массива. | |
Класс Branch - контейнер для объектов Entry.
Branch is a list of entries of configuration file
Branch provides some features to get entries lists.
| PIConfig::Entry & PIConfig::Branch::getValue | ( | const PIString & | vname, |
| const PIString & | def = PIString(), | ||
| bool * | exists = 0 ) |
Получить значение из ветки по имени со значением по умолчанию
Если поиск не удался, возвращает общий внутренний entry со значением "def" и устанавливает exists в false, если указатель передан.