1 2013-04-22 MORIOKA Tomohiko <tomo.git@chise.org>
3 * Makefile.in (CONCORD_DB_FORMAT_VERSION): Changed to 1.0.
5 2013-04-21 MORIOKA Tomohiko <tomo.git@chise.org>
7 * concord.h (concord_ds_p): New prototype.
9 * cos.c (concord_ds_p): New function.
11 2013-04-21 MORIOKA Tomohiko <tomo.git@chise.org>
13 * cos.c (concord_object_get_feature_value): If
14 `concord_current_env' is not a valid CONCORD_DS object, set NULL.
16 * symbol.c (cos_release_symbol): Treat `composition' as a builtin
19 2013-04-20 MORIOKA Tomohiko <tomo.git@chise.org>
21 * cos.c (concord_decode_object): Delete printf to debug.
22 (concord_object_get_feature_value): Likewise.
24 2013-04-20 MORIOKA Tomohiko <tomo.git@chise.org>
26 * cos.h (cos_Qcomposition): New variable.
29 (COS_COMPOSITION): New macro.
31 * symbol.c (cos_string_ent_composition): New variable.
32 (cos_symbol_ent_composition): New variable.
33 (cos_Qcomposition): New variable.
34 (cos_intern): Setup `composition'.
36 2013-04-20 MORIOKA Tomohiko <tomo.git@chise.org>
38 * symbol.c (cos_release_symbol): Add check for builtin symbols.
40 2013-04-19 MORIOKA Tomohiko <tomo.git@chise.org>
42 * concord.h (CONCORD_Genre_Table): Revived as an alias of
45 2013-04-18 MORIOKA Tomohiko <tomo.git@chise.org>
47 * symbol.c (cos_retain_symbol): Don't use `cos_retain_object'
49 (cos_symbol_p): New function.
50 (cos_symbol_table_intern): Check type of each entry of the hash;
51 use `cos_retain_object' for the returned symbol.
52 (cos_print_symbol_table): New function.
54 * cos.c (cos_char_id): Fixed.
55 (cos_release_object): Fixed.
56 (cos_retain_cons): Don't use `cos_retain_object' recursively.
57 (cos_assoc): New function.
58 (cos_alist_get): New function.
60 2013-04-18 MORIOKA Tomohiko <tomo.git@chise.org>
62 * read.c (is_delimiter): New function.
63 (cos_read_int): Use `is_delimiter'.
64 (cos_read_string): Fixed.
65 (cos_read_symbol): New function.
66 (cos_read_object): Use `cos_read_symbol' to support symbol.
68 * cos.h (cos_symbol_p): New prototype.
69 (cos_assoc): New prototype.
70 (cos_alist_get): New prototype.
72 * cos-read.h (cos_read_symbol): New prototype.
74 2013-04-17 MORIOKA Tomohiko <tomo.git@chise.org>
76 * read.c (cos_skip_space): New function.
77 (cos_read_int): Fix to support separator.
78 (cos_read_list0): New function.
79 (cos_read_list): New function.
80 (cos_read_object): New function.
82 * print.c (cos_print_object): Fix duplicated `?' when printing a
85 * cos.h (cos_cons_p): New prototype.
87 * cos.c (cos_cons_p): New function.
88 (concord_object_get_feature_value): Use `cos_read_object'.
90 * cos-read.h (cos_read_list): New prototype.
91 (cos_read_object): New prototype.
93 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
95 * symbol.c (cos_make_symbol): Use `cos_retain_object' for
97 (cos_retain_symbol): New function.
99 * cos.c (COS_Object_retain_function_table): New variable.
100 (cos_retain_object): Call a retain-function in
101 `COS_Object_retain_function_table'.
102 (cos_retain_string): New function.
103 (cos_retain_cons): New function.
104 (cos_retain_container): New function.
105 (cos_retain_sexp): New function.
106 (cos_retain_binary): New function.
107 (cos_retain_ds): New function.
108 (cos_retain_genre): New function.
109 (cos_retain_feature): New function.
110 (cos_retain_index): New function.
111 (cos_retain_db_object): New function.
113 * cos-i.h (COS_Object_retain_function_table): New variable.
114 (cos_retain_string): New prototype.
115 (cos_retain_symbol): New prototype.
116 (cos_retain_cons): New prototype.
117 (cos_retain_container): New prototype.
118 (cos_retain_sexp): New prototype.
119 (cos_retain_binary): New prototype.
120 (cos_retain_ds): New prototype.
121 (cos_retain_genre): New prototype.
122 (cos_retain_feature): New prototype.
123 (cos_retain_index): New prototype.
124 (cos_retain_db_object): New prototype.
126 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
128 * Makefile.in (symbol-test): New target.
130 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
132 * name.c (concord_name_table_grow): Release old `table->data'.
134 * cos.h: Include <stdlib.h>.
135 (cos_Qnil): New variable.
136 (cos_Qt): New variable.
137 (cos_print_object): New prototype.
139 * symbol.c (cos_string_ent_nil): New variable.
140 (cos_symbol_ent_nil): New variable.
141 (cos_Qnil): New variable.
142 (cos_string_ent_t): New variable.
143 (cos_symbol_ent_t): New variable.
144 (cos_Qt): New variable.
145 (cos_intern): Setup `nil' and `t'.
146 (cos_symbol_table_grow): Release old `table->data'.
148 * print.c (cos_print_object): New function.
150 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
152 * cos.c (COS_Object_release_function_table): Add
154 (cos_retain_object): Use `COS_OBJECT_P' to check `obj' is a fat
156 (cos_release_object): Likewise.
157 (cos_cons): New function.
158 (cos_release_cons): New function.
159 (cos_car): New function.
160 (cos_cdr): New function.
162 * cos-i.h (enum COS_Object_Type): Add COS_Object_Type_Cons.
163 (COS_OBJECT_CONS_P): New macro.
164 (struct COS_Cons_ent): New structure.
165 (COS_CAR): New macro.
166 (COS_CDR): New macro.
167 (cos_release_cons): New prototype.
169 * cos.h (struct COS_Cons_ent): New structure.
170 (COS_Cons): New type.
171 (cos_cons): New prototype.
172 (cos_car): New prototype.
173 (cos_cdr): New prototype.
175 2013-04-15 MORIOKA Tomohiko <tomo.git@chise.org>
177 * cos.c (concord_object_get_feature_value): Use `cos_read_int' to
180 * read.c: Include <ctype.h>.
181 (cos_read_int): New function.
183 * cos-read.h (cos_read_int): New prototype.
185 2013-04-14 MORIOKA Tomohiko <tomo.git@chise.org>
187 * cos.c (cos_string_p): New function.
188 (concord_object_get_feature_value): Use `cos_read_char' and
189 `cos_read_string' to parse character and string.
191 * read.c (cos_read_string): New function.
193 * cos.h (cos_string_p): New prototype.
195 * cos-read.h: Include "cos.h".
196 (cos_read_string): New prototype.
198 2013-04-06 MORIOKA Tomohiko <tomo.git@chise.org>
200 * cos.c: Include "cos-print.h".
201 (concord_current_env): New variable.
202 (concord_open_env): Setup `concord_current_env'.
203 (concord_object_get_feature_value): New function.
205 2013-04-04 MORIOKA Tomohiko <tomo.git@chise.org>
208 - Don't include <stdlib.h>.
210 (cos_utf8_encode_char): Renamed from `cos_encode_char_as_utf8'.
211 (cos_utf8_print_char): New function.
213 * cos-print.h: Include stdlib.h and cos.h.
214 (cos_utf8_encode_char): Renamed from `cos_encode_char_as_utf8'.
215 (cos_utf8_print_char): New prototype.
217 * concord.h (concord_object_get_feature_value): New prototype.
219 2013-04-02 MORIOKA Tomohiko <tomo.git@chise.org>
223 * cos-print.h: New file.
225 * Makefile.in (OBJS): Add print.lo.
226 (print.lo): New target.
228 2013-04-01 MORIOKA Tomohiko <tomo.git@chise.org>
230 * concord.c (struct COS_DS_ent): Delete member `symbol_names'.
231 (concord_open_ds): Delete code to initialize `ds->symbol_names'.
232 (concord_close_ds): Delete code to destroy `ds->symbol_names'.
234 2013-03-30 MORIOKA Tomohiko <tomo.git@chise.org>
236 * cos-read.h: New file.
240 * symbol.c: New file.
246 * concord-bdb.c: Move code to include "config.h" into sysdep.h.
249 - Move code to include "config.h" into sysdep.h.
251 (concord_close_genre): Move prototype into cos-i.h.
252 (concord_close_feature): Likewise.
253 (concord_close_index): Likewise.
254 (struct CONCORD_Object_Header): Renamed to `COS_Object_Header';
255 moved to cos-i.h; add new member `reference_count'.
256 (CONCORD_OBJECT_TYPE_NULL): Renamed to `COS_Object_Type_NULL';
257 moved to cos-i.h; use `enum COS_Object_Type'.
258 (CONCORD_OBJECT_TYPE_C_STRING): Renamed to
259 `COS_Object_Type_C_String'; moved to cos-i.h; use `enum
261 (CONCORD_OBJECT_TYPE_INT): Renamed to `COS_Object_Type_int'; moved
262 to cos-i.h; use `enum COS_Object_Type'.
263 (CONCORD_OBJECT_TYPE_DS): Renamed to `COS_Object_Type_DS'; moved
264 to cos-i.h; use `enum COS_Object_Type'.
265 (CONCORD_OBJECT_TYPE_GENRE): Renamed to `COS_Object_Type_Genre';
266 moved to cos-i.h; use `enum COS_Object_Type'.
267 (CONCORD_OBJECT_TYPE_FEATURE): Renamed to
268 `COS_Object_Type_Feature'; moved to cos-i.h; use `enum
270 (CONCORD_OBJECT_TYPE_INDEX): Renamed to
271 `COS_Object_Type_Feature_INDEX'; moved to cos-i.h; use `enum
273 (CONCORD_OBJECT_TYPE_OBJECT): Renamed to
274 `COS_Object_Type_DB_Object'; moved to cos-i.h; use `enum
276 (struct CONCORD_DS_Table): Renamed to `struct COS_DS_ent'; add new
277 member `symbol_names'.
278 (concord_open_ds): Use `COS_ALLOCATE_OBJECT'; initialize
280 (concord_close_ds): Destroy `ds->symbol_names'.
281 (struct CONCORD_Genre_Table): Renamed to `struct COS_Genre_ent'.
282 (concord_ds_open_genre): Use `COS_ALLOCATE_OBJECT'.
283 (struct CONCORD_Feature_Table): Renamed to `struct
285 (concord_genre_open_feature): Use `COS_ALLOCATE_OBJECT'.
286 (struct CONCORD_INDEX_Table): Renamed to `struct
287 COS_Feature_INDEX_ent'.
288 (concord_genre_open_index): Use `COS_ALLOCATE_OBJECT'.
289 (concord_index_get_name): New function.
290 (concord_index_get_genre): New function.
292 * concord.h: Include <cos.h>.
293 (CONCORD_Object): Use `COS_Object' instead of `void*' as the type.
294 (COS_DS_ent): Renamed from `CONCORD_DS_Table'.
296 (CONCORD_DS): Use `COS_DS' instead of `CONCORD_DS_Table*' as the
298 (concord_open_env): New prototype.
299 (COS_Genre_ent): Renamed from `CONCORD_Genre_Table'.
300 (COS_Genre): New type.
301 (CONCORD_Genre): Use `COS_Genre' instead of `CONCORD_Genre_Table*'
303 (concord_get_genre): New prototype.
304 (COS_Feature_ent): Renamed from `CONCORD_Feature_Table'.
305 (COS_Feature): New type.
306 (CONCORD_Feature): Use `COS_Feature' instead of
307 `CONCORD_Feature_Table*' as the type.
308 (concord_get_feature): New prototype.
309 (COS_Feature_INDEX_ent): Renamed from `CONCORD_INDEX_Table'.
310 (COS_Feature_INDEX): New type.
311 (CONCORD_INDEX): Use `COS_Feature_INDEX' instead of
312 `CONCORD_INDEX_Table*' as the type.
313 (concord_get_feature_index): New prototype.
314 (concord_index_get_name): New prototype.
315 (concord_index_get_genre): New prototype.
316 (concord_decode_object): New prototype.
318 * sysdep.h: Include "config.h" if `HAVE_CONFIG_H' is defined.
320 2013-03-30 MORIOKA Tomohiko <tomo.git@chise.org>
324 2013-03-29 MORIOKA Tomohiko <tomo.git@chise.org>
326 * Makefile.in (localstatedir): New variable.
327 (CONCORD_DB_PREFIX): New variable.
328 (CONCORD_DB_FORMAT_VERSION): New variable.
329 (CONCORD_DB_DIR): New variable.
330 (CONCORD_SI_DB_DIR): New variable.
331 (CONCORD_CFLAGS): New variable.
332 (HEADERS): Add cos.h.
333 (OBJS): Add cos.lo, symbol.lo and read.lo.
334 (cos.lo): New target.
335 (symbol.lo): New target.
336 (read.lo): New target.
337 (concord.lo): Depend on cos-i.h and cos.h.
339 2013-03-22 MORIOKA Tomohiko <tomo.git@chise.org>
341 * name.c (concord_hash_c_string): Use `unsigned long' instead of
342 int' as the type of return value.
344 2013-03-21 MORIOKA Tomohiko <tomo.git@chise.org>
346 * config.h.in (SIZEOF_INT): New macro.
347 (SIZEOF_LONG): New macro.
348 (SIZEOF_LONG_LONG): New macro.
349 (SIZEOF_VOID_P): New macro.
350 (BITS_PER_CHAR): New macro.
352 * configure.in: Add `AC_CHECK_SIZEOF(int)',
353 `AC_CHECK_SIZEOF(long)', `AC_CHECK_SIZEOF(long long)' and
354 `AC_CHECK_SIZEOF(void *)'.
356 2011-10-31 MORIOKA Tomohiko <tomo.git@chise.org>
358 * Makefile.in (ABI_VERSION): Update to 1:0:1.
360 * concord.c (struct CONCORD_Object_Header): New structure.
361 (CONCORD_OBJECT_TYPE_NULL): New macro.
362 (CONCORD_OBJECT_TYPE_C_STRING): New macro.
363 (CONCORD_OBJECT_TYPE_INT): New macro.
364 (CONCORD_OBJECT_TYPE_DS): New macro.
365 (CONCORD_OBJECT_TYPE_GENRE): New macro.
366 (CONCORD_OBJECT_TYPE_FEATURE): New macro.
367 (CONCORD_OBJECT_TYPE_INDEX): New macro.
368 (CONCORD_OBJECT_TYPE_OBJECT): New macro.
369 (struct CONCORD_DS_Table): Add new member `header'.
370 (concord_open_ds): Setup ds->header.
371 (struct CONCORD_Genre_Table): Add new member `header'.
372 (concord_ds_open_genre): Setup ds->header.
373 (struct CONCORD_Feature_Table): Add new member `header'.
374 (concord_genre_open_feature): Setup ds->header.
375 (struct CONCORD_INDEX_Table): Add new member `header'.
376 (concord_genre_open_index): Setup ds->header.
378 2012-07-07 MORIOKA Tomohiko <tomo.git@chise.org>
380 * configure.in: Support db5 in Fink.
382 2012-04-25 MORIOKA Tomohiko <tomo.git@chise.org>
384 * README.en (Reporting Bugs): Modify for
385 chise-{en|ja}@lists.chise.org.
387 2012-04-09 MORIOKA Tomohiko <tomo.git@chise.org>
389 * README.en: Remove descriptions about CVS and add description
390 about the new Git repository.
392 2012-02-08 MORIOKA Tomohiko <tomo@zinbun.kyoto-u.ac.jp>
395 - Don't use "AC_CHECK_FUNCS(strnlen)".
396 - When $ac_cv_func_strnlen_working = "yes", define HAVE_STRNLEN.
398 2011-08-24 MORIOKA Tomohiko <tomo@zinbun.kyoto-u.ac.jp>
400 * Makefile.in (CFLAGS): Add $(DEFS).
403 2010-06-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
405 * Concord 0.0.2 released.
407 * configure.in: Update version to 0.0.2.
409 2008-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
411 * configure.in: Add settings for --with-site-includes=PATH and
412 --with-site-libraries=PATH.
415 2008-05-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
417 * Concord 0.0.1 released.
419 2008-01-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
421 * Makefile.in (MKDIR): New variable.
422 (install.h): Make $(INCLUDE_INSTALLDIR).
423 (install.libs): Make $(LIB_INSTALLDIR).
425 2006-12-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
427 * configure.in: Update version to 0.0.1.
429 * Makefile.in (libconcord.la): Specify `-no-undefined' to avoid
430 error on Cygwin [suggested by KAMICHI Koichi <kamichi@fonts.jp>].
431 (concord.lo): Specify `--mode=compile'.
432 (concord-bdb.lo): ditto.
434 (install.libs): Specify `--mode=install'.
437 2006-05-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
439 * Concord 0.0.0 released.
441 * Makefile.in (tar): Fixed.
443 2006-04-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
445 * concord.c (concord_ds_open_genre): Use <char*> instead of
446 <unsigned char*> for genre-name.
447 (concord_genre_open_feature): Likewise.
448 (concord_genre_open_index): Use <char*> instead of <unsigned
449 char*> for index-name.
450 (concord_genre_get_feature_0): Use <char*> instead of <unsigned
451 char*> for feature-name.
452 (struct CONCORD_DS_Table): Use <char*> instead of <unsigned char*>
453 for member `location'.
454 (concord_default_read_object): Cast to avoid warning.
455 (concord_open_ds): Use <char*> instead of <unsigned char*> for
457 (concord_ds_foreach_genre_name): Use <char*> instead of <unsigned
458 char*> for ds->location; cast to avoid warning.
459 (struct CONCORD_Genre_Table): Use <char*> instead of <unsigned
460 char*> for member `name'.
461 (concord_ds_open_genre): Use <char*> instead of <unsigned char*>
463 (concord_genre_foreach_feature_name): Use <char*> instead of
464 <unsigned char*> for ds->location.
465 (concord_genre_get_feature_0): Use <char*> instead of <unsigned
466 char*> for genre-name.
467 (concord_genre_get_feature): Use <char*> instead of <unsigned
469 (struct CONCORD_Feature_Table): Use <char*> instead of <unsigned
470 char*> for member `name'.
471 (concord_genre_open_feature): Use <char*> instead of <unsigned
472 char*> for feature-name.
473 (concord_obj_gets_feature_value): Cast to avoid warning.
474 (struct CONCORD_INDEX_Table): Use <char*> instead of <unsigned
475 char*> for member `name'.
476 (concord_genre_open_index): Use <char*> instead of <unsigned
477 char*> for index-name.
478 (concord_index_strid_put_obj): Cast to avoid warning.
480 * name.c, concord-name.h (concord_name_table_put): Use <char*>
481 instead of <unsigned char*> for key.
482 (concord_name_table_get): Likewise.
484 2006-04-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
486 * concord-bdb.c, concord-bdb.h (CONCORD_BDB_open): Use <char*>
487 instead of <unsigned char*> for db_dir, genre, key_type and name.
488 (CONCORD_BDB_get): Use <char*> instead of <unsigned char*> for
490 (CONCORD_BDB_put): Likewise.
492 * concord.c, concord.h (concord_open_ds): Use <char*> instead of
493 <unsigned char*> for location.
494 (concord_ds_location): Likewise.
495 (concord_ds_foreach_genre_name): Use <char*> instead of <unsigned
496 char*> for genre-name.
497 (concord_ds_get_genre): Likewise.
498 (concord_genre_get_name): Likewise.
499 (concord_genre_foreach_feature_name): Likewise.
500 (concord_genre_get_feature): Use <char*> instead of <unsigned
501 char*> for feature-name.
502 (concord_feature_get_name): Likewise.
503 (concord_obj_put_feature_value_str): Use <char*> instead of
504 <unsigned char*> for object-id.
505 (concord_obj_get_feature_value): Likewise.
506 (concord_obj_get_feature_value_string): Likewise.
507 (concord_obj_gets_feature_value): Likewise.
508 (concord_genre_get_index): Use <char*> instead of <unsigned char*>
510 (concord_index_strid_put_obj): Use <char*> instead of <unsigned
511 char*> for indexer and object-id.
512 (concord_index_strid_get_obj_string): Use <char*> instead of
513 <unsigned char*> for indexer.
515 2006-02-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
517 * README.en: New file.
519 2005-12-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
521 * concord.h (concord_genre_get_name): New prototype.
522 (concord_feature_get_genre): New prototype.
524 * concord.c (concord_genre_get_name): New function.
525 (concord_feature_get_genre): New function.
527 2005-06-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
529 * concord.c (concord_ds_set_object_failure): Renamed from
530 `concord_ds_set_object_nil'.
531 (concord_genre_get_feature_0): New function.
532 (concord_genre_get_feature): New implementation; use
533 `concord_genre_get_feature_0'; support feature alias.
535 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
537 * concord.h (concord_ds_set_object_failure): Renamed from
538 `concord_ds_set_object_nil'.
540 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
542 * concord.c, concord.h (concord_obj_put_feature_value_str):
543 Renamed from `concord_stroid_set_feature_str'.
544 (concord_obj_get_feature_value): Renamed from
545 `concord_stroid_get_feature_object'.
546 (concord_obj_get_feature_value_string): Renamed from
547 `concord_stroid_get_feature_string'.
548 (concord_obj_gets_feature_value): Renamed from
549 `concord_stroid_gets_feature'.
550 (concord_feature_foreach_obj_string): Renamed from
551 `concord_feature_foreach_object_string'.
552 (concord_index_strid_get_obj_string): Renamed from
553 `concord_index_strid_get_object_string'.
554 (concord_index_strid_put_obj): Renamed from
555 `concord_index_strid_set_object_str'.
557 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
559 * concord.c, concord.h (concord_close_ds): Renamed from
562 2005-06-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
564 * concord-bdb.c, concord-bdb.h, concord.c, concord.h: New files.
566 2005-06-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
568 * Makefile.in: New file.
570 2005-06-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
572 * sysdep.h: New file.
574 2005-06-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
576 * aclocal.m4, concord-name.h, config.h.in, configure.in,
577 config.guess, config.sub, install-sh, ltmain.sh, name.c: New