1 2013-04-18 MORIOKA Tomohiko <tomo.git@chise.org>
3 * symbol.c (cos_retain_symbol): Don't use `cos_retain_object'
5 (cos_symbol_p): New function.
6 (cos_symbol_table_intern): Check type of each entry of the hash;
7 use `cos_retain_object' for the returned symbol.
8 (cos_print_symbol_table): New function.
10 * cos.c (cos_char_id): Fixed.
11 (cos_release_object): Fixed.
12 (cos_retain_cons): Don't use `cos_retain_object' recursively.
13 (cos_assoc): New function.
14 (cos_alist_get): New function.
16 2013-04-18 MORIOKA Tomohiko <tomo.git@chise.org>
18 * read.c (is_delimiter): New function.
19 (cos_read_int): Use `is_delimiter'.
20 (cos_read_string): Fixed.
21 (cos_read_symbol): New function.
22 (cos_read_object): Use `cos_read_symbol' to support symbol.
24 * cos.h (cos_symbol_p): New prototype.
25 (cos_assoc): New prototype.
26 (cos_alist_get): New prototype.
28 * cos-read.h (cos_read_symbol): New prototype.
30 2013-04-17 MORIOKA Tomohiko <tomo.git@chise.org>
32 * read.c (cos_skip_space): New function.
33 (cos_read_int): Fix to support separator.
34 (cos_read_list0): New function.
35 (cos_read_list): New function.
36 (cos_read_object): New function.
38 * print.c (cos_print_object): Fix duplicated `?' when printing a
41 * cos.h (cos_cons_p): New prototype.
43 * cos.c (cos_cons_p): New function.
44 (concord_object_get_feature_value): Use `cos_read_object'.
46 * cos-read.h (cos_read_list): New prototype.
47 (cos_read_object): New prototype.
49 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
51 * symbol.c (cos_make_symbol): Use `cos_retain_object' for
53 (cos_retain_symbol): New function.
55 * cos.c (COS_Object_retain_function_table): New variable.
56 (cos_retain_object): Call a retain-function in
57 `COS_Object_retain_function_table'.
58 (cos_retain_string): New function.
59 (cos_retain_cons): New function.
60 (cos_retain_container): New function.
61 (cos_retain_sexp): New function.
62 (cos_retain_binary): New function.
63 (cos_retain_ds): New function.
64 (cos_retain_genre): New function.
65 (cos_retain_feature): New function.
66 (cos_retain_index): New function.
67 (cos_retain_db_object): New function.
69 * cos-i.h (COS_Object_retain_function_table): New variable.
70 (cos_retain_string): New prototype.
71 (cos_retain_symbol): New prototype.
72 (cos_retain_cons): New prototype.
73 (cos_retain_container): New prototype.
74 (cos_retain_sexp): New prototype.
75 (cos_retain_binary): New prototype.
76 (cos_retain_ds): New prototype.
77 (cos_retain_genre): New prototype.
78 (cos_retain_feature): New prototype.
79 (cos_retain_index): New prototype.
80 (cos_retain_db_object): New prototype.
82 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
84 * Makefile.in (symbol-test): New target.
86 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
88 * name.c (concord_name_table_grow): Release old `table->data'.
90 * cos.h: Include <stdlib.h>.
91 (cos_Qnil): New variable.
92 (cos_Qt): New variable.
93 (cos_print_object): New prototype.
95 * symbol.c (cos_string_ent_nil): New variable.
96 (cos_symbol_ent_nil): New variable.
97 (cos_Qnil): New variable.
98 (cos_string_ent_t): New variable.
99 (cos_symbol_ent_t): New variable.
100 (cos_Qt): New variable.
101 (cos_intern): Setup `nil' and `t'.
102 (cos_symbol_table_grow): Release old `table->data'.
104 * print.c (cos_print_object): New function.
106 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
108 * cos.c (COS_Object_release_function_table): Add
110 (cos_retain_object): Use `COS_OBJECT_P' to check `obj' is a fat
112 (cos_release_object): Likewise.
113 (cos_cons): New function.
114 (cos_release_cons): New function.
115 (cos_car): New function.
116 (cos_cdr): New function.
118 * cos-i.h (enum COS_Object_Type): Add COS_Object_Type_Cons.
119 (COS_OBJECT_CONS_P): New macro.
120 (struct COS_Cons_ent): New structure.
121 (COS_CAR): New macro.
122 (COS_CDR): New macro.
123 (cos_release_cons): New prototype.
125 * cos.h (struct COS_Cons_ent): New structure.
126 (COS_Cons): New type.
127 (cos_cons): New prototype.
128 (cos_car): New prototype.
129 (cos_cdr): New prototype.
131 2013-04-15 MORIOKA Tomohiko <tomo.git@chise.org>
133 * cos.c (concord_object_get_feature_value): Use `cos_read_int' to
136 * read.c: Include <ctype.h>.
137 (cos_read_int): New function.
139 * cos-read.h (cos_read_int): New prototype.
141 2013-04-14 MORIOKA Tomohiko <tomo.git@chise.org>
143 * cos.c (cos_string_p): New function.
144 (concord_object_get_feature_value): Use `cos_read_char' and
145 `cos_read_string' to parse character and string.
147 * read.c (cos_read_string): New function.
149 * cos.h (cos_string_p): New prototype.
151 * cos-read.h: Include "cos.h".
152 (cos_read_string): New prototype.
154 2013-04-06 MORIOKA Tomohiko <tomo.git@chise.org>
156 * cos.c: Include "cos-print.h".
157 (concord_current_env): New variable.
158 (concord_open_env): Setup `concord_current_env'.
159 (concord_object_get_feature_value): New function.
161 2013-04-04 MORIOKA Tomohiko <tomo.git@chise.org>
164 - Don't include <stdlib.h>.
166 (cos_utf8_encode_char): Renamed from `cos_encode_char_as_utf8'.
167 (cos_utf8_print_char): New function.
169 * cos-print.h: Include stdlib.h and cos.h.
170 (cos_utf8_encode_char): Renamed from `cos_encode_char_as_utf8'.
171 (cos_utf8_print_char): New prototype.
173 * concord.h (concord_object_get_feature_value): New prototype.
175 2013-04-02 MORIOKA Tomohiko <tomo.git@chise.org>
179 * cos-print.h: New file.
181 * Makefile.in (OBJS): Add print.lo.
182 (print.lo): New target.
184 2013-04-01 MORIOKA Tomohiko <tomo.git@chise.org>
186 * concord.c (struct COS_DS_ent): Delete member `symbol_names'.
187 (concord_open_ds): Delete code to initialize `ds->symbol_names'.
188 (concord_close_ds): Delete code to destroy `ds->symbol_names'.
190 2013-03-30 MORIOKA Tomohiko <tomo.git@chise.org>
192 * cos-read.h: New file.
196 * symbol.c: New file.
202 * concord-bdb.c: Move code to include "config.h" into sysdep.h.
205 - Move code to include "config.h" into sysdep.h.
207 (concord_close_genre): Move prototype into cos-i.h.
208 (concord_close_feature): Likewise.
209 (concord_close_index): Likewise.
210 (struct CONCORD_Object_Header): Renamed to `COS_Object_Header';
211 moved to cos-i.h; add new member `reference_count'.
212 (CONCORD_OBJECT_TYPE_NULL): Renamed to `COS_Object_Type_NULL';
213 moved to cos-i.h; use `enum COS_Object_Type'.
214 (CONCORD_OBJECT_TYPE_C_STRING): Renamed to
215 `COS_Object_Type_C_String'; moved to cos-i.h; use `enum
217 (CONCORD_OBJECT_TYPE_INT): Renamed to `COS_Object_Type_int'; moved
218 to cos-i.h; use `enum COS_Object_Type'.
219 (CONCORD_OBJECT_TYPE_DS): Renamed to `COS_Object_Type_DS'; moved
220 to cos-i.h; use `enum COS_Object_Type'.
221 (CONCORD_OBJECT_TYPE_GENRE): Renamed to `COS_Object_Type_Genre';
222 moved to cos-i.h; use `enum COS_Object_Type'.
223 (CONCORD_OBJECT_TYPE_FEATURE): Renamed to
224 `COS_Object_Type_Feature'; moved to cos-i.h; use `enum
226 (CONCORD_OBJECT_TYPE_INDEX): Renamed to
227 `COS_Object_Type_Feature_INDEX'; moved to cos-i.h; use `enum
229 (CONCORD_OBJECT_TYPE_OBJECT): Renamed to
230 `COS_Object_Type_DB_Object'; moved to cos-i.h; use `enum
232 (struct CONCORD_DS_Table): Renamed to `struct COS_DS_ent'; add new
233 member `symbol_names'.
234 (concord_open_ds): Use `COS_ALLOCATE_OBJECT'; initialize
236 (concord_close_ds): Destroy `ds->symbol_names'.
237 (struct CONCORD_Genre_Table): Renamed to `struct COS_Genre_ent'.
238 (concord_ds_open_genre): Use `COS_ALLOCATE_OBJECT'.
239 (struct CONCORD_Feature_Table): Renamed to `struct
241 (concord_genre_open_feature): Use `COS_ALLOCATE_OBJECT'.
242 (struct CONCORD_INDEX_Table): Renamed to `struct
243 COS_Feature_INDEX_ent'.
244 (concord_genre_open_index): Use `COS_ALLOCATE_OBJECT'.
245 (concord_index_get_name): New function.
246 (concord_index_get_genre): New function.
248 * concord.h: Include <cos.h>.
249 (CONCORD_Object): Use `COS_Object' instead of `void*' as the type.
250 (COS_DS_ent): Renamed from `CONCORD_DS_Table'.
252 (CONCORD_DS): Use `COS_DS' instead of `CONCORD_DS_Table*' as the
254 (concord_open_env): New prototype.
255 (COS_Genre_ent): Renamed from `CONCORD_Genre_Table'.
256 (COS_Genre): New type.
257 (CONCORD_Genre): Use `COS_Genre' instead of `CONCORD_Genre_Table*'
259 (concord_get_genre): New prototype.
260 (COS_Feature_ent): Renamed from `CONCORD_Feature_Table'.
261 (COS_Feature): New type.
262 (CONCORD_Feature): Use `COS_Feature' instead of
263 `CONCORD_Feature_Table*' as the type.
264 (concord_get_feature): New prototype.
265 (COS_Feature_INDEX_ent): Renamed from `CONCORD_INDEX_Table'.
266 (COS_Feature_INDEX): New type.
267 (CONCORD_INDEX): Use `COS_Feature_INDEX' instead of
268 `CONCORD_INDEX_Table*' as the type.
269 (concord_get_feature_index): New prototype.
270 (concord_index_get_name): New prototype.
271 (concord_index_get_genre): New prototype.
272 (concord_decode_object): New prototype.
274 * sysdep.h: Include "config.h" if `HAVE_CONFIG_H' is defined.
276 2013-03-30 MORIOKA Tomohiko <tomo.git@chise.org>
280 2013-03-29 MORIOKA Tomohiko <tomo.git@chise.org>
282 * Makefile.in (localstatedir): New variable.
283 (CONCORD_DB_PREFIX): New variable.
284 (CONCORD_DB_FORMAT_VERSION): New variable.
285 (CONCORD_DB_DIR): New variable.
286 (CONCORD_SI_DB_DIR): New variable.
287 (CONCORD_CFLAGS): New variable.
288 (HEADERS): Add cos.h.
289 (OBJS): Add cos.lo, symbol.lo and read.lo.
290 (cos.lo): New target.
291 (symbol.lo): New target.
292 (read.lo): New target.
293 (concord.lo): Depend on cos-i.h and cos.h.
295 2013-03-22 MORIOKA Tomohiko <tomo.git@chise.org>
297 * name.c (concord_hash_c_string): Use `unsigned long' instead of
298 int' as the type of return value.
300 2013-03-21 MORIOKA Tomohiko <tomo.git@chise.org>
302 * config.h.in (SIZEOF_INT): New macro.
303 (SIZEOF_LONG): New macro.
304 (SIZEOF_LONG_LONG): New macro.
305 (SIZEOF_VOID_P): New macro.
306 (BITS_PER_CHAR): New macro.
308 * configure.in: Add `AC_CHECK_SIZEOF(int)',
309 `AC_CHECK_SIZEOF(long)', `AC_CHECK_SIZEOF(long long)' and
310 `AC_CHECK_SIZEOF(void *)'.
312 2011-10-31 MORIOKA Tomohiko <tomo.git@chise.org>
314 * Makefile.in (ABI_VERSION): Update to 1:0:1.
316 * concord.c (struct CONCORD_Object_Header): New structure.
317 (CONCORD_OBJECT_TYPE_NULL): New macro.
318 (CONCORD_OBJECT_TYPE_C_STRING): New macro.
319 (CONCORD_OBJECT_TYPE_INT): New macro.
320 (CONCORD_OBJECT_TYPE_DS): New macro.
321 (CONCORD_OBJECT_TYPE_GENRE): New macro.
322 (CONCORD_OBJECT_TYPE_FEATURE): New macro.
323 (CONCORD_OBJECT_TYPE_INDEX): New macro.
324 (CONCORD_OBJECT_TYPE_OBJECT): New macro.
325 (struct CONCORD_DS_Table): Add new member `header'.
326 (concord_open_ds): Setup ds->header.
327 (struct CONCORD_Genre_Table): Add new member `header'.
328 (concord_ds_open_genre): Setup ds->header.
329 (struct CONCORD_Feature_Table): Add new member `header'.
330 (concord_genre_open_feature): Setup ds->header.
331 (struct CONCORD_INDEX_Table): Add new member `header'.
332 (concord_genre_open_index): Setup ds->header.
334 2012-07-07 MORIOKA Tomohiko <tomo.git@chise.org>
336 * configure.in: Support db5 in Fink.
338 2012-04-25 MORIOKA Tomohiko <tomo.git@chise.org>
340 * README.en (Reporting Bugs): Modify for
341 chise-{en|ja}@lists.chise.org.
343 2012-04-09 MORIOKA Tomohiko <tomo.git@chise.org>
345 * README.en: Remove descriptions about CVS and add description
346 about the new Git repository.
348 2012-02-08 MORIOKA Tomohiko <tomo@zinbun.kyoto-u.ac.jp>
351 - Don't use "AC_CHECK_FUNCS(strnlen)".
352 - When $ac_cv_func_strnlen_working = "yes", define HAVE_STRNLEN.
354 2011-08-24 MORIOKA Tomohiko <tomo@zinbun.kyoto-u.ac.jp>
356 * Makefile.in (CFLAGS): Add $(DEFS).
359 2010-06-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
361 * Concord 0.0.2 released.
363 * configure.in: Update version to 0.0.2.
365 2008-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
367 * configure.in: Add settings for --with-site-includes=PATH and
368 --with-site-libraries=PATH.
371 2008-05-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
373 * Concord 0.0.1 released.
375 2008-01-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
377 * Makefile.in (MKDIR): New variable.
378 (install.h): Make $(INCLUDE_INSTALLDIR).
379 (install.libs): Make $(LIB_INSTALLDIR).
381 2006-12-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
383 * configure.in: Update version to 0.0.1.
385 * Makefile.in (libconcord.la): Specify `-no-undefined' to avoid
386 error on Cygwin [suggested by KAMICHI Koichi <kamichi@fonts.jp>].
387 (concord.lo): Specify `--mode=compile'.
388 (concord-bdb.lo): ditto.
390 (install.libs): Specify `--mode=install'.
393 2006-05-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
395 * Concord 0.0.0 released.
397 * Makefile.in (tar): Fixed.
399 2006-04-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
401 * concord.c (concord_ds_open_genre): Use <char*> instead of
402 <unsigned char*> for genre-name.
403 (concord_genre_open_feature): Likewise.
404 (concord_genre_open_index): Use <char*> instead of <unsigned
405 char*> for index-name.
406 (concord_genre_get_feature_0): Use <char*> instead of <unsigned
407 char*> for feature-name.
408 (struct CONCORD_DS_Table): Use <char*> instead of <unsigned char*>
409 for member `location'.
410 (concord_default_read_object): Cast to avoid warning.
411 (concord_open_ds): Use <char*> instead of <unsigned char*> for
413 (concord_ds_foreach_genre_name): Use <char*> instead of <unsigned
414 char*> for ds->location; cast to avoid warning.
415 (struct CONCORD_Genre_Table): Use <char*> instead of <unsigned
416 char*> for member `name'.
417 (concord_ds_open_genre): Use <char*> instead of <unsigned char*>
419 (concord_genre_foreach_feature_name): Use <char*> instead of
420 <unsigned char*> for ds->location.
421 (concord_genre_get_feature_0): Use <char*> instead of <unsigned
422 char*> for genre-name.
423 (concord_genre_get_feature): Use <char*> instead of <unsigned
425 (struct CONCORD_Feature_Table): Use <char*> instead of <unsigned
426 char*> for member `name'.
427 (concord_genre_open_feature): Use <char*> instead of <unsigned
428 char*> for feature-name.
429 (concord_obj_gets_feature_value): Cast to avoid warning.
430 (struct CONCORD_INDEX_Table): Use <char*> instead of <unsigned
431 char*> for member `name'.
432 (concord_genre_open_index): Use <char*> instead of <unsigned
433 char*> for index-name.
434 (concord_index_strid_put_obj): Cast to avoid warning.
436 * name.c, concord-name.h (concord_name_table_put): Use <char*>
437 instead of <unsigned char*> for key.
438 (concord_name_table_get): Likewise.
440 2006-04-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
442 * concord-bdb.c, concord-bdb.h (CONCORD_BDB_open): Use <char*>
443 instead of <unsigned char*> for db_dir, genre, key_type and name.
444 (CONCORD_BDB_get): Use <char*> instead of <unsigned char*> for
446 (CONCORD_BDB_put): Likewise.
448 * concord.c, concord.h (concord_open_ds): Use <char*> instead of
449 <unsigned char*> for location.
450 (concord_ds_location): Likewise.
451 (concord_ds_foreach_genre_name): Use <char*> instead of <unsigned
452 char*> for genre-name.
453 (concord_ds_get_genre): Likewise.
454 (concord_genre_get_name): Likewise.
455 (concord_genre_foreach_feature_name): Likewise.
456 (concord_genre_get_feature): Use <char*> instead of <unsigned
457 char*> for feature-name.
458 (concord_feature_get_name): Likewise.
459 (concord_obj_put_feature_value_str): Use <char*> instead of
460 <unsigned char*> for object-id.
461 (concord_obj_get_feature_value): Likewise.
462 (concord_obj_get_feature_value_string): Likewise.
463 (concord_obj_gets_feature_value): Likewise.
464 (concord_genre_get_index): Use <char*> instead of <unsigned char*>
466 (concord_index_strid_put_obj): Use <char*> instead of <unsigned
467 char*> for indexer and object-id.
468 (concord_index_strid_get_obj_string): Use <char*> instead of
469 <unsigned char*> for indexer.
471 2006-02-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
473 * README.en: New file.
475 2005-12-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
477 * concord.h (concord_genre_get_name): New prototype.
478 (concord_feature_get_genre): New prototype.
480 * concord.c (concord_genre_get_name): New function.
481 (concord_feature_get_genre): New function.
483 2005-06-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
485 * concord.c (concord_ds_set_object_failure): Renamed from
486 `concord_ds_set_object_nil'.
487 (concord_genre_get_feature_0): New function.
488 (concord_genre_get_feature): New implementation; use
489 `concord_genre_get_feature_0'; support feature alias.
491 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
493 * concord.h (concord_ds_set_object_failure): Renamed from
494 `concord_ds_set_object_nil'.
496 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
498 * concord.c, concord.h (concord_obj_put_feature_value_str):
499 Renamed from `concord_stroid_set_feature_str'.
500 (concord_obj_get_feature_value): Renamed from
501 `concord_stroid_get_feature_object'.
502 (concord_obj_get_feature_value_string): Renamed from
503 `concord_stroid_get_feature_string'.
504 (concord_obj_gets_feature_value): Renamed from
505 `concord_stroid_gets_feature'.
506 (concord_feature_foreach_obj_string): Renamed from
507 `concord_feature_foreach_object_string'.
508 (concord_index_strid_get_obj_string): Renamed from
509 `concord_index_strid_get_object_string'.
510 (concord_index_strid_put_obj): Renamed from
511 `concord_index_strid_set_object_str'.
513 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
515 * concord.c, concord.h (concord_close_ds): Renamed from
518 2005-06-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
520 * concord-bdb.c, concord-bdb.h, concord.c, concord.h: New files.
522 2005-06-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
524 * Makefile.in: New file.
526 2005-06-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
528 * sysdep.h: New file.
530 2005-06-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
532 * aclocal.m4, concord-name.h, config.h.in, configure.in,
533 config.guess, config.sub, install-sh, ltmain.sh, name.c: New