構造体 テンプレート langedge::mbs_traits_base< Coding_System >

マルチバイト文字(列)に関する特性およびヘルパ関数群の基本クラステンプレート. [詳細]

#include <mbs_traits.hpp>

langedge::mbs_traits_base< Coding_System >に対する継承グラフ

Inheritance graph
[凡例]
すべてのメンバ一覧

Static Public メソッド

static bool is_single_byte (unsigned char ch)
 単バイト文字か.
static bool is_first_byte (unsigned char ch)
 多バイト文字の1バイト目か.
static bool is_second_byte (unsigned char ch)
 多バイト文字の2バイト目になりうる文字か.
static bool is_proper_second_byte (unsigned char ch)
 多バイト文字の2バイト目であることが確実に分かる文字か.
static bool is_last_byte (unsigned char ch)
 多バイト文字の最終バイトか.
static bool is_word_char (unsigned char ch)
 多バイト文字のの1バイト目あるいは単バイト英数字か (つまり単語構成文字か).
static unsigned long sbc_to_dbc (unsigned char ch)
 単バイト文字(いわゆる半角)を2バイト文字(いわゆる全角)に変換する.
static size_t count_bytes (const char *point)
 文字を構成するバイト数を返す.
static bool is_valid_point (const char *begin, const char *point)
 マルチバイト文字列中のポイントが文字の先頭を指しているかどうか調べる.
static const char * mb_move_point (const char *begin, const char *end, const char *point, int distance)
 point 位置からdistance文字分移動する.

説明

template<class Coding_System>
struct langedge::mbs_traits_base< Coding_System >

マルチバイト文字(列)に関する特性およびヘルパ関数群の基本クラステンプレート.

コード系ごとに特殊化する。


関数

template<class Coding_System>
static bool langedge::mbs_traits_base< Coding_System >::is_single_byte unsigned char  ch  )  [inline, static]
 

単バイト文字か.

引数:
ch マルチバイト文字列中の1バイト
戻り値:
true ch は単バイト文字である
false ch は単バイト文字ではない

template<class Coding_System>
static bool langedge::mbs_traits_base< Coding_System >::is_first_byte unsigned char  ch  )  [inline, static]
 

多バイト文字の1バイト目か.

引数:
ch マルチバイト文字列中の1バイト
戻り値:
true ch は多バイト文字の第1バイトの構成素である
false ch は単バイト文字であるか、 または多バイト文字の第1バイト以外の構成素である

template<class Coding_System>
static bool langedge::mbs_traits_base< Coding_System >::is_second_byte unsigned char  ch  )  [inline, static]
 

多バイト文字の2バイト目になりうる文字か.

引数:
ch マルチバイト文字列中の1バイト
戻り値:
true ch は多バイト文字の第2バイトの構成素でありうる
false ch は単バイト文字であるか、 または多バイト文字の第2バイト以外の構成素である

template<class Coding_System>
static bool langedge::mbs_traits_base< Coding_System >::is_proper_second_byte unsigned char  ch  )  [inline, static]
 

多バイト文字の2バイト目であることが確実に分かる文字か.

多バイト文字の1バイト目ではないことが保証されているときに、 2バイト目であることが確実に分かる文字かどうかを調べる。

引数:
ch マルチバイト文字列中の1バイト
戻り値:
true ch は確実に多バイト文字の第2バイトの構成素である
false ch は単バイト文字 または多バイト文字の第2バイト以外の構成素にもなりうる

template<class Coding_System>
static bool langedge::mbs_traits_base< Coding_System >::is_last_byte unsigned char  ch  )  [inline, static]
 

多バイト文字の最終バイトか.

引数:
ch マルチバイト文字列中の1バイト
戻り値:
true ch は多バイト文字の最終バイトの構成素である
false ch は単バイト文字であるか、 または多バイト文字の最終バイト以外の構成素である

template<class Coding_System>
static bool langedge::mbs_traits_base< Coding_System >::is_word_char unsigned char  ch  )  [inline, static]
 

多バイト文字のの1バイト目あるいは単バイト英数字か (つまり単語構成文字か).

引数:
ch マルチバイト文字列中の1バイト

template<class Coding_System>
static unsigned long langedge::mbs_traits_base< Coding_System >::sbc_to_dbc unsigned char  ch  )  [inline, static]
 

単バイト文字(いわゆる半角)を2バイト文字(いわゆる全角)に変換する.

引数:
ch 単バイト文字
戻り値:
対応する2バイト文字

template<class Coding_System>
static size_t langedge::mbs_traits_base< Coding_System >::count_bytes const char *  point  )  [inline, static]
 

文字を構成するバイト数を返す.

引数:
point マルチバイト文字列中の調査ポイント
戻り値:
文字を構成するバイト数
事後条件:
戻値は必ず 1 以上となる

template<class Coding_System>
static bool langedge::mbs_traits_base< Coding_System >::is_valid_point const char *  begin,
const char *  point
[inline, static]
 

マルチバイト文字列中のポイントが文字の先頭を指しているかどうか調べる.

引数:
begin マルチバイト文字列の先頭
point 調査位置
戻り値:
true 文字の先頭を指している
false (多バイト文字の)2バイト目以降を指している

template<class Coding_System>
static const char* langedge::mbs_traits_base< Coding_System >::mb_move_point const char *  begin,
const char *  end,
const char *  point,
int  distance
[inline, static]
 

point 位置からdistance文字分移動する.

マルチバイト文字列の中で、distance が正なら end を越えない範囲で distance文字分進める。 distance が負なら begin を越えない範囲で distance文字分戻す。

引数:
begin 先頭文字の位置
end 末尾文字の次の位置
point 移動する対象位置
distance 移動する文字数 (≠バイト数)


この構造体の説明は次のファイルから生成されました:
LangEdge ライブラリに対してFri May 6 22:43:03 2005に生成されました。  doxygen 1.4.2