Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Struct template c_regex_traits

Boost , The Boost C++ Libraries BoostBook Documentation Subset , Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Struct template c_regex_traits

boost::xpressive::c_regex_traits — Encapsaulates the standard C locale functions for use by the basic_regex<> class template.

Synopsis

// In header: <boost/xpressive/xpressive_fwd.hpp>
template<typename Char> 
struct c_regex_traits {
  // construct/copy/destruct
  c_regex_traits(locale_type const & = locale_type());
  // public member functions
  bool operator==(c_regex_traits< char_type > const &) const;
  bool operator!=(c_regex_traits< char_type > const &) const;
  string_type fold_case(char_type) const;
  locale_type imbue(locale_type);
  template<> char widen(char);
  template<> wchar_t widen(char);
  template<> unsigned char hash(char);
  template<> unsigned char hash(wchar_t);
  template<> int value(char, int);
  template<> int value(wchar_t, int);
  // public static functions
  static char_type widen(char);
  static unsigned char hash(char_type);
  static char_type translate(char_type);
  static char_type translate_nocase(char_type);
  static char_type tolower(char_type);
  static char_type toupper(char_type);
  static bool in_range(char_type, char_type, char_type);
  static bool in_range_nocase(char_type, char_type, char_type);
  template<typename FwdIter> static string_type transform(FwdIter, FwdIter);
  template<typename FwdIter> 
    static string_type transform_primary(FwdIter, FwdIter);
  template<typename FwdIter> 
    static string_type lookup_collatename(FwdIter, FwdIter);
  template<typename FwdIter> 
    static char_class_type lookup_classname(FwdIter, FwdIter, bool);
  static bool isctype(char_type, char_class_type);
  static int value(char_type, int);
  static locale_type getloc();
};

Description

c_regex_traits public construct/copy/destruct

  1. <
    c_regex_traits(locale_typeconst&loc=locale_type());
    >

    Инициализируйте объект<c_regex_traits>для использования глобального C-локала.

c_regex_traits public member functions

  1. <
    booloperator==(c_regex_traits<char_type>const&)const;
    >

    Проверка двух<c_regex_traits>объектов на равенство

    Возвращение:

    истинно.

  2. <
    booloperator!=(c_regex_traits<char_type>const&)const;
    >

    Проверяет два<c_regex_traits>объекта на неравенство

    Возврат:

    ложный.

  3. <
    string_typefold_case(char_typech)const;
    >

    Возвращает<string_type>, содержащий все символы, которые сравнивают равное огорчение с тем, который прошел. Эту функцию можно назвать только в том случае, если<has_fold_case><<c_regex_traits>>:::значениесоставляет<true>.

    Параметры:

    <ch>

Возвращается:

<string_type>содержит все заклинатели, равные<ch>при игнорировании случая

  • <
    locale_typeimbue(locale_typeloc);
    >

    No-op

  • <
    template<>charwiden(charch);
    >
  • <
    template<>wchar_twiden(charch);
    >
  • <
    template<>unsignedcharhash(charch);
    >
  • <
    template<>unsignedcharhash(wchar_tch);
    >
  • <
    template<>intvalue(charch,intradix);
    >
  • <
    template<>intvalue(wchar_tch,intradix);
    >
  • c_regex_traits public static functions

    1. <
      staticchar_typewiden(charch);
      >

      Преобразовать шар в шар

      Параметры:

      Возвращение:

      ch, если Char является char, std::btowc(ch), если Char является wchar_t.

  • <
    staticunsignedcharhash(char_typech);
    >

    Возвращает значение хэша для Char в диапазоне [0, UCHAR_MAX]

    Параметры:

    Возврат:

    значение между 0 и UCHAR_MAX, включительно.

  • <
    staticchar_typetranslate(char_typech);
    >

    No-op

    Параметры:

    <ch>

    Возвращение:

  • <
    staticchar_typetranslate_nocase(char_typech);
    >

    Преобразует символ в нижний регистр, используя текущую глобальную локальность C.

    Параметры:

    <ch>

    Возвращение:

    std::tolower(ch) if Char is char, std::towlower(ch) if Char is wchar_t.

  • <
    staticchar_typetolower(char_typech);
    >

    Преобразует символ в нижний регистр, используя текущую глобальную локальность C.

    Параметры:

    <ch><ch>

    <ch>

    Характер источника.

    Возвращение:

    std::tolower(ch) if Char is char, std::towlower(ch) if Char is wchar_t.

  • <
    staticchar_typetoupper(char_typech);
    >

    Преобразует персонажа в верхний регистр, используя текущую глобальную локальность C.

    Параметры:

    Возвращение:

    std::toupper(ch) if Char is char, std::towupper(ch) if Char is wchar_t.

  • <
    staticboolin_range(char_typefirst,char_typelast,char_typech);
    >

    Проверяет, находится ли персонаж в пределах диапазона символов.

    Параметры:

    <first>

    Нижняя часть диапазона, включительно.

    <last>

    Верхняя часть диапазона, включительно.

    Возвращение:

    первый<= ch && ch<= последний.

  • <
    staticboolin_range_nocase(char_typefirst,char_typelast,char_typech);
    >

    Проверяет, находится ли персонаж в пределах диапазона символов, независимо от случая.

    [Note]Примечание

    Реализация по умолчанию не делает правильное складывание корпуса Unicode, но это лучшее, что мы можем сделать со стандартными функциями C locale.

    Параметры:

    [[] [[

    [] [

    ] [

    ] [

    ] [

    ] [

    ] [

    ] [

    ] [[]] [

    ] [[]] [[]] [[]] [[]] [[]] [ Исходный характер.

    <first>

    Нижняя часть диапазона, включительно.

    <last>

    Верхняя часть диапазона, включительно.

    Возврат:

    в_диапазоне (первый, последний, нижний (ch)) | | в_диапазоне (первый, последний, нижний (ch)) | | в_диапазоне (первый, последний, верхний (ch))

  • <
    template<typenameFwdIter>
     staticstring_typetransform(FwdIterbegin,FwdIterend);
    >

    Возвращает ключ сортировки для последовательности символов, обозначенной диапазоном итераторов [F1, F2), так что если последовательность символов [G1, G2) сортирует перед последовательностью символов [H1, H2), то v.transform(G1, G2)< v.transform(H1, H2).

    Примечание

    В настоящее время не используется

  • <
    template<typenameFwdIter>
     staticstring_typetransform_primary(FwdIterbegin,FwdIterend);
    >

    возвращает ключ сортировки для последовательности символов, обозначенной диапазоном итераторов [F1, F2), так что если последовательность символов [G1, G2) сортирует перед последовательностью символов [H1, H2), когда случай символов не рассматривается, то v.transform_primary(G1, G2)< v.transform_primary(H1, H2).

    [Note]Примечание

    В настоящее время не используется

  • <
    template<typenameFwdIter>
     staticstring_typelookup_collatename(FwdIterbegin,FwdIterend);
    >

    Возвращает последовательность символов, которая представляет коллаирующий элемент, состоящий из последовательности символов, обозначенной диапазоном итераторов [F1, F2). Возвращает пустую строку, если последовательность символов не является действительным коллаирующим элементом.

    [Note]Примечание

    В настоящее время не используется

  • <
    template<typenameFwdIter>
     staticchar_class_type
     lookup_classname(FwdIterbegin,FwdIterend,boolicase);
    >

    Для имени класса символов, представленного заданной последовательностью символов, верните соответствующее представление битмаски.

    Параметры:

    Передний итератор к началу последовательности символов, представляющий имя класса символов.

    <end>

    Конец последовательности персонажей.

    <icase>

    Указывает, должна ли возвращенная битмаска представлять собой чувствительный к регистру вариант класса символов.

    Возвращение:

    Битмаск, представляющий класс персонажей.

  • <
    staticboolisctype(char_typech,char_class_typemask);
    >

    Тестирует символ против битмаска класса символов.

    Параметры:

    <ch>

    <mask>

    Битмаск класса символов, против которого нужно протестировать.

    Требуется:

    маска представляет собой битовую маску, возвращаемую именем lookup_classname, или представляет собой несколько таких масок, битовых или сложенных вместе.

    Возвращает:

    истинно, если символ является членом любого из указанных классов символов, ложно иначе.

  • <
    staticintvalue(char_typech,intradix);
    >

    Преобразуйте цифровой символ в целое число, которое он представляет.

    Параметры:

    <ch>

    Цифровой символ.

    <radix>

    Радикс, используемый для преобразования.

    Требуется:

    радикс является одним из 8, 10 или 16.

    Возврат:

    -1, если ch не является цифровым символом, целое значение символа в противном случае. Если char_type является char, для преобразования используется std::strtol. Если char_type wchar_t, используется std::wcstol.

  • <
    staticlocale_typegetloc();
    >

    No-op


  • PrevUpHomeNext

    Статья Struct template c_regex_traits раздела The Boost C++ Libraries BoostBook Documentation Subset Reference может быть полезна для разработчиков на c++ и boost.




    Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



    :: Главная :: Reference ::


    реклама


    ©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
    Top.Mail.Ru

    Время компиляции файла: 2024-08-30 11:47:00
    2025-05-19 19:59:40/0.031125068664551/1