型定義 | |
| typedef MSymbolStruct * | MSymbol |
| シンボルの型宣言. | |
関数 | |
| MSymbol | msymbol (const char *name) |
| シンボルを得る. | |
| MSymbol | msymbol_as_managing_key (const char *name) |
| 管理キーを作る. | |
| MSymbol | msymbol_exist (const char *name) |
| 指定された名前を持つシンボルを探す. | |
| char * | msymbol_name (MSymbol symbol) |
| シンボルの名前を得る. | |
| int | msymbol_put (MSymbol symbol, MSymbol key, void *val) |
| シンボルプロパティに値を設定する. | |
| void * | msymbol_get (MSymbol symbol, MSymbol key) |
| シンボルプロパティの値を得る. | |
変数 | |
| MSymbol | Mnil |
| "nil" を名前として持つシンボル. | |
| MSymbol | Mt |
| "t" を名前として持つシンボル. | |
| MSymbol | Mstring |
| "string" を名前として持つシンボル. | |
| MSymbol | Msymbol |
| "symbol" を名前として持つシンボル. | |
(void *) 型にキャストできるものなら何でもよい。「シンボル S が持つシンボルプロパティのうちキーが K のもの」を簡単に「S の K プロパティ」と呼ぶことがある。シンボルの用途は主に以下の3通りである。
|
|
MSymbol はシンボルオブジェクトの型である。内部構造はアプリケーショ ンプログラムからは見えない。 |
|
|
関数 msymbol() は name という名前を持つ正規化されたシンボルを返 す。そのようなシンボルが存在しない場合には、生成する。生成されたシ ンボルは管理キーではない。 空白文字二つで始まるシンボルは m17n ライブラリ用であり、内部的にの み用いられる。
|
|
|
関数 msymbol_as_managing_key() は名前 name を持つ新しく作られた 管理キーを返す。すでに名前 name を持つシンボルがあれば、Mnil を 返す。 空白文字二つで始まるシンボルは m17n ライブラリ用であり、内部的にの み用いられる。
|
|
|
関数 msymbol_exist() は name という名前を持つシンボルを探す。
|
|
|
関数 msymbol_name() は指定されたシンボル symbol の名前を含む文字 列へのポインタを返す。
|
|
||||||||||||||||
|
関数 msymbol_put() は、シンボル symbol 中でキーが key であるシ ンボルプロパティの値を val に設定する。そのシンボルプロパティにす でに値があれば上書きする。symbol, key とも Mnil であってはなら ない。
key が管理キーならば、val は管理下オブジェクトでなくてはならない。 この場合、古い値の参照数は
|
|
||||||||||||
|
関数 msymbol_get() は、シンボル symbol が持つシンボルプロパティ のうち、キーが key であるものを探す。もし該当するシンボルプロパティ が存在すれば、それの値を返す。そうでなければ
|
|
|
シンボル Mnil は |
|
|
シンボル Mt は |
|
|
シンボル Mstring は |
|
|
定義済みシンボル Msymbol は |
mule-aist@m17n.org