From: tomo Date: Sat, 9 Aug 2003 08:11:57 +0000 (+0000) Subject: (test_map_func): New function. X-Git-Tag: r0_1_1-pre1~8 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=246fed97fe6c159cff21ff5c60fb0ca86d8d9da1;p=chise%2Flibchise.git (test_map_func): New function. (main): Add sample of `chise_ft_iterate'. --- diff --git a/sample.c b/sample.c index e2b9bad..b6b567f 100644 --- a/sample.c +++ b/sample.c @@ -3,11 +3,21 @@ char db_dir[] = "/usr/local/lib/chise/char-db"; int +test_map_func (CHISE_Feature_Table *db, + CHISE_Char_ID cid, CHISE_Value *valdatum) +{ + printf ("#x%04X\t(%c)\t%s\n", + cid, cid, chise_value_to_c_string (valdatum)); + return 0; +} + +int main (int argc, char* argv[]) { CHISE_DS ds; CHISE_Decoding_Table *dt_daikanwa; CHISE_Feature_Table *ft_ideographic_structure; + CHISE_Feature_Table *ft_ascii; int modemask; int accessmask = 0; DBTYPE real_subtype; @@ -66,6 +76,17 @@ main (int argc, char* argv[]) return -1; } + /* setup a feature-table */ + status = chise_open_feature_table (&ft_ascii, &ds, + "ascii", + real_subtype, accessmask, modemask); + if (status) + { + chise_close_feature_table (ft_ascii); + chise_close_data_source (&ds); + return -1; + } + /* get a feature-value of the character */ status = chise_ft_get_value (ft_ideographic_structure, char_id, &value); @@ -74,9 +95,14 @@ main (int argc, char* argv[]) else printf ("#x%X (%d)\n", char_id, status); + chise_ft_iterate (ft_ascii, &test_map_func); + chise_ft_iterate (ft_ideographic_structure, &test_map_func); + /* close the feature-table */ chise_close_feature_table (ft_ideographic_structure); + chise_close_feature_table (ft_ascii); + /* close the data-source */ chise_close_data_source (&ds);