データ構造 | |
struct | M17NObjectHead |
管理下オブジェクトの最初のメンバ. [詳細] | |
関数 | |
void * | m17n_object (int size, void(*freer)(void *)) |
管理下オブジェクトを割り当てる. | |
int | m17n_object_ref (void *object) |
管理下オブジェクトの参照数を 1 増やす. | |
int | m17n_object_unref (void *object) |
管理下オブジェクトの参照数を 1 減らす. |
キーが管理キーであるプロパティは、値として管理下オブジェクトだけを 取る。関数 msymbol_put() や mplist_put() などはそれらのプロパティ を特別扱いする。
定義済み管理下オブジェクトタイプの他に、ユーザは必要な管理下オブジェ クトタイプを自分で定義することができる。詳細はm17n_object() の説 明を参照。
|
関数 m17n_object() はsize バイトの新しい管理下オブジェクトを割り 当て、その参照数を 1 とする。 freer は参照数が 0 になった際にその オブジェクトを解放するために用いられる関数である。freer が NULLな らば、オブジェクトは関数 free() によって解放される。 割り当てられたオブジェクト冒頭のバイトは、M17NObjectHead が占める。 この領域は m17n ライブラリが使用するので、アプリケーションプログラ ムは触れてはならない。
|
|
関数 m17n_object_ref() は object で指される管理下オブジェクトの 参照数を 1 増やす。
|
|
関数 m17n_object_unref() は object で指される管理下オブジェクト の参照数を 1 減らす。参照数が 0 になれば、オブジェクトは解放関数に よって解放される。
|