From 246fed97fe6c159cff21ff5c60fb0ca86d8d9da1 Mon Sep 17 00:00:00 2001 From: tomo Date: Sat, 9 Aug 2003 08:11:57 +0000 Subject: [PATCH] (test_map_func): New function. (main): Add sample of `chise_ft_iterate'. --- sample.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) 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); -- 1.7.10.4