Main Page   Modules   Data Structures   Globals   Appendix  

エラー処理
[MISC API]

m17n ライブラリのエラー処理. [詳細]

列挙型

enum  MErrorCode {
  MERROR_NONE,
  MERROR_OBJECT,
  MERROR_SYMBOL,
  MERROR_MTEXT,
  MERROR_TEXTPROP,
  MERROR_CHAR,
  MERROR_CHARTABLE,
  MERROR_CHARSET,
  MERROR_CODING,
  MERROR_RANGE,
  MERROR_LANGUAGE,
  MERROR_LOCALE,
  MERROR_PLIST,
  MERROR_MISC,
  MERROR_WIN,
  MERROR_X,
  MERROR_FRAME,
  MERROR_FACE,
  MERROR_DRAW,
  MERROR_FLT,
  MERROR_FONT,
  MERROR_FONTSET,
  MERROR_FONT_OTF,
  MERROR_FONT_X,
  MERROR_FONT_FT,
  MERROR_IM,
  MERROR_DB,
  MERROR_IO,
  MERROR_DEBUG,
  MERROR_MEMORY,
  MERROR_GD,
  MERROR_MAX
}
 m17n ライブラリエラーコードの列挙. [詳細]

変数

int merror_code
 m17n ライブラリのエラーコードを保持する外部変数.
void(* m17n_memory_full_handler )(enum MErrorCode err)
 メモリ割当てエラーハンドラ.

説明

m17n ライブラリのエラー処理.

m17n ライブラリの関数では、2つの種類のエラーが起こり得る。

一つは引数のエラーである。 ライブラリの関数が妥当でない引数とともに呼ばれた場合、その関数はエラーを意味する値を返し、同時に外部変数 merror_code にゼロでない整数をセットする。

もう一つの種類はメモリ割当てエラーである。 システムが必要な量のメモリを割当てることができない場合、ライブラリ関数は外部変数 m17n_memory_full_handler が指す関数を呼ぶ。デフォルトでは、関数 default_error_handle() を指しており、この関数は単に exit () を呼ぶ。


列挙型

enum MErrorCode

m17n ライブラリエラーコードの列挙.

m17n ライブラリエラーコードの列挙

ライブラリの関数が妥当でない引数とともに呼ばれた場合には、変数 merror_code をこれらの値のどれかにセットする。すべてのエラーコードは正の整数である。

メモリ割当てエラーの際には、外部変数 m17n_memory_full_handler の指す関数が、これらの値のうちのどれかを引数として呼ばれる。


変数

メモリ割当てエラーハンドラ.

変数 m17n_memory_full_handler は、ライブラリ関数がメモリ割当てに失敗した際に呼ぶべき関数へのポインタである。 errenum MErrorCode のうちのいずれかであり、どのライブラリ関数でエラーが起ったかを示す。

初期設定では、この変数は単に exit()err を引数として呼ぶ関数を指している。

これとは異なるエラー処理を必要とするアプリケーションは、この変数を適当な関数に設定することで、目的を達成できる。

m17n ライブラリのエラーコードを保持する外部変数.

外部変数 merror_code は、m17n ライブラリのエラーコードを保持する。 ライブラリ関数が妥当でない引数とともに呼ばれた際には、この変数を enum MErrorCode の一つにセットする。

この変数の初期値は 0 である。


このページの先頭

Main Page   Modules   Data Structures   Globals   Appendix  

mulemark