iterator of libchise (Re: libchise on Mac OS X)
守岡知彦 / MORIOKA Tomohiko
tomo @ kanji.zinbun.kyoto-u.ac.jp
2003年 10月 9日 (木) 17:16:53 JST
浦島フォローで申し訳ないのですが、
>>>>> In [chise-ja : No.00202]
>>>>> "江渡さん" = Kouichirou Eto <2003 @ eto.com> wrote:
江渡さん> なんとなくlibchiseへの要望とか書いてもいいでしょうか。
江渡さん> char_attribute_alist に相当する動作が入っているとうれしいで
江渡さん> す。
の前段階として、char-attribute-list 相当を作ってます(大体できました
(現実逃避活動の成果です(^_^;;;))。
今の実装は
int
chise_ds_char_feature_name_iterate (CHISE_DS *ds,
int (*func) (CHISE_DS *ds,
unsigned char *name))
という界面をしてます。func の第2引数に素性名が渡ります。また、func が
0 じゃない値を返すと、その時点で繰り返しを中断します。
別解としては、
fnset = 素性名集合オブジェクトをopen (ds);
while (素性名集合から素性名をget (fnset, buf) != NULL)
{
作業 ...
}
素性名集合オブジェクトをclose (fnset);
というのもあると思います。
char-attribute-alist 相当に関しても、
int
chise_ds_char_feature_iterate (CHISE_DS *ds, CHISE_Char_ID cid,
int (*func) (CHISE_Char_ID cid,
CHISE_Feature feature,
CHISE_Value *valdatum))
みたいな感じで良いでしょうか?
;; うーむ、chise_char_feature_value_iterate と紛らわしい。(^_^;;
ちなみに、char-attribute-alist 相当の場合、別解スタイルはちょっと実装
が難しいかも。
ところで、これを書いてて思ったんですが、iterator 系の名前、
対象物_foreach_操作対象
に変えても良いですか?
この場合、例えば、chise_char_feature_value_iterate は
chise_feature_foreach_char_with_value
に、char-attribute-alist 相当は
chise_ds_char_foreach_feature_with_value
に、char-attribute-list 相当は
chise_ds_foreach_feature_name
という感じになります。
ご意見お待ちしてます。
--
===『幾千億の分子に分かれても ========================================
決して忘れない。
この宇宙が終るまで』 守岡 知彦 (MORIOKA Tomohiko)
====================== Email: <tomo @ kanji.zinbun.kyoto-u.ac.jp> ======
More information about the CHISE-ja
mailing list