From 7325e12e30ce84af5f4fbd5ddb3c082652f41c2f Mon Sep 17 00:00:00 2001 From: Andrey Date: Wed, 27 Apr 2022 15:49:30 +0300 Subject: [PATCH] PIString doc --- libs/main/containers/pideque.h | 2 +- libs/main/containers/pipair.h | 9 +- libs/main/core/pistring.cpp | 56 +- libs/main/core/pistring.h | 914 ++++++++++++++++++--------------- main.cpp | 2 +- 5 files changed, 533 insertions(+), 450 deletions(-) diff --git a/libs/main/containers/pideque.h b/libs/main/containers/pideque.h index 0dedb90d..391a6ee0 100644 --- a/libs/main/containers/pideque.h +++ b/libs/main/containers/pideque.h @@ -611,7 +611,7 @@ public: //! \~\sa \a rend(), \a begin(), \a end() inline reverse_iterator rbegin() {return reverse_iterator(this, pid_size - 1);} - //! \~english Returns a reverse iterator to the element + //! \~english Returns a reverse iterator to the element. //! following the last element of the reversed array. //! \~russian Обратный итератор на элемент, следующий за последним элементом. //! \~\details ![rbegin, rend](doc/images/pivector_rbegin.png) diff --git a/libs/main/containers/pipair.h b/libs/main/containers/pipair.h index 0577e08a..40999910 100644 --- a/libs/main/containers/pipair.h +++ b/libs/main/containers/pipair.h @@ -77,8 +77,13 @@ public: second = std::move(value1); } - Type0 first /*! \~english First element \~russian Первый элемент */; - Type1 second /*! \~english Second element \~russian Второй элемент */; + //! \~english First element. + //! \~russian Первый элемент. + Type0 first; + + //! \~english Second element. + //! \~russian Второй элемент. + Type1 second; }; //! \~english Compare operator with PIPair. diff --git a/libs/main/core/pistring.cpp b/libs/main/core/pistring.cpp index cda3f87a..32fc8301 100644 --- a/libs/main/core/pistring.cpp +++ b/libs/main/core/pistring.cpp @@ -59,14 +59,14 @@ -const char PIString::toBaseN[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', +const char PIString::toBaseN[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^'}; -const int PIString::fromBaseN[] = {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, +const int PIString::fromBaseN[] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, -1, -1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, @@ -1299,14 +1299,13 @@ PIString PIString::inBrackets(const PIChar start, const PIChar end) const { //! \~\details //! \~english -//! This function fill internal buffer by sequence -//! of chars. Minimum length of this buffer is count -//! of symbols. Returned pointer is valid until next -//! execution of this function +//! This function fill internal buffer by sequence of chars. +//! Length of this buffer is count of symbols + end byte '\0'. +//! Returned pointer is valid until next execution of this function. //! \~russian -//! Этот метод заполняет внутренный байтовый буфер. Минимальный размер -//! этого буфера равен количеству символов строки. Возвращаемый указатель -//! действителен до следующего вызова этого метода +//! Этот метод заполняет внутренный байтовый буфер. Размер +//! этого буфера равен количеству символов строки + завершающий байт '\0'. +//! Возвращаемый указатель действителен до следующего вызова этого метода. //! \~\code //! piCout << PIString("0123456789").data(); // 0123456789 //! piCout << PIString("№1").data(); // №1 @@ -1321,14 +1320,13 @@ const char * PIString::data() const { //! \~\details //! \~english -//! This function fill internal buffer by sequence -//! of chars. Minimum length of this buffer is count -//! of symbols. Returned pointer is valid until next -//! execution of this function +//! This function fill internal buffer by sequence of chars. +//! Length of this buffer is count of symbols + end byte '\0'. +//! Returned pointer is valid until next execution of this function. //! \~russian -//! Этот метод заполняет внутренный байтовый буфер. Минимальный размер -//! этого буфера равен количеству символов строки. Возвращаемый указатель -//! действителен до следующего вызова этого метода +//! Этот метод заполняет внутренный байтовый буфер. Размер +//! этого буфера равен количеству символов строки + завершающий байт '\0'. +//! Возвращаемый указатель действителен до следующего вызова этого метода. //! \~\sa \a data(), \a dataUTF8() const char * PIString::dataConsole() const { if (isEmpty()) return ""; @@ -1339,14 +1337,13 @@ const char * PIString::dataConsole() const { //! \~\details //! \~english -//! This function fill internal buffer by sequence -//! of chars. Minimum length of this buffer is count -//! of symbols. Returned pointer is valid until next -//! execution of this function +//! This function fill internal buffer by sequence of chars. +//! Length of this buffer is count of symbols + end byte '\0'. +//! Returned pointer is valid until next execution of this function. //! \~russian -//! Этот метод заполняет внутренный байтовый буфер. Минимальный размер -//! этого буфера равен количеству символов строки. Возвращаемый указатель -//! действителен до следующего вызова этого метода +//! Этот метод заполняет внутренный байтовый буфер. Размер +//! этого буфера равен количеству символов строки + завершающий байт '\0'. +//! Возвращаемый указатель действителен до следующего вызова этого метода. //! \~\sa \a data(), \a dataConsole() const char * PIString::dataUTF8() const { if (isEmpty()) return ""; @@ -1357,14 +1354,13 @@ const char * PIString::dataUTF8() const { //! \~\details //! \~english -//! This function fill internal buffer by sequence -//! of chars. Length of this buffer is count -//! of symbols. Returned pointer is valid until next -//! execution of this function +//! This function fill internal buffer by sequence of chars. +//! Length of this buffer is count of symbols + end byte '\0'. +//! Returned pointer is valid until next execution of this function. //! \~russian //! Этот метод заполняет внутренный байтовый буфер. Размер -//! этого буфера равен количеству символов строки. Возвращаемый указатель -//! действителен до следующего вызова этого метода +//! этого буфера равен количеству символов строки + завершающий байт '\0'. +//! Возвращаемый указатель действителен до следующего вызова этого метода. //! \~\sa \a dataConsole(), \a dataUTF8() const char * PIString::dataAscii() const { if (isEmpty()) return ""; diff --git a/libs/main/core/pistring.h b/libs/main/core/pistring.h index a91cf753..b101dddc 100644 --- a/libs/main/core/pistring.h +++ b/libs/main/core/pistring.h @@ -49,20 +49,20 @@ public: typedef const PIChar& const_reference; typedef size_t size_type; - //! \~english Contructs an empty string - //! \~russian Создает пустую строку + //! \~english Contructs an empty string. + //! \~russian Создает пустую строку. PIString() {} - //! \~english Value for elide at left - //! \~russian Значение для пропуска слева + //! \~english Value for elide at left. + //! \~russian Значение для пропуска слева. static const float ElideLeft ; - //! \~english Value for elide at center - //! \~russian Значение для пропуска в середине + //! \~english Value for elide at center. + //! \~russian Значение для пропуска в середине. static const float ElideCenter; - //! \~english Value for elide at right - //! \~russian Значение для пропуска справа + //! \~english Value for elide at right. + //! \~russian Значение для пропуска справа. static const float ElideRight ; PIString & operator +=(const PIChar & c) {d.push_back(c); return *this;} @@ -72,23 +72,24 @@ public: PIString & operator +=(const PIByteArray & ba) {appendFromChars((const char * )ba.data(), ba.size_s(), __utf8name__); return *this;} PIString & operator +=(const PIString & str); - //! \~english Contructs a copy of string - //! \~russian Создает копию строки + //! \~english Contructs a copy of string. + //! \~russian Создает копию строки. PIString(const PIString & o) {d = o.d;} + //! \~english Move constructor. + //! \~russian Перемещающий конструктор. PIString(PIString && o): d(std::move(o.d)) {piSwap(data_, o.data_);} - - //! \~english Contructs string with single symbol "c" - //! \~russian Создает строку из одного символа "c" + //! \~english Contructs string with single character "c". + //! \~russian Создает строку из одного символа "c". PIString(const PIChar c) {*this += c;} - //! \~english Contructs string with single symbol "c" - //! \~russian Создает строку из одного символа "c" + //! \~english Contructs string with single character "c". + //! \~russian Создает строку из одного символа "c". PIString(const char c) {*this += PIChar(c);} - //! \~english Contructs string from C-string "str" (system codepage) - //! \~russian Создает строку из C-строки "str" (кодировка системы) + //! \~english Contructs string from C-string "str" (system codepage). + //! \~russian Создает строку из C-строки "str" (кодировка системы). //! \~\details //! \~english //! "str" should be null-terminated\n @@ -99,8 +100,8 @@ public: //! \endcode PIString(const char * str) {*this += str;} - //! \~english Contructs string from \c wchar_t C-string "str" - //! \~russian Создает строку из \c wchar_t C-строки "str" + //! \~english Contructs string from \c wchar_t C-string "str". + //! \~russian Создает строку из \c wchar_t C-строки "str". //! \~\details //! \~english //! "str" should be null-terminated @@ -111,32 +112,32 @@ public: //! \endcode PIString(const wchar_t * str) {*this += str;} - //! \~english Contructs string from byte array "ba" (as UTF-8) - //! \~russian Создает строку из байтового массива "ba" (как UTF-8) + //! \~english Contructs string from byte array "ba" (as UTF-8). + //! \~russian Создает строку из байтового массива "ba" (как UTF-8). PIString(const PIByteArray & ba) {*this += ba;} - //! \~english Contructs string from "len" characters of buffer "str" - //! \~russian Создает строку из "len" символов массива "str" + //! \~english Contructs string from "len" characters of buffer "str". + //! \~russian Создает строку из "len" символов массива "str". PIString(const PIChar * str, const int len): d(str, size_t(len)) {} - //! \~english Contructs string from "len" characters of buffer "str" (system codepage) - //! \~russian Создает строку из "len" символов массива "str" (кодировка системы) + //! \~english Contructs string from "len" characters of buffer "str" (system codepage). + //! \~russian Создает строку из "len" символов массива "str" (кодировка системы). //! \~\details //! \~\code //! PIString s("string", 3); // s = "str" //! \endcode PIString(const char * str, const int len) {appendFromChars(str, len);} - //! \~english Contructs string as sequence of characters "c" of buffer with length "len" - //! \~russian Создает строку как последовательность длиной "len" символа "c" + //! \~english Contructs string as sequence of characters "c" of buffer with length "len". + //! \~russian Создает строку как последовательность длиной "len" символа "c". //! \~\details //! \~\code //! PIString s(5, 'p'); // s = "ppppp" //! \endcode PIString(const int len, const char c) {for (int i = 0; i < len; ++i) d.push_back(PIChar(c));} - //! \~english Contructs string as sequence of symbols "c" of buffer with length "len" - //! \~russian Создает строку как последовательность длиной "len" символа "c" + //! \~english Contructs string as sequence of characters "c" of buffer with length "len". + //! \~russian Создает строку как последовательность длиной "len" символа "c". //! \~\details //! \~\code //! PIString s(5, "№"); // s = "№№№№№" @@ -145,87 +146,88 @@ public: ~PIString(); - - //! \~english Assign operator - //! \~russian Оператор присваивания + //! \~english Assign operator. + //! \~russian Оператор присваивания. PIString & operator =(const PIString & o) {if (this == &o) return *this; d = o.d; return *this;} + //! \~english Assign move operator. + //! \~russian Оператор перемещающего присваивания. PIString & operator =(PIString && o) {d.swap(o.d); piSwap(data_, o.data_); return *this;} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator ==(const PIString & str) const; - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator ==(const PIChar c) const {if (d.size() != 1) return false; return d.at(0) == c;} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator ==(const char * str) const {return *this == PIString(str);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator !=(const PIString & str) const; - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator !=(const PIChar c) const {if (d.size() != 1) return true; return d.at(0) != c;} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator !=(const char * str) const {return *this != PIString(str);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator <(const PIString & str) const; - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator <(const PIChar c) const {if (d.size() != 1) return d.size() < 1; return d.at(0) < c;} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator <(const char * str) const {return *this < PIString(str);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator >(const PIString & str) const; - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator >(const PIChar c) const {if (d.size() != 1) return d.size() > 1; return d.at(0) > c;} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator >(const char * str) const {return *this > PIString(str);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator <=(const PIString & str) const {return !(*this > str);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator <=(const PIChar c) const {return !(*this > c);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator <=(const char * str) const {return *this <= PIString(str);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator >=(const PIString & str) const {return !(*this < str);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator >=(const PIChar c) const {return !(*this < c);} - //! \~english Compare operator - //! \~russian Оператор сравнения + //! \~english Compare operator. + //! \~russian Оператор сравнения. bool operator >=(const char * str) const {return *this >= PIString(str);} - //! \~english Append string "str" at the end of string - //! \~russian Добавляет в конец строку "str" + //! \~english Append string "str" at the end of string. + //! \~russian Добавляет в конец строку "str". //! \~\details //! \~\code //! PIString s("this"), s1(" is"), s2(" string"); @@ -233,8 +235,8 @@ public: //! \endcode PIString & operator <<(const PIString & str) {*this += str; return *this;} - //! \~english Append symbol "c" at the end of string - //! \~russian Добавляет в конец символ "c" + //! \~english Append character "c" at the end of string. + //! \~russian Добавляет в конец символ "c". //! \~\details //! \~\code //! PIString s("stri"); @@ -242,8 +244,8 @@ public: //! \endcode PIString & operator <<(const PIChar c) {d.append(c); return *this;} - //! \~english Append symbol `c` at the end of string - //! \~russian Добавляет в конец символ `c` + //! \~english Append character `c` at the end of string. + //! \~russian Добавляет в конец символ `c`. //! \~\details //! \~\code //! PIString s("stri"); @@ -251,8 +253,8 @@ public: //! \endcode PIString & operator <<(const char c) {d.append(PIChar(c)); return *this;} - //! \~english Append С-string "str" at the end of string - //! \~russian Добавляет в конец C-строку "str" + //! \~english Append С-string "str" at the end of string. + //! \~russian Добавляет в конец C-строку "str". //! \~\details //! \~\code //! PIString s("this"); @@ -260,8 +262,8 @@ public: //! \endcode PIString & operator <<(const char * str) {*this += str; return *this;} - //! \~english Append \c wchar_t C-string "str" at the end of string - //! \~russian Добавляет в конец \c wchar_t C-строку "str" + //! \~english Append \c wchar_t C-string "str" at the end of string. + //! \~russian Добавляет в конец \c wchar_t C-строку "str". //! \~\details //! \~\code //! PIString s; @@ -269,8 +271,8 @@ public: //! \endcode PIString & operator <<(const wchar_t * str) {*this += str; return *this;} - //! \~english Append string representation of "num" at the end of string - //! \~russian Добавляет в конец строковое представление "num" + //! \~english Append string representation of "num" at the end of string. + //! \~russian Добавляет в конец строковое представление "num". //! \~\details //! \~\code //! PIString s("ten - "); @@ -279,8 +281,8 @@ public: PIString & operator <<(const int & num) {*this += PIString::fromNumber(num); return *this;} PIString & operator <<(const uint & num) {*this += PIString::fromNumber(num); return *this;} - //! \~english Append string representation of "num" at the end of string - //! \~russian Добавляет в конец строковое представление "num" + //! \~english Append string representation of "num" at the end of string. + //! \~russian Добавляет в конец строковое представление "num". //! \~\details //! \~\code //! PIString s("ten - "); @@ -292,8 +294,8 @@ public: PIString & operator <<(const llong & num) {*this += PIString::fromNumber(num); return *this;} PIString & operator <<(const ullong & num) {*this += PIString::fromNumber(num); return *this;} - //! \~english Append string representation of "num" at the end of string - //! \~russian Добавляет в конец строковое представление "num" + //! \~english Append string representation of "num" at the end of string. + //! \~russian Добавляет в конец строковое представление "num". //! \~\details //! \~\code //! PIString s("1/10 - "); @@ -301,8 +303,8 @@ public: //! \endcode PIString & operator <<(const float & num) {*this += PIString::fromNumber(num); return *this;} - //! \~english Append string representation of "num" at the end of string - //! \~russian Добавляет в конец строковое представление "num" + //! \~english Append string representation of "num" at the end of string. + //! \~russian Добавляет в конец строковое представление "num". //! \~\details //! \~\code //! PIString s("1/10 - "); @@ -310,112 +312,182 @@ public: //! \endcode PIString & operator <<(const double & num) {*this += PIString::fromNumber(num); return *this;} + //! \~english Iterator to the first element. + //! \~russian Итератор на первый элемент. + //! \~\details + //! \~\return \ref stl_iterators + //! \~\sa \a end(), \a rbegin(), \a rend() inline iterator begin() {return d.begin();} + + //! \~english Iterator to the element following the last element. + //! \~russian Итератор на элемент, следующий за последним элементом. + //! \~\details + //! \~\return \ref stl_iterators + //! \~\sa \a begin(), \a rbegin(), \a rend() inline iterator end() {return d.end();} inline const_iterator begin() const {return d.begin();} inline const_iterator end() const {return d.end();} + //! \~english Returns a reverse iterator to the first element of the reversed array. + //! \~russian Обратный итератор на первый элемент. + //! \~\details + //! \~english It corresponds to the last element of the non-reversed array. + //! \~russian Итератор для прохода массива в обратном порядке. + //! Указывает на последний элемент. + //! \~\return \ref stl_iterators + //! \~\sa \a rend(), \a begin(), \a end() inline reverse_iterator rbegin() {return d.rbegin();} + + //! \~english Returns a reverse iterator to the element. + //! following the last element of the reversed array. + //! \~russian Обратный итератор на элемент, следующий за последним элементом. + //! \~\details + //! \~english It corresponds to the element preceding the first element of the non-reversed array. + //! \~russian Итератор для прохода массива в обратном порядке. + //! Указывает на элемент, предшествующий первому элементу. + //! \~\return \ref stl_iterators + //! \~\sa \a rbegin(), \a begin(), \a end() inline reverse_iterator rend() {return d.rend();} inline const_reverse_iterator rbegin() const {return d.rbegin();} inline const_reverse_iterator rend() const {return d.rend();} + //! \~english Full access to character by `index`. + //! \~russian Полный доступ к символу по индексу `index`. + //! \~\details + //! \~english Сharacter index starts from `0`. + //! Сharacter index must be in range from `0` to `size()-1`. + //! Otherwise will be undefined behavior. + //! \~russian Индекс элемента считается от `0`. + //! Индекс символа должен лежать в пределах от `0` до `size()-1`. + //! Иначе это приведёт к неопределённому поведению программы и ошибкам памяти. inline PIChar & operator [](size_t index) {return d[index];} inline PIChar operator [](size_t index) const {return d[index];} + //! \~english Read only access to character by `index`. + //! \~russian Доступ исключительно на чтение к символу по индексу `index`. + //! \~\details + //! \~english Сharacter index starts from `0`. + //! Сharacter index must be in range from `0` to `size()-1`. + //! Otherwise will be undefined behavior. + //! \~russian Индекс символа считается от `0`. + //! Индекс символа должен лежать в пределах от `0` до `size()-1`. + //! Иначе это приведёт к неопределённому поведению программы и ошибкам памяти. inline const PIChar at(size_t index) const {return d.at(index);} + //! \~english Returns the last character of the string. + //! \~russian Возвращает последний символ строки. inline PIChar & back() {return d.back();} inline PIChar back() const {return d.back();} inline PIChar & front() {return d.front();} inline PIChar front() const {return d.front();} + //! \~english Sets size of the string, new characters are copied from `c`. + //! \~russian Устанавливает размер строки, новые символы копируются из `c`. + //! \~\details + //! \~english If `new_size` is greater than the current \a size(), + //! characters are added to the end; the new characters are initialized from `c`. + //! If `new_size` is less than the current \a size(), characters are removed from the end. + //! \~russian Если `new_size` больше чем текущий размер строки \a size(), + //! новые символы добавляются в конец строки и создаются из `с`. + //! Если `new_size` меньше чем текущий размер строки \a size(), + //! лишние символы удаляются с конца строки. + //! \~\sa \a size(), \a clear() inline PIString & resize(size_t new_size, PIChar c = PIChar()) {d.resize(new_size, c); return *this;} + //! \~english Delete one character at the end of string. + //! \~russian Удаляет один символ с конца строки. inline PIString & pop_back() {d.pop_back(); return *this;} + + //! \~english Delete one character at the benig of string. + //! \~russian Удаляет один символ с начала строки. inline PIString & pop_front() {d.pop_front(); return *this;} + //! \~english Removes `count` characters from the string, starting at `index` position. + //! \~russian Удаляет символы из строки, начиная с позиции `index` в количестве `count`. inline PIString & remove(size_t index, size_t count = 1) {d.remove(index, count); return *this;} + + //! \~english Assigns character 'c' to all string characters. + //! \~russian Заполняет всю строку символами `c`. inline PIString & fill(PIChar c = PIChar()) {d.fill(c); return *this;} - //! \~english Insert string "str" at the begin of string - //! \~russian Вставляет "str" в начало строки + //! \~english Insert string "str" at the begin of string. + //! \~russian Вставляет "str" в начало строки. PIString & prepend(const char * str) {insert(0, str); return *this;} - //! \~english Insert string "str" at the begin of string - //! \~russian Вставляет "str" в начало строки + //! \~english Insert string "str" at the begin of string. + //! \~russian Вставляет "str" в начало строки. PIString & prepend(const PIString & str) {d.prepend(str.d); return *this;} - //! \~english Insert symbol `c` at the begin of string - //! \~russian Вставляет символ `c` в начало строки + //! \~english Insert character `c` at the begin of string. + //! \~russian Вставляет символ `c` в начало строки. PIString & prepend(const PIChar c) {d.prepend(c); return *this;} - //! \~english Insert symbol `c` at the begin of string - //! \~russian Вставляет символ `c` в начало строки + //! \~english Insert character `c` at the begin of string. + //! \~russian Вставляет символ `c` в начало строки. PIString & prepend(const char c) {d.prepend(PIChar(c)); return *this;} - //! \~english Insert string "str" at the begin of string - //! \~russian Вставляет "str" в начало строки + //! \~english Insert string "str" at the begin of string. + //! \~russian Вставляет "str" в начало строки. PIString & push_front(const char * str) {insert(0, str); return *this;} - //! \~english Insert string "str" at the begin of string - //! \~russian Вставляет "str" в начало строки + //! \~english Insert string "str" at the begin of string. + //! \~russian Вставляет "str" в начало строки. PIString & push_front(const PIString & str) {d.push_front(str.d); return *this;} - //! \~english Insert symbol `c` at the begin of string - //! \~russian Вставляет символ `c` в начало строки + //! \~english Insert character `c` at the begin of string. + //! \~russian Вставляет символ `c` в начало строки. PIString & push_front(const PIChar c) {d.push_front(c); return *this;} - //! \~english Insert symbol `c` at the begin of string - //! \~russian Вставляет символ `c` в начало строки + //! \~english Insert character `c` at the begin of string. + //! \~russian Вставляет символ `c` в начало строки. PIString & push_front(const char c) {d.push_front(PIChar(c)); return *this;} - //! \~english Insert string "str" at the end of string - //! \~russian Вставляет "str" в конец строки + //! \~english Insert string "str" at the end of string. + //! \~russian Вставляет "str" в конец строки. PIString & append(const char * str) {*this += str; return *this;} - //! \~english Insert string "str" at the end of string - //! \~russian Вставляет "str" в конец строки + //! \~english Insert string "str" at the end of string. + //! \~russian Вставляет "str" в конец строки. PIString & append(const PIString & str) {d.append(str.d); return *this;} - //! \~english Insert symbol `c` at the end of string - //! \~russian Вставляет символ `c` в конец строки + //! \~english Insert character `c` at the end of string. + //! \~russian Вставляет символ `c` в конец строки. PIString & append(const PIChar c) {d.append(c); return *this;} - //! \~english Insert symbol `c` at the end of string - //! \~russian Вставляет символ `c` в конец строки + //! \~english Insert character `c` at the end of string. + //! \~russian Вставляет символ `c` в конец строки. PIString & append(const char c) {d.append(PIChar(c)); return *this;} - //! \~english Insert string "str" at the end of string - //! \~russian Вставляет "str" в конец строки + //! \~english Insert string "str" at the end of string. + //! \~russian Вставляет "str" в конец строки. PIString & push_back(const char * str) {*this += str; return *this;} - //! \~english Insert string "str" at the end of string - //! \~russian Вставляет "str" в конец строки + //! \~english Insert string "str" at the end of string. + //! \~russian Вставляет "str" в конец строки. PIString & push_back(const PIString & str) {d.push_back(str.d); return *this;} - //! \~english Insert symbol `c` at the end of string - //! \~russian Вставляет символ `c` в конец строки + //! \~english Insert character `c` at the end of string. + //! \~russian Вставляет символ `c` в конец строки. PIString & push_back(const PIChar c) {d.push_back(c); return *this;} - //! \~english Insert symbol `c` at the end of string - //! \~russian Вставляет символ `c` в конец строки + //! \~english Insert character `c` at the end of string. + //! \~russian Вставляет символ `c` в конец строки. PIString & push_back(const char c) {d.push_back(PIChar(c)); return *this;} - //! \~english Returns part of string from symbol at index "start" and maximum length "len" - //! \~russian Возвращает подстроку от символа "start" и максимальной длиной "len" + //! \~english Returns part of string from character at index "start" and maximum length "len". + //! \~russian Возвращает подстроку от символа "start" и максимальной длиной "len". PIString mid(const int start, const int len = -1) const; - //! \~english Synonym of \a mid() - //! \~russian Аналог \a mid() + //! \~english Synonym of \a mid(). + //! \~russian Аналог \a mid(). PIString subString(const int start, const int len = -1) const {return mid(start, len);} - //! \~english Returns part of string from start and maximum length "len" - //! \~russian Возвращает подстроку от начала и максимальной длиной "len" + //! \~english Returns part of string from start and maximum length "len". + //! \~russian Возвращает подстроку от начала и максимальной длиной "len". //! \~\details //! \~\code //! PIString s("0123456789"); @@ -427,8 +499,8 @@ public: //! \~\sa \a mid(), \a right() PIString left(const int len) const {return len <= 0 ? PIString() : mid(0, len);} - //! \~english Returns part of string at end and maximum length "len" - //! \~russian Возвращает подстроку максимальной длиной "len" и до конца + //! \~english Returns part of string at end and maximum length "len". + //! \~russian Возвращает подстроку максимальной длиной "len" и до конца. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -440,12 +512,12 @@ public: //! \~\sa \a mid(), \a left() PIString right(const int len) const {return len <= 0 ? PIString() : mid(size() - len, len);} - //! \~english Remove part of string from symbol as index "start" and maximum length "len" and return this string - //! \~russian Удаляет часть строки от символа "start" и максимальной длины "len", возвращает эту строку + //! \~english Remove part of string from character as index "start" and maximum length "len" and return this string. + //! \~russian Удаляет часть строки от символа "start" и максимальной длины "len", возвращает эту строку. PIString & cutMid(const int start, const int len); - //! \~english Remove part of string from start and maximum length "len" and return this string - //! \~russian Удаляет часть строки от начала и максимальной длины "len", возвращает эту строку + //! \~english Remove part of string from start and maximum length "len" and return this string. + //! \~russian Удаляет часть строки от начала и максимальной длины "len", возвращает эту строку. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -459,8 +531,8 @@ public: //! \~\sa \a cutMid(), \a cutRight() PIString & cutLeft(const int len) {return len <= 0 ? *this : cutMid(0, len);} - //! \~english Remove part of string at end and maximum length "len" and return this string - //! \~russian Удаляет часть строки максимальной длины "len" от конца, возвращает эту строку + //! \~english Remove part of string at end and maximum length "len" and return this string. + //! \~russian Удаляет часть строки максимальной длины "len" от конца, возвращает эту строку. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -474,12 +546,12 @@ public: //! \~\sa \a cutMid(), \a cutLeft() PIString & cutRight(const int len) {return len <= 0 ? *this : cutMid(size() - len, len);} - //! \~english Remove spaces at the start and at the end of string and return this string - //! \~russian Удаляет пробельные символы с начала и конца строки и возвращает эту строку + //! \~english Remove spaces at the start and at the end of string and return this string. + //! \~russian Удаляет пробельные символы с начала и конца строки и возвращает эту строку. PIString & trim(); - //! \~english Returns copy of this string without spaces at the start and at the end - //! \~russian Возвращает копию этой строки без пробельных символов с начала и конца + //! \~english Returns copy of this string without spaces at the start and at the end. + //! \~russian Возвращает копию этой строки без пробельных символов с начала и конца. //! \~\details //! \~\code //! PIString s(" \t string \n"); @@ -489,12 +561,12 @@ public: //! \~\sa \a trim() PIString trimmed() const; - //! \~english Replace part of string from index "from" and maximum length "len" with string "with" and return this string - //! \~russian Заменяет часть строки от символа "from" и максимальной длины "len" строкой "with", возвращает эту строку + //! \~english Replace part of string from index "from" and maximum length "len" with string "with" and return this string. + //! \~russian Заменяет часть строки от символа "from" и максимальной длины "len" строкой "with", возвращает эту строку. PIString & replace(const int from, const int count, const PIString & with); - //! \~english Replace part copy of this string from index "from" and maximum length "len" with string "with" - //! \~russian Заменяет часть копии этой строки от символа "from" и максимальной длины "len" строкой "with" + //! \~english Replace part copy of this string from index "from" and maximum length "len" with string "with". + //! \~russian Заменяет часть копии этой строки от символа "from" и максимальной длины "len" строкой "with". //! \~\details //! \~\code //! PIString s("0123456789"); @@ -504,15 +576,15 @@ public: //! \~\sa \a replace(), \a replaceAll() PIString replaced(const int from, const int count, const PIString & with) const {PIString str(*this); str.replace(from, count, with); return str;} - //! \~english Replace first founded substring "what" with string "with" and return this string - //! \~russian Заменяет первую найденную подстроку "what" строкой "with", возвращает эту строку + //! \~english Replace first founded substring "what" with string "with" and return this string. + //! \~russian Заменяет первую найденную подстроку "what" строкой "with", возвращает эту строку. PIString & replace(const PIString & what, const PIString & with, bool * ok = 0); - //! \~english Replace in string copy first founded substring "what" with string "with" - //! \~russian Заменяет в копии строки первую найденную подстроку "what" строкой "with" + //! \~english Replace in string copy first founded substring "what" with string "with". + //! \~russian Заменяет в копии строки первую найденную подстроку "what" строкой "with". //! \~\details - //! \~english If "ok" is not null, it set to "true" if something was replaced - //! \~russian Если "ok" не null, то устанавливает в "true" если замена произведена + //! \~english If "ok" is not null, it set to "true" if something was replaced. + //! \~russian Если "ok" не null, то устанавливает в "true" если замена произведена. //! \~\code //! PIString s("pip string"); //! bool ok; @@ -522,43 +594,43 @@ public: //! \~\sa \a replaced(), \a replaceAll() PIString replaced(const PIString & what, const PIString & with, bool * ok = 0) const {PIString str(*this); str.replace(what, with, ok); return str;} - //! \~english Replace all founded substrings "what" with strings "with" and return this string - //! \~russian Заменяет все найденные подстроки "what" строками "with", возвращает эту строку + //! \~english Replace all founded substrings "what" with strings "with" and return this string. + //! \~russian Заменяет все найденные подстроки "what" строками "with", возвращает эту строку. PIString & replaceAll(const PIString & what, const PIString & with); - //! \~english Replace all founded substrings "what" with symbols "with" and return this string - //! \~russian Заменяет все найденные подстроки "what" символами "with", возвращает эту строку + //! \~english Replace all founded substrings "what" with characters "with" and return this string. + //! \~russian Заменяет все найденные подстроки "what" символами "with", возвращает эту строку. PIString & replaceAll(const PIString & what, const char with); - //! \~english Replace all founded symbols "what" with symbols "with" and return this string - //! \~russian Заменяет все найденные символы "what" символами "with", возвращает эту строку + //! \~english Replace all founded characters "what" with characters "with" and return this string. + //! \~russian Заменяет все найденные символы "what" символами "with", возвращает эту строку. PIString & replaceAll(const char what, const char with); - //! \~english Replace all founded substrings "what" with strings "with" in string copy - //! \~russian Заменяет в копии строки все найденные подстроки "what" строками "with" + //! \~english Replace all founded substrings "what" with strings "with" in string copy. + //! \~russian Заменяет в копии строки все найденные подстроки "what" строками "with". //! \~\sa \a replaceAll() PIString replacedAll(const PIString & what, const PIString & with) const {PIString str(*this); str.replaceAll(what, with); return str;} - //! \~english Replace all founded substrings "what" with symbols "with" in string copy - //! \~russian Заменяет в копии строки все найденные подстроки "what" символами "with" + //! \~english Replace all founded substrings "what" with characters "with" in string copy. + //! \~russian Заменяет в копии строки все найденные подстроки "what" символами "with". //! \~\sa \a replaceAll() PIString replacedAll(const PIString & what, const char with) const {PIString str(*this); str.replaceAll(what, with); return str;} - //! \~english Replace all founded symbols "what" with symbols "with" in string copy - //! \~russian Заменяет в копии строки все найденные символы "what" символами "with" + //! \~english Replace all founded characters "what" with characters "with" in string copy. + //! \~russian Заменяет в копии строки все найденные символы "what" символами "with". //! \~\sa \a replaceAll() PIString replacedAll(const char what, const char with) const {PIString str(*this); str.replaceAll(what, with); return str;} - //! \~english Remove all founded substrings "what" and return this string - //! \~russian Удаляет все найденные подстроки "what", возвращает эту строку + //! \~english Remove all founded substrings "what" and return this string. + //! \~russian Удаляет все найденные подстроки "what", возвращает эту строку. PIString & removeAll(const PIString & str); - //! \~english Remove all founded symbols "what" and return this string - //! \~russian Удаляет все найденные символы "what", возвращает эту строку + //! \~english Remove all founded characters "what" and return this string. + //! \~russian Удаляет все найденные символы "what", возвращает эту строку. PIString & removeAll(char c) {d.removeAll(PIChar(c)); return *this;} - //! \~english Repeat content of string "times" times and return this string - //! \~russian Повторяет содержимое строки "times" раз и возвращает эту строку + //! \~english Repeat content of string "times" times and return this string. + //! \~russian Повторяет содержимое строки "times" раз и возвращает эту строку. //! \~\details //! \~\code //! PIString s(" :-) "); @@ -568,8 +640,8 @@ public: //! \~\sa \a repeated() PIString & repeat(int times) {PIString ss(*this); times--; piForTimes (times) *this += ss; return *this;} - //! \~english Returns repeated "times" times string - //! \~russian Возвращает повторённую "times" раз строку + //! \~english Returns repeated "times" times string. + //! \~russian Возвращает повторённую "times" раз строку. //! \~\details //! \~\code //! PIString s(" :-) "); @@ -579,8 +651,8 @@ public: //! \~\sa \a repeat() PIString repeated(int times) const {PIString ss(*this); return ss.repeat(times);} - //! \~english Insert symbol "c" after index "index" and return this string - //! \~russian Вставляет символ "c" после позиции "index" и возвращает эту строку + //! \~english Insert character "c" after index "index" and return this string. + //! \~russian Вставляет символ "c" после позиции "index" и возвращает эту строку. //! \~\details //! \~\code //! PIString s("pp"); @@ -589,8 +661,8 @@ public: //! \endcode PIString & insert(const int index, const PIChar c) {d.insert(index, c); return *this;} - //! \~english Insert symbol "c" after index "index" and return this string - //! \~russian Вставляет символ "c" после позиции "index" и возвращает эту строку + //! \~english Insert character "c" after index "index" and return this string. + //! \~russian Вставляет символ "c" после позиции "index" и возвращает эту строку. //! \~\details //! \~\code //! PIString s("pp"); @@ -599,8 +671,8 @@ public: //! \endcode PIString & insert(const int index, const char c) {return insert(index, PIChar(c));} - //! \~english Insert string "str" after index "index" and return this string - //! \~russian Вставляет строку "str" после позиции "index" и возвращает эту строку + //! \~english Insert string "str" after index "index" and return this string. + //! \~russian Вставляет строку "str" после позиции "index" и возвращает эту строку. //! \~\details //! \~\code //! PIString s("stg"); @@ -609,8 +681,8 @@ public: //! \endcode PIString & insert(const int index, const PIString & str); - //! \~english Insert string "str" after index "index" and return this string - //! \~russian Вставляет строку "str" после позиции "index" и возвращает эту строку + //! \~english Insert string "str" after index "index" and return this string. + //! \~russian Вставляет строку "str" после позиции "index" и возвращает эту строку. //! \~\details //! \~\code //! PIString s("stg"); @@ -619,8 +691,8 @@ public: //! \endcode PIString & insert(const int index, const char * c) {return insert(index, PIString(c));} - //! \~english Enlarge string to length "len" by addition symbols "c" at the end, and return this string - //! \~russian Увеличивает длину строки до "len" добавлением символов "c" в конец и возвращает эту строку + //! \~english Enlarge string to length "len" by addition characters "c" at the end, and return this string. + //! \~russian Увеличивает длину строки до "len" добавлением символов "c" в конец и возвращает эту строку. //! \~\details //! \~\code //! PIString s("str"); @@ -632,8 +704,8 @@ public: //! \~\sa \a expandLeftTo(), \a expandedRightTo(), \a expandedLeftTo() PIString & expandRightTo(const int len, const PIChar c) {if (len > d.size_s()) d.resize(len, c); return *this;} - //! \~english Enlarge string to length "len" by addition symbols "c" at the begin, and return this string - //! \~russian Увеличивает длину строки до "len" добавлением символов "c" в начало и возвращает эту строку + //! \~english Enlarge string to length "len" by addition characters "c" at the begin, and return this string. + //! \~russian Увеличивает длину строки до "len" добавлением символов "c" в начало и возвращает эту строку. //! \~\details //! \~\code //! PIString s("str"); @@ -645,8 +717,8 @@ public: //! \~\sa \a expandRightTo(), \a expandedRightTo(), \a expandedLeftTo() PIString & expandLeftTo(const int len, const PIChar c) {if (len > d.size_s()) insert(0, PIString(len - d.size_s(), c)); return *this;} - //! \~english Enlarge copy of this string to length "len" by addition symbols "c" at the end - //! \~russian Увеличивает длину копии этой строки до "len" добавлением символов "c" в конец + //! \~english Enlarge copy of this string to length "len" by addition characters "c" at the end. + //! \~russian Увеличивает длину копии этой строки до "len" добавлением символов "c" в конец. //! \~\details //! \~\code //! PIString s("str"); @@ -656,8 +728,8 @@ public: //! \~\sa \a expandRightTo(), \a expandLeftTo(), \a expandedLeftTo() PIString expandedRightTo(const int len, const PIChar c) const {return PIString(*this).expandRightTo(len, c);} - //! \~english Enlarge copy of this string to length "len" by addition symbols "c" at the begin - //! \~russian Увеличивает длину копии этой строки до "len" добавлением символов "c" в начало + //! \~english Enlarge copy of this string to length "len" by addition characters "c" at the begin. + //! \~russian Увеличивает длину копии этой строки до "len" добавлением символов "c" в начало. //! \~\details //! \~\code //! PIString s("str"); @@ -667,8 +739,8 @@ public: //! \~\sa \a expandRightTo(), \a expandLeftTo(), \a expandedRightTo() PIString expandedLeftTo(const int len, const PIChar c) const {return PIString(*this).expandLeftTo(len, c);} - //! \~english Add "c" symbols at the beginning and end, and return this string - //! \~russian Добавляет символ "c" в начало и конец и возвращает эту строку + //! \~english Add "c" characters at the beginning and end, and return this string. + //! \~russian Добавляет символ "c" в начало и конец и возвращает эту строку. //! \~\details //! \~\code //! PIString s("str"); @@ -678,8 +750,8 @@ public: //! \~\sa \a quoted() PIString & quote(PIChar c = PIChar('"')) {d.prepend(c); d.append(c); return *this;} - //! \~english Returns quoted copy of this string - //! \~russian Возвращает копию строки с добавленным в начало и конец символом "c" + //! \~english Returns quoted copy of this string. + //! \~russian Возвращает копию строки с добавленным в начало и конец символом "c". //! \~\details //! \~\code //! PIString s("str"); @@ -689,8 +761,8 @@ public: //! \~\sa \a quote() PIString quoted(PIChar c = PIChar('"')) {return PIString(*this).quote(c);} - //! \~english Reverse string and return this string - //! \~russian Разворачивает и возвращает эту строку + //! \~english Reverse string and return this string. + //! \~russian Разворачивает и возвращает эту строку. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -700,8 +772,8 @@ public: //! \~\sa \a reversed() PIString & reverse() {d.reverse(); return *this;} - //! \~english Reverse copy of this string - //! \~russian Разворачивает копию этой строки + //! \~english Reverse copy of this string. + //! \~russian Разворачивает копию этой строки. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -711,13 +783,13 @@ public: //! \~\sa \a reverse() PIString reversed() const {PIString ret(*this); return ret.reverse();} - //! \~english Fit string to maximum size "size" by inserting ".." at position "pos" and return this string - //! \~russian Уменьшает строку до размера "size", вставляя ".." в положение "pos" и возвращает эту строку + //! \~english Fit string to maximum size "size" by inserting ".." at position "pos" and return this string. + //! \~russian Уменьшает строку до размера "size", вставляя ".." в положение "pos" и возвращает эту строку. //! \~\sa \a elided() PIString & elide(int size, float pos = ElideCenter); - //! \~english Fit copy of this string to maximum size "size" by inserting ".." at position "pos" - //! \~russian Уменьшает копию этой строки до размера "size", вставляя ".." в положение "pos" + //! \~english Fit copy of this string to maximum size "size" by inserting ".." at position "pos". + //! \~russian Уменьшает копию этой строки до размера "size", вставляя ".." в положение "pos". //! \~\details //! \~\code //! piCout << PIString("123456789ABCDEF").elided(8, PIString::ElideLeft); // ..ABCDEF @@ -729,8 +801,8 @@ public: PIString elided(int size, float pos = ElideCenter) const {PIString str(*this); str.elide(size, pos); return str;} - //! \~english Take a part of string from symbol at index "start" and maximum length "len" and return it - //! \~russian Извлекает часть строки от символа "start" максимальной длины "len" и возвращает её + //! \~english Take a part of string from character at index "start" and maximum length "len" and return it. + //! \~russian Извлекает часть строки от символа "start" максимальной длины "len" и возвращает её. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -740,8 +812,8 @@ public: //! \~\sa \a takeLeft, \a takeRight() PIString takeMid(const int start, const int len = -1) {PIString ret(mid(start, len)); cutMid(start, len); return ret;} - //! \~english Take a part from the begin of string with maximum length "len" and return it - //! \~russian Извлекает часть строки от начала максимальной длины "len" и возвращает её + //! \~english Take a part from the begin of string with maximum length "len" and return it. + //! \~russian Извлекает часть строки от начала максимальной длины "len" и возвращает её. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -751,8 +823,8 @@ public: //! \~\sa \a takeMid(), \a takeRight() PIString takeLeft(const int len) {PIString ret(left(len)); cutLeft(len); return ret;} - //! \~english Take a part from the end of string with maximum length "len" and return it - //! \~russian Извлекает часть строки с конца максимальной длины "len" и возвращает её + //! \~english Take a part from the end of string with maximum length "len" and return it. + //! \~russian Извлекает часть строки с конца максимальной длины "len" и возвращает её. //! \~\details //! \~\code //! PIString s("0123456789"); @@ -762,69 +834,69 @@ public: //! \~\sa \a takeMid(), \a takeLeft() PIString takeRight(const int len) {PIString ret(right(len)); cutRight(len); return ret;} - //! \~english Take a symbol from the begin of this string and return it - //! \~russian Извлекает символ с начала строки и возвращает его как строку - PIString takeSymbol(); + //! \~english Take a character from the begin of this string and return it. + //! \~russian Извлекает символ с начала строки и возвращает его как строку. + PIString takecharacter(); - //! \~english Take a word from the begin of this string and return it - //! \~russian Извлекает слово с начала строки и возвращает его + //! \~english Take a word from the begin of this string and return it. + //! \~russian Извлекает слово с начала строки и возвращает его. PIString takeWord(); - //! \~english Take a word with letters, numbers and '_' symbols from the begin of this string and return it - //! \~russian Извлекает слово из букв, цифр и симолов '_' с начала строки и возвращает его + //! \~english Take a word with letters, numbers and '_' characters from the begin of this string and return it. + //! \~russian Извлекает слово из букв, цифр и симолов '_' с начала строки и возвращает его. PIString takeCWord(); - //! \~english Take a line from the begin of this string and return it - //! \~russian Извлекает строку текста (до новой строки) с начала строки и возвращает её + //! \~english Take a line from the begin of this string and return it. + //! \~russian Извлекает строку текста (до новой строки) с начала строки и возвращает её. PIString takeLine(); - //! \~english Take a number with C-format from the begin of this string and return it - //! \~russian Извлекает число в C-формате с начала строки и возвращает его как строку + //! \~english Take a number with C-format from the begin of this string and return it. + //! \~russian Извлекает число в C-формате с начала строки и возвращает его как строку. PIString takeNumber(); - //! \~english Take a range between "start" and "end" symbols from the begin of this string and return it - //! \~russian Извлекает диапазон между символами "start" и "end" с начала строки и возвращает его + //! \~english Take a range between "start" and "end" characters from the begin of this string and return it. + //! \~russian Извлекает диапазон между символами "start" и "end" с начала строки и возвращает его. PIString takeRange(const PIChar start, const PIChar end, const PIChar shield = '\\'); - //! \~english Returns string in brackets "start" and "end" symbols from the beginning - //! \~russian Возвращает строку между символами "start" и "end" с начала строки + //! \~english Returns string in brackets "start" and "end" characters from the beginning. + //! \~russian Возвращает строку между символами "start" и "end" с начала строки. PIString inBrackets(const PIChar start, const PIChar end) const; - //! \~english Returns \c char * representation of this string in system codepage - //! \~russian Возвращает \c char * представление строки в системной кодировке + //! \~english Returns \c char * representation of this string in system codepage. + //! \~russian Возвращает \c char * представление строки в системной кодировке. const char * data() const; - //! \~english Returns \c char * representation of this string in terminal codepage - //! \~russian Возвращает \c char * представление строки в кодировке консоли + //! \~english Returns \c char * representation of this string in terminal codepage. + //! \~russian Возвращает \c char * представление строки в кодировке консоли. const char * dataConsole() const; - //! \~english Returns \c char * representation of this string in UTF-8 - //! \~russian Возвращает \c char * представление строки в кодировке UTF-8 + //! \~english Returns \c char * representation of this string in UTF-8. + //! \~russian Возвращает \c char * представление строки в кодировке UTF-8. const char * dataUTF8() const; - //! \~english Returns \c char * representation of this string in ASCII - //! \~russian Возвращает \c char * представление строки в кодировке ASCII + //! \~english Returns \c char * representation of this string in ASCII. + //! \~russian Возвращает \c char * представление строки в кодировке ASCII. const char * dataAscii() const; - //! \~english Returns hash - //! \~russian Возвращает хэш + //! \~english Returns hash of string + //! \~russian Возвращает хэш строки uint hash() const; //! \~english Same as \a toUTF8(). //! \~russian Тоже самое, что \a toUTF8(). PIByteArray toByteArray() const {return toUTF8();} - //! \~english Returns \a PIByteArray contains \a dataUTF8() of this string without terminating null-char - //! \~russian Возвращает \a PIByteArray содержащий \a dataUTF8() строки без завершающего нулевого байта + //! \~english Returns \a PIByteArray contains \a dataUTF8() of this string without terminating null-char. + //! \~russian Возвращает \a PIByteArray содержащий \a dataUTF8() строки без завершающего нулевого байта. PIByteArray toUTF8() const; - //! \~english Returns \a PIByteArray contains custom charset representation of this string without terminating null-char - //! \~russian Возвращает \a PIByteArray содержащий строку в указанной кодировке без завершающего нулевого байта + //! \~english Returns \a PIByteArray contains custom charset representation of this string without terminating null-char. + //! \~russian Возвращает \a PIByteArray содержащий строку в указанной кодировке без завершающего нулевого байта. PIByteArray toCharset(const char * c) const; - //! \~english Split string with delimiter "delim" to \a PIStringList - //! \~russian Разделяет строку в \a PIStringList через разделитель "delim" + //! \~english Split string with delimiter "delim" to \a PIStringList. + //! \~russian Разделяет строку в \a PIStringList через разделитель "delim". //! \~\details //! \~\code //! PIString s("1 2 3"); @@ -833,44 +905,45 @@ public: PIStringList split(const PIString & delim) const; - //! \~english Convert each symbol in copied string to upper case - //! \~russian Преобразует каждый символ в скопированной строке в верхний регистр + //! \~english Convert each character in copied string to upper case. + //! \~russian Преобразует каждый символ в скопированной строке в верхний регистр. PIString toUpperCase() const; - //! \~english Convert each symbol in copied string to lower case - //! \~russian Преобразует каждый символ в скопированной строке в нижний регистр + //! \~english Convert each character in copied string to lower case. + //! \~russian Преобразует каждый символ в скопированной строке в нижний регистр. PIString toLowerCase() const; + // TODO: doxygen PIString toNativeDecimalPoints() const; - //! \~english Returns if string contains symbol "c" - //! \~russian Возвращает содержит ли строка символ "c" + //! \~english Returns if string contains character "c". + //! \~russian Возвращает содержит ли строка символ "c". bool contains(const char c) const {return d.contains(PIChar(c));} - //! \~english Returns if string contains substring "str" - //! \~russian Возвращает содержит ли строка подстроку "str" + //! \~english Returns if string contains substring "str". + //! \~russian Возвращает содержит ли строка подстроку "str". bool contains(const char * str) const {return contains(PIString(str));} - //! \~english Returns if string contains substring "str" - //! \~russian Возвращает содержит ли строка подстроку "str" + //! \~english Returns if string contains substring "str". + //! \~russian Возвращает содержит ли строка подстроку "str". bool contains(const PIString & str) const {return find(str) >= 0;} - //! \~english Search symbol "c" from symbol at index "start" and return first occur position - //! \~russian Ищет символ "c" от символа "start" и возвращает первое вхождение + //! \~english Search character "c" from character at index "start" and return first occur position. + //! \~russian Ищет символ "c" от символа "start" и возвращает первое вхождение. int find(const char c, const int start = 0) const; - //! \~english Search symbol "c" from symbol at index "start" and return first occur position - //! \~russian Ищет символ "c" от символа "start" и возвращает первое вхождение + //! \~english Search character "c" from character at index "start" and return first occur position. + //! \~russian Ищет символ "c" от символа "start" и возвращает первое вхождение. int find(PIChar c, const int start = 0) const {return d.indexOf(c, start);} - //! \~english Search substring "str" from symbol at index "start" and return first occur position - //! \~russian Ищет подстроку "str" от символа "start" и возвращает первое вхождение + //! \~english Search substring "str" from character at index "start" and return first occur position. + //! \~russian Ищет подстроку "str" от символа "start" и возвращает первое вхождение. int find(const PIString & str, const int start = 0) const; - //! \~english Search substring "str" from symbol at index "start" and return first occur position - //! \~russian Ищет подстроку "str" от символа "start" и возвращает первое вхождение + //! \~english Search substring "str" from character at index "start" and return first occur position. + //! \~russian Ищет подстроку "str" от символа "start" и возвращает первое вхождение. //! \~\details //! \~\code //! PIString s("012345012345"); @@ -882,12 +955,12 @@ public: //! \~\sa \a findAny(), \a findLast(), \a findAnyLast(), \a findWord(), \a findCWord(), \a findRange() int find(const char * str, const int start = 0) const {return find(PIString(str), start);} - //! \~english Search any symbol of "str" from symbol at index "start" and return first occur position - //! \~russian Ищет любой символ строки "str" от симола "start" и возвращает первое вхождение + //! \~english Search any character of "str" from character at index "start" and return first occur position. + //! \~russian Ищет любой символ строки "str" от симола "start" и возвращает первое вхождение. int findAny(const PIString & str, const int start = 0) const; - //! \~english Search any symbol of "str" from symbol at index "start" and return first occur position - //! \~russian Ищет любой символ строки "str" от симола "start" и возвращает первое вхождение + //! \~english Search any character of "str" from character at index "start" and return first occur position. + //! \~russian Ищет любой символ строки "str" от симола "start" и возвращает первое вхождение. //! \~\details //! \~\code //! piCout << PIString("1.str").findAny(".,:"); // 1 @@ -897,20 +970,20 @@ public: //! \~\sa \a find(), \a findLast(), \a findAnyLast(), \a findWord(), \a findCWord(), \a findRange() int findAny(const char * str, const int start = 0) const {return findAny(PIString(str), start);} - //! \~english Search symbol "c" from symbol at index "start" and return last occur position - //! \~russian Ищет символ "c" от символа "start" и возвращает последнее вхождение + //! \~english Search character "c" from character at index "start" and return last occur position. + //! \~russian Ищет символ "c" от символа "start" и возвращает последнее вхождение. int findLast(const char c, const int start = 0) const; - //! \~english Search symbol "c" from symbol at index "start" and return last occur position - //! \~russian Ищет символ "c" от символа "start" и возвращает последнее вхождение + //! \~english Search character "c" from character at index "start" and return last occur position. + //! \~russian Ищет символ "c" от символа "start" и возвращает последнее вхождение. int findLast(PIChar c, const int start = 0) const; - //! \~english Search substring "str" from symbol at index "start" and return last occur position - //! \~russian Ищет подстроку "str" от символа "start" и возвращает последнее вхождение + //! \~english Search substring "str" from character at index "start" and return last occur position. + //! \~russian Ищет подстроку "str" от символа "start" и возвращает последнее вхождение. int findLast(const PIString & str, const int start = 0) const; - //! \~english Search substring "str" from symbol at index "start" and return last occur position - //! \~russian Ищет подстроку "str" от символа "start" и возвращает последнее вхождение + //! \~english Search substring "str" from character at index "start" and return last occur position. + //! \~russian Ищет подстроку "str" от символа "start" и возвращает последнее вхождение. //! \~\details //! \~\code //! PIString s("012345012345"); @@ -922,12 +995,12 @@ public: //! \~\sa \a find(), \a findAny(), \a findAnyLast(), \a findWord(), \a findCWord(), \a findRange() int findLast(const char * str, const int start = 0) const {return findLast(PIString(str), start);} - //! \~english Search any symbol of "str" from symbol at index "start" and return last occur position - //! \~russian Ищет любой символ строки "str" от символа "start" и возвращает последнее вхождение + //! \~english Search any character of "str" from character at index "start" and return last occur position. + //! \~russian Ищет любой символ строки "str" от символа "start" и возвращает последнее вхождение. int findAnyLast(const PIString & str, const int start = 0) const; - //! \~english Search any symbol of "str" from symbol at index "start" and return last occur position - //! \~russian Ищет любой символ строки "str" от символа "start" и возвращает последнее вхождение + //! \~english Search any character of "str" from character at index "start" and return last occur position. + //! \~russian Ищет любой символ строки "str" от символа "start" и возвращает последнее вхождение. //! \~\details //! \~\code //! piCout << PIString(".str.0").findAnyLast(".,:"); // 4 @@ -937,20 +1010,20 @@ public: //! \~\sa \a find(), \a findAny(), \a findLast(), \a findWord(), \a findCWord(), \a findRange() int findAnyLast(const char * str, const int start = 0) const {return findAnyLast(PIString(str), start);} - //! \~english Search word "word" from symbol at index "start" and return first occur position - //! \~russian Ищет слово "word" от симола "start" и возвращает первое вхождение + //! \~english Search word "word" from character at index "start" and return first occur position. + //! \~russian Ищет слово "word" от симола "start" и возвращает первое вхождение. int findWord(const PIString & word, const int start = 0) const; - //! \~english Search C-word "word" from symbol at index "start" and return first occur position - //! \~russian Ищет C-слово "word" от симола "start" и возвращает первое вхождение + //! \~english Search C-word "word" from character at index "start" and return first occur position. + //! \~russian Ищет C-слово "word" от симола "start" и возвращает первое вхождение. int findCWord(const PIString & word, const int start = 0) const; - //! \~english Search range start between "start" and "end" symbols at index "start_index" and return first occur position - //! \~russian Ищет начало диапазона между символами "start" и "end" от симола "start" и возвращает первое вхождение + //! \~english Search range start between "start" and "end" characters at index "start_index" and return first occur position. + //! \~russian Ищет начало диапазона между символами "start" и "end" от симола "start" и возвращает первое вхождение. int findRange(const PIChar start, const PIChar end, const PIChar shield = '\\', const int start_index = 0, int * len = 0) const; - //! \~english Returns number of occurrences of symbol "c" - //! \~russian Возвращает число вхождений символа "c" + //! \~english Returns number of occurrences of character "c". + //! \~russian Возвращает число вхождений символа "c". //! \~\details //! \~\code //! piCout << PIString(".str.0").entries("."); // 2 @@ -958,8 +1031,8 @@ public: //! \endcode int entries(const PIChar c) const; - //! \~english Returns number of occurrences of symbol "c" - //! \~russian Возвращает число вхождений символа "c" + //! \~english Returns number of occurrences of character "c". + //! \~russian Возвращает число вхождений символа "c". //! \~\details //! \~\code //! piCout << PIString(".str.0").entries('.'); // 2 @@ -967,49 +1040,56 @@ public: //! \endcode int entries(char c) const {return entries(PIChar(c));} - //! \~english Returns if string starts with "str" - //! \~russian Возвращает начинается ли строка со "str" + //! \~english Returns if string starts with "str". + //! \~russian Возвращает начинается ли строка со "str". bool startsWith(const PIString & str) const; - //! \~english Returns if string ends with "str" - //! \~russian Возвращает оканчивается ли строка на "str" + //! \~english Returns if string ends with "str". + //! \~russian Возвращает оканчивается ли строка на "str". bool endsWith(const PIString & str) const; - //! \~english Returns symbols length of string - //! \~russian Возвращает длину строки в символах + //! \~english Returns characters length of string. + //! \~russian Возвращает длину строки в символах. int length() const {return d.size_s();} - //! \~english Returns symbols length of string - //! \~russian Возвращает длину строки в символах + //! \~english Returns characters length of string. + //! \~russian Возвращает длину строки в символах. size_t size() const {return d.size();} - //! \~english Returns symbols length of string - //! \~russian Возвращает длину строки в символах + //! \~english Returns characters length of string. + //! \~russian Возвращает длину строки в символах. ssize_t size_s() const {return d.size_s();} - //! \~english Returns \c true if string is empty, i.e. length = 0 - //! \~russian Возвращает \c true если строка пустая, т.е. длина = 0 + //! \~english Returns \c true if string is empty, i.e. length = 0. + //! \~russian Возвращает \c true если строка пустая, т.е. длина = 0. bool isEmpty() const {if (d.isEmpty()) return true; if (d.at(0) == PIChar()) return true; return false;} - //! \~english Returns \c true if string is not empty, i.e. length > 0 - //! \~russian Возвращает \c true если строка непустая, т.е. длина > 0 + //! \~english Returns \c true if string is not empty, i.e. length > 0. + //! \~russian Возвращает \c true если строка непустая, т.е. длина > 0. bool isNotEmpty() const {return !isEmpty();} + //! \~english Clear string, will be empty string. + //! \~russian Очищает строку, строка становится пустой. + //! \~\details + //! \~\note + //! \~english Reserved memory will not be released. + //! \~russian Зарезервированная память не освободится. + //! \~\sa \a resize() void clear() {d.clear();} - //! \~english Returns \c true if string equal "true", "yes", "on" or positive not null numeric value - //! \~russian Возвращает \c true если строка равна "true", "yes", "on" или числу > 0 + //! \~english Returns \c true if string equal "true", "yes", "on" or positive not null numeric value. + //! \~russian Возвращает \c true если строка равна "true", "yes", "on" или числу > 0. bool toBool() const; - //! \~english Returns \c char numeric value of string - //! \~russian Возвращает \c char числовое значение строки + //! \~english Returns \c char numeric value of string. + //! \~russian Возвращает \c char числовое значение строки. char toChar() const; - //! \~english Returns \c short numeric value of string in base "base" - //! \~russian Возвращает \c short числовое значение строки по основанию "base" + //! \~english Returns \c short numeric value of string in base "base". + //! \~russian Возвращает \c short числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toShort(); // 123 //! piCout << PIString("123").toShort(16); // 291 @@ -1018,11 +1098,11 @@ public: //! \endcode short toShort(int base = -1, bool * ok = 0) const {return short(toNumberBase(*this, base, ok));} - //! \~english Returns \c ushort numeric value of string in base "base" - //! \~russian Возвращает \c ushort числовое значение строки по основанию "base" + //! \~english Returns \c ushort numeric value of string in base "base". + //! \~russian Возвращает \c ushort числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toUShort(); // 123 //! piCout << PIString("123").toUShort(16); // 291 @@ -1031,11 +1111,11 @@ public: //! \endcode ushort toUShort(int base = -1, bool * ok = 0) const {return ushort(toNumberBase(*this, base, ok));} - //! \~english Returns \c int numeric value of string in base "base" - //! \~russian Возвращает \c int числовое значение строки по основанию "base" + //! \~english Returns \c int numeric value of string in base "base". + //! \~russian Возвращает \c int числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toInt(); // 123 //! piCout << PIString("123").toInt(16); // 291 @@ -1044,11 +1124,11 @@ public: //! \endcode int toInt(int base = -1, bool * ok = 0) const {return int(toNumberBase(*this, base, ok));} - //! \~english Returns \c uint numeric value of string in base "base" - //! \~russian Возвращает \c uint числовое значение строки по основанию "base" + //! \~english Returns \c uint numeric value of string in base "base". + //! \~russian Возвращает \c uint числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toUInt(); // 123 //! piCout << PIString("123").toUInt(16); // 291 @@ -1057,11 +1137,11 @@ public: //! \endcode uint toUInt(int base = -1, bool * ok = 0) const {return uint(toNumberBase(*this, base, ok));} - //! \~english Returns \c long numeric value of string in base "base" - //! \~russian Возвращает \c long числовое значение строки по основанию "base" + //! \~english Returns \c long numeric value of string in base "base". + //! \~russian Возвращает \c long числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toLong(); // 123 //! piCout << PIString("123").toLong(16); // 291 @@ -1070,11 +1150,11 @@ public: //! \endcode long toLong(int base = -1, bool * ok = 0) const {return long(toNumberBase(*this, base, ok));} - //! \~english Returns \c ulong numeric value of string in base "base" - //! \~russian Возвращает \c ulong числовое значение строки по основанию "base" + //! \~english Returns \c ulong numeric value of string in base "base". + //! \~russian Возвращает \c ulong числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toULong(); // 123 //! piCout << PIString("123").toULong(16); // 291 @@ -1083,11 +1163,11 @@ public: //! \endcode ulong toULong(int base = -1, bool * ok = 0) const {return ulong(toNumberBase(*this, base, ok));} - //! \~english Returns \c llong numeric value of string in base "base" - //! \~russian Возвращает \c llong числовое значение строки по основанию "base" + //! \~english Returns \c llong numeric value of string in base "base". + //! \~russian Возвращает \c llong числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toLLong(); // 123 //! piCout << PIString("123").toLLong(16); // 291 @@ -1096,11 +1176,11 @@ public: //! \endcode llong toLLong(int base = -1, bool * ok = 0) const {return toNumberBase(*this, base, ok);} - //! \~english Returns \c ullong numeric value of string in base "base" - //! \~russian Возвращает \c ullong числовое значение строки по основанию "base" + //! \~english Returns \c ullong numeric value of string in base "base". + //! \~russian Возвращает \c ullong числовое значение строки по основанию "base". //! \~\details - //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10 - //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10 + //! \~english If "base" < 0 then base automatically select 16 if string start with "0x", therwise 10. + //! \~russian Если "base" < 0 тогда основание автоматически принимается 16 если строка начинается с "0x", иначе 10. //! \~\code //! piCout << PIString("123").toULLong(); // 123 //! piCout << PIString("123").toULLong(16); // 291 @@ -1109,8 +1189,8 @@ public: //! \endcode ullong toULLong(int base = -1, bool * ok = 0) const {return ullong(toNumberBase(*this, base, ok));} - //! \~english Returns \c float numeric value of string - //! \~russian Возвращает \c float числовое значение строки + //! \~english Returns \c float numeric value of string. + //! \~russian Возвращает \c float числовое значение строки. //! \~\details //! \~\code //! piCout << PIString("123").toFloat(); // 123 @@ -1119,8 +1199,8 @@ public: //! \endcode float toFloat() const; - //! \~english Returns \c double numeric value of string - //! \~russian Возвращает \c double числовое значение строки + //! \~english Returns \c double numeric value of string. + //! \~russian Возвращает \c double числовое значение строки. //! \~\details //! \~\code //! piCout << PIString("123").toDouble(); // 123 @@ -1129,8 +1209,8 @@ public: //! \endcode double toDouble() const; - //! \~english Returns \c ldouble numeric value of string - //! \~russian Возвращает \c ldouble числовое значение строки + //! \~english Returns \c ldouble numeric value of string. + //! \~russian Возвращает \c ldouble числовое значение строки. //! \~\details //! \~\code //! piCout << PIString("123").toLDouble(); // 123 @@ -1139,8 +1219,8 @@ public: //! \endcode ldouble toLDouble() const; - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1151,8 +1231,8 @@ public: //! \endcode PIString & setNumber(const short value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1163,8 +1243,8 @@ public: //! \endcode PIString & setNumber(const ushort value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1175,8 +1255,8 @@ public: //! \endcode PIString & setNumber(const int value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1187,8 +1267,8 @@ public: //! \endcode PIString & setNumber(const uint value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1199,8 +1279,8 @@ public: //! \endcode PIString & setNumber(const long value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1211,8 +1291,8 @@ public: //! \endcode PIString & setNumber(const ulong value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1223,8 +1303,8 @@ public: //! \endcode PIString & setNumber(const llong & value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" in base "base" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку + //! \~english Set string content to text representation of "value" in base "base" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" по основанию "base" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1235,8 +1315,8 @@ public: //! \endcode PIString & setNumber(const ullong & value, int base = 10, bool * ok = 0) {*this = PIString::fromNumber(value, base, ok); return *this;} - //! \~english Set string content to text representation of "value" with format "format" and precision "precision" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" в формате "format" и точностью "precision" и возвращает эту строку + //! \~english Set string content to text representation of "value" with format "format" and precision "precision" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" в формате "format" и точностью "precision" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1253,8 +1333,8 @@ public: //! \endcode PIString & setNumber(const float value, char format = 'f', int precision = 8) {*this = PIString::fromNumber(value, format, precision); return *this;} - //! \~english Set string content to text representation of "value" with format "format" and precision "precision" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" в формате "format" и точностью "precision" и возвращает эту строку + //! \~english Set string content to text representation of "value" with format "format" and precision "precision" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" в формате "format" и точностью "precision" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1271,8 +1351,8 @@ public: //! \endcode PIString & setNumber(const double & value, char format = 'f', int precision = 8) {*this = PIString::fromNumber(value, format, precision); return *this;} - //! \~english Set string content to text representation of "value" with format "format" and precision "precision" and return this string - //! \~russian Устанавливает содержимое строки в текстовое представление "value" в формате "format" и точностью "precision" и возвращает эту строку + //! \~english Set string content to text representation of "value" with format "format" and precision "precision" and return this string. + //! \~russian Устанавливает содержимое строки в текстовое представление "value" в формате "format" и точностью "precision" и возвращает эту строку. //! \~\details //! \~\code //! PIString s; @@ -1289,13 +1369,13 @@ public: //! \endcode PIString & setNumber(const ldouble & value, char format = 'f', int precision = 8) {*this = PIString::fromNumber(value, format, precision); return *this;} - //! \~english Set string content to human readable size in B/kB/MB/GB/TB/PB - //! \~russian Устанавливает содержимое в строку с читаемым размером B/kB/MB/GB/TB/PB + //! \~english Set string content to human readable size in B/kB/MB/GB/TB/PB. + //! \~russian Устанавливает содержимое в строку с читаемым размером B/kB/MB/GB/TB/PB. //! \~\sa PIString::readableSize() PIString & setReadableSize(llong bytes); - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1303,8 +1383,8 @@ public: //! \endcode static PIString fromNumber(const short value, int base = 10, bool * ok = 0) {return fromNumberBaseS(llong(value), base, ok);} - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1312,8 +1392,8 @@ public: //! \endcode static PIString fromNumber(const ushort value, int base = 10, bool * ok = 0) {return fromNumberBaseU(ullong(value), base, ok);} - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1321,8 +1401,8 @@ public: //! \endcode static PIString fromNumber(const int value, int base = 10, bool * ok = 0) {return fromNumberBaseS(llong(value), base, ok);} - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1330,8 +1410,8 @@ public: //! \endcode static PIString fromNumber(const uint value, int base = 10, bool * ok = 0) {return fromNumberBaseU(ullong(value), base, ok);} - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1339,8 +1419,8 @@ public: //! \endcode static PIString fromNumber(const long value, int base = 10, bool * ok = 0) {return fromNumberBaseS(llong(value), base, ok);} - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1348,8 +1428,8 @@ public: //! \endcode static PIString fromNumber(const ulong value, int base = 10, bool * ok = 0) {return fromNumberBaseU(ullong(value), base, ok);} - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1357,8 +1437,8 @@ public: //! \endcode static PIString fromNumber(const llong & value, int base = 10, bool * ok = 0) {return fromNumberBaseS(value, base, ok);} - //! \~english Returns string contains numeric representation of "value" in base "base" - //! \~russian Возвращает строковое представление числа "value" по основанию "base" + //! \~english Returns string contains numeric representation of "value" in base "base". + //! \~russian Возвращает строковое представление числа "value" по основанию "base". //! \~\details //! \~\code //! piCout << PIString::fromNumber(123); // 123 @@ -1366,8 +1446,8 @@ public: //! \endcode static PIString fromNumber(const ullong & value, int base = 10, bool * ok = 0) {return fromNumberBaseU(value, base, ok);} - //! \~english Returns string contains numeric representation of "value" with format "format" and precision "precision" - //! \~russian Возвращает строковое представление числа "value" в формате "format" и точностью "precision" + //! \~english Returns string contains numeric representation of "value" with format "format" and precision "precision". + //! \~russian Возвращает строковое представление числа "value" в формате "format" и точностью "precision". //! \~\details //! \~\code //! piCout << PIString::fromNumber(12.3); // 12.30000000 @@ -1378,8 +1458,8 @@ public: //! \endcode static PIString fromNumber(const float value, char format = 'f', int precision = 8) {return dtos(value, format, precision);} - //! \~english Returns string contains numeric representation of "value" with format "format" and precision "precision" - //! \~russian Возвращает строковое представление числа "value" в формате "format" и точностью "precision" + //! \~english Returns string contains numeric representation of "value" with format "format" and precision "precision". + //! \~russian Возвращает строковое представление числа "value" в формате "format" и точностью "precision". //! \~\details //! \~\code //! piCout << PIString::fromNumber(12.3); // 12.30000000 @@ -1390,8 +1470,8 @@ public: //! \endcode static PIString fromNumber(const double & value, char format = 'f', int precision = 8) {return dtos(value, format, precision);} - //! \~english Returns string contains numeric representation of "value" with format "format" and precision "precision" - //! \~russian Возвращает строковое представление числа "value" в формате "format" и точностью "precision" + //! \~english Returns string contains numeric representation of "value" with format "format" and precision "precision". + //! \~russian Возвращает строковое представление числа "value" в формате "format" и точностью "precision". //! \~\details //! \~\code //! piCout << PIString::fromNumber(12.3); // 12.30000000 @@ -1406,39 +1486,44 @@ public: //! \~russian Возвращает "true" или "false" static PIString fromBool(const bool value) {return PIString(value ? PIStringAscii("true") : PIStringAscii("false"));} - //! \~english Returns string constructed from terminal codepage - //! \~russian Возвращает строку созданную из кодировки консоли + //! \~english Returns string constructed from terminal codepage. + //! \~russian Возвращает строку созданную из кодировки консоли. static PIString fromConsole(const char * s); - //! \~english Returns string constructed from system codepage - //! \~russian Возвращает строку созданную из кодировки системы + //! \~english Returns string constructed from system codepage. + //! \~russian Возвращает строку созданную из кодировки системы. static PIString fromSystem(const char * s); - //! \~english Returns string constructed from UTF-8 - //! \~russian Возвращает строку созданную из UTF-8 + //! \~english Returns string constructed from UTF-8. + //! \~russian Возвращает строку созданную из UTF-8. static PIString fromUTF8(const char * s); - //! \~english Returns string constructed from UTF-8 - //! \~russian Возвращает строку созданную из UTF-8 + //! \~english Returns string constructed from UTF-8. + //! \~russian Возвращает строку созданную из UTF-8. static PIString fromUTF8(const PIByteArray & utf); - //! \~english Returns string constructed from ASCII - //! \~russian Возвращает строку созданную из ASCII + //! \~english Returns string constructed from ASCII. + //! \~russian Возвращает строку созданную из ASCII. static PIString fromAscii(const char * s); - //! \~english Returns string constructed from "len" chars ASCII - //! \~russian Возвращает строку созданную из "len" символов ASCII + //! \~english Returns string constructed from "len" chars ASCII. + //! \~russian Возвращает строку созданную из "len" символов ASCII. static PIString fromAscii(const char * s, int len); - //! \~english Returns string constructed from "cp" codepage - //! \~russian Возвращает строку созданную из кодировки "cp" + //! \~english Returns string constructed from "cp" codepage. + //! \~russian Возвращает строку созданную из кодировки "cp". static PIString fromCodepage(const char * s, const char * cp); - //! \~english Returns string contains human readable size in B/kB/MB/GB/TB/PB - //! \~russian Возвращает строку с читаемым размером B/kB/MB/GB/TB/PB + //! \~english Returns string contains human readable size in B/kB/MB/GB/TB/PB. + //! \~russian Возвращает строку с читаемым размером B/kB/MB/GB/TB/PB. //! \~\sa PIString::setReadableSize() static PIString readableSize(llong bytes); + //! \~english Swaps string `str` other with this string. + //! \~russian Меняет строку `str` с этой строкой. + //! \~\details + //! \~english This operation is very fast and never fails. + //! \~russian Эта операция выполняется мгновенно без копирования памяти и никогда не дает сбоев. void swap(PIString & str) { d.swap(str.d); piSwap(data_, str.data_); @@ -1469,56 +1554,53 @@ private: //! \relatesalso PICout -//! \~english Output operator to \a PICout -//! \~russian Оператор вывода в \a PICout +//! \~english Output operator to \a PICout. +//! \~russian Оператор вывода в \a PICout. PIP_EXPORT PICout operator <<(PICout s, const PIString & v); //! \relatesalso PIByteArray -//! \~english Store operator -//! \~russian Оператор сохранения +//! \~english Store operator. +//! \~russian Оператор сохранения. inline PIByteArray & operator <<(PIByteArray & s, const PIString & v) {s << v.d; return s;} //! \relatesalso PIByteArray -//! \~english Restore operator -//! \~russian Оператор извлечения +//! \~english Restore operator. +//! \~russian Оператор извлечения. inline PIByteArray & operator >>(PIByteArray & s, PIString & v) {v.d.clear(); s >> v.d; return s;} -//! \~english Returns concatenated string -//! \~russian Возвращает соединение строк +//! \~english Returns concatenated string. +//! \~russian Возвращает соединение строк. inline PIString operator +(const PIString & str, const PIString & f) {PIString s(str); s += f; return s;} -//! \~english Returns concatenated string -//! \~russian Возвращает соединение строк +//! \~english Returns concatenated string. +//! \~russian Возвращает соединение строк. inline PIString operator +(const PIString & f, const char * str) {PIString s(f); s += str; return s;} -//! \~english Returns concatenated string -//! \~russian Возвращает соединение строк +//! \~english Returns concatenated string. +//! \~russian Возвращает соединение строк. inline PIString operator +(const char * str, const PIString & f) {return PIString(str) + f;} -//! \~english Returns concatenated string -//! \~russian Возвращает соединение строк +//! \~english Returns concatenated string. +//! \~russian Возвращает соединение строк. inline PIString operator +(const char c, const PIString & f) {return PIChar(c) + f;} -//! \~english Returns concatenated string -//! \~russian Возвращает соединение строк +//! \~english Returns concatenated string. +//! \~russian Возвращает соединение строк. inline PIString operator +(const PIString & f, const char c) {return f + PIChar(c);} //! \relatesalso PIString -//! \~english Compare two version strings in free notation and returns 0, -1 or 1 -//! \~russian Сравнивает две строки с версиями в произвольной форме и возвращает 0, -1 или 1 +//! \~english Compare two version strings in free notation and returns 0, -1 or 1. +//! \~russian Сравнивает две строки с версиями в произвольной форме и возвращает 0, -1 или 1. int PIP_EXPORT versionCompare(const PIString & v0, const PIString & v1, int components = 6); //! \relatesalso PIString -//! \~english Converts version string in free notation to classic view -//! \~russian Преобразует строку с версией в произвольной форме к классическому виду +//! \~english Converts version string in free notation to classic view. +//! \~russian Преобразует строку с версией в произвольной форме к классическому виду. PIString PIP_EXPORT versionNormalize(const PIString & v); - -//! \~english Returns hash of string -//! \~russian Возвращает хэш строки template<> inline uint piHash(const PIString & s) {return s.hash();} template<> inline void piSwap(PIString & f, PIString & s) { diff --git a/main.cpp b/main.cpp index d04be35c..ea4672bd 100644 --- a/main.cpp +++ b/main.cpp @@ -29,7 +29,7 @@ int main(int argc, char * argv[]) { })); kbd.start(); WAIT_FOR_EXIT;*/ - return 0; + //return 0; static const int cc = 1000000; PITimeMeasurer tm; int l = 0;