1 2013-04-21 MORIOKA Tomohiko <tomo.git@chise.org>
3 * cos.c (concord_object_get_feature_value): If
4 `concord_current_env' is not a valid CONCORD_DS object, set NULL.
6 * symbol.c (cos_release_symbol): Treat `composition' as a builtin
9 2013-04-20 MORIOKA Tomohiko <tomo.git@chise.org>
11 * cos.c (concord_decode_object): Delete printf to debug.
12 (concord_object_get_feature_value): Likewise.
14 2013-04-20 MORIOKA Tomohiko <tomo.git@chise.org>
16 * cos.h (cos_Qcomposition): New variable.
19 (COS_COMPOSITION): New macro.
21 * symbol.c (cos_string_ent_composition): New variable.
22 (cos_symbol_ent_composition): New variable.
23 (cos_Qcomposition): New variable.
24 (cos_intern): Setup `composition'.
26 2013-04-20 MORIOKA Tomohiko <tomo.git@chise.org>
28 * symbol.c (cos_release_symbol): Add check for builtin symbols.
30 2013-04-19 MORIOKA Tomohiko <tomo.git@chise.org>
32 * concord.h (CONCORD_Genre_Table): Revived as an alias of
35 2013-04-18 MORIOKA Tomohiko <tomo.git@chise.org>
37 * symbol.c (cos_retain_symbol): Don't use `cos_retain_object'
39 (cos_symbol_p): New function.
40 (cos_symbol_table_intern): Check type of each entry of the hash;
41 use `cos_retain_object' for the returned symbol.
42 (cos_print_symbol_table): New function.
44 * cos.c (cos_char_id): Fixed.
45 (cos_release_object): Fixed.
46 (cos_retain_cons): Don't use `cos_retain_object' recursively.
47 (cos_assoc): New function.
48 (cos_alist_get): New function.
50 2013-04-18 MORIOKA Tomohiko <tomo.git@chise.org>
52 * read.c (is_delimiter): New function.
53 (cos_read_int): Use `is_delimiter'.
54 (cos_read_string): Fixed.
55 (cos_read_symbol): New function.
56 (cos_read_object): Use `cos_read_symbol' to support symbol.
58 * cos.h (cos_symbol_p): New prototype.
59 (cos_assoc): New prototype.
60 (cos_alist_get): New prototype.
62 * cos-read.h (cos_read_symbol): New prototype.
64 2013-04-17 MORIOKA Tomohiko <tomo.git@chise.org>
66 * read.c (cos_skip_space): New function.
67 (cos_read_int): Fix to support separator.
68 (cos_read_list0): New function.
69 (cos_read_list): New function.
70 (cos_read_object): New function.
72 * print.c (cos_print_object): Fix duplicated `?' when printing a
75 * cos.h (cos_cons_p): New prototype.
77 * cos.c (cos_cons_p): New function.
78 (concord_object_get_feature_value): Use `cos_read_object'.
80 * cos-read.h (cos_read_list): New prototype.
81 (cos_read_object): New prototype.
83 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
85 * symbol.c (cos_make_symbol): Use `cos_retain_object' for
87 (cos_retain_symbol): New function.
89 * cos.c (COS_Object_retain_function_table): New variable.
90 (cos_retain_object): Call a retain-function in
91 `COS_Object_retain_function_table'.
92 (cos_retain_string): New function.
93 (cos_retain_cons): New function.
94 (cos_retain_container): New function.
95 (cos_retain_sexp): New function.
96 (cos_retain_binary): New function.
97 (cos_retain_ds): New function.
98 (cos_retain_genre): New function.
99 (cos_retain_feature): New function.
100 (cos_retain_index): New function.
101 (cos_retain_db_object): New function.
103 * cos-i.h (COS_Object_retain_function_table): New variable.
104 (cos_retain_string): New prototype.
105 (cos_retain_symbol): New prototype.
106 (cos_retain_cons): New prototype.
107 (cos_retain_container): New prototype.
108 (cos_retain_sexp): New prototype.
109 (cos_retain_binary): New prototype.
110 (cos_retain_ds): New prototype.
111 (cos_retain_genre): New prototype.
112 (cos_retain_feature): New prototype.
113 (cos_retain_index): New prototype.
114 (cos_retain_db_object): New prototype.
116 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
118 * Makefile.in (symbol-test): New target.
120 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
122 * name.c (concord_name_table_grow): Release old `table->data'.
124 * cos.h: Include <stdlib.h>.
125 (cos_Qnil): New variable.
126 (cos_Qt): New variable.
127 (cos_print_object): New prototype.
129 * symbol.c (cos_string_ent_nil): New variable.
130 (cos_symbol_ent_nil): New variable.
131 (cos_Qnil): New variable.
132 (cos_string_ent_t): New variable.
133 (cos_symbol_ent_t): New variable.
134 (cos_Qt): New variable.
135 (cos_intern): Setup `nil' and `t'.
136 (cos_symbol_table_grow): Release old `table->data'.
138 * print.c (cos_print_object): New function.
140 2013-04-16 MORIOKA Tomohiko <tomo.git@chise.org>
142 * cos.c (COS_Object_release_function_table): Add
144 (cos_retain_object): Use `COS_OBJECT_P' to check `obj' is a fat
146 (cos_release_object): Likewise.
147 (cos_cons): New function.
148 (cos_release_cons): New function.
149 (cos_car): New function.
150 (cos_cdr): New function.
152 * cos-i.h (enum COS_Object_Type): Add COS_Object_Type_Cons.
153 (COS_OBJECT_CONS_P): New macro.
154 (struct COS_Cons_ent): New structure.
155 (COS_CAR): New macro.
156 (COS_CDR): New macro.
157 (cos_release_cons): New prototype.
159 * cos.h (struct COS_Cons_ent): New structure.
160 (COS_Cons): New type.
161 (cos_cons): New prototype.
162 (cos_car): New prototype.
163 (cos_cdr): New prototype.
165 2013-04-15 MORIOKA Tomohiko <tomo.git@chise.org>
167 * cos.c (concord_object_get_feature_value): Use `cos_read_int' to
170 * read.c: Include <ctype.h>.
171 (cos_read_int): New function.
173 * cos-read.h (cos_read_int): New prototype.
175 2013-04-14 MORIOKA Tomohiko <tomo.git@chise.org>
177 * cos.c (cos_string_p): New function.
178 (concord_object_get_feature_value): Use `cos_read_char' and
179 `cos_read_string' to parse character and string.
181 * read.c (cos_read_string): New function.
183 * cos.h (cos_string_p): New prototype.
185 * cos-read.h: Include "cos.h".
186 (cos_read_string): New prototype.
188 2013-04-06 MORIOKA Tomohiko <tomo.git@chise.org>
190 * cos.c: Include "cos-print.h".
191 (concord_current_env): New variable.
192 (concord_open_env): Setup `concord_current_env'.
193 (concord_object_get_feature_value): New function.
195 2013-04-04 MORIOKA Tomohiko <tomo.git@chise.org>
198 - Don't include <stdlib.h>.
200 (cos_utf8_encode_char): Renamed from `cos_encode_char_as_utf8'.
201 (cos_utf8_print_char): New function.
203 * cos-print.h: Include stdlib.h and cos.h.
204 (cos_utf8_encode_char): Renamed from `cos_encode_char_as_utf8'.
205 (cos_utf8_print_char): New prototype.
207 * concord.h (concord_object_get_feature_value): New prototype.
209 2013-04-02 MORIOKA Tomohiko <tomo.git@chise.org>
213 * cos-print.h: New file.
215 * Makefile.in (OBJS): Add print.lo.
216 (print.lo): New target.
218 2013-04-01 MORIOKA Tomohiko <tomo.git@chise.org>
220 * concord.c (struct COS_DS_ent): Delete member `symbol_names'.
221 (concord_open_ds): Delete code to initialize `ds->symbol_names'.
222 (concord_close_ds): Delete code to destroy `ds->symbol_names'.
224 2013-03-30 MORIOKA Tomohiko <tomo.git@chise.org>
226 * cos-read.h: New file.
230 * symbol.c: New file.
236 * concord-bdb.c: Move code to include "config.h" into sysdep.h.
239 - Move code to include "config.h" into sysdep.h.
241 (concord_close_genre): Move prototype into cos-i.h.
242 (concord_close_feature): Likewise.
243 (concord_close_index): Likewise.
244 (struct CONCORD_Object_Header): Renamed to `COS_Object_Header';
245 moved to cos-i.h; add new member `reference_count'.
246 (CONCORD_OBJECT_TYPE_NULL): Renamed to `COS_Object_Type_NULL';
247 moved to cos-i.h; use `enum COS_Object_Type'.
248 (CONCORD_OBJECT_TYPE_C_STRING): Renamed to
249 `COS_Object_Type_C_String'; moved to cos-i.h; use `enum
251 (CONCORD_OBJECT_TYPE_INT): Renamed to `COS_Object_Type_int'; moved
252 to cos-i.h; use `enum COS_Object_Type'.
253 (CONCORD_OBJECT_TYPE_DS): Renamed to `COS_Object_Type_DS'; moved
254 to cos-i.h; use `enum COS_Object_Type'.
255 (CONCORD_OBJECT_TYPE_GENRE): Renamed to `COS_Object_Type_Genre';
256 moved to cos-i.h; use `enum COS_Object_Type'.
257 (CONCORD_OBJECT_TYPE_FEATURE): Renamed to
258 `COS_Object_Type_Feature'; moved to cos-i.h; use `enum
260 (CONCORD_OBJECT_TYPE_INDEX): Renamed to
261 `COS_Object_Type_Feature_INDEX'; moved to cos-i.h; use `enum
263 (CONCORD_OBJECT_TYPE_OBJECT): Renamed to
264 `COS_Object_Type_DB_Object'; moved to cos-i.h; use `enum
266 (struct CONCORD_DS_Table): Renamed to `struct COS_DS_ent'; add new
267 member `symbol_names'.
268 (concord_open_ds): Use `COS_ALLOCATE_OBJECT'; initialize
270 (concord_close_ds): Destroy `ds->symbol_names'.
271 (struct CONCORD_Genre_Table): Renamed to `struct COS_Genre_ent'.
272 (concord_ds_open_genre): Use `COS_ALLOCATE_OBJECT'.
273 (struct CONCORD_Feature_Table): Renamed to `struct
275 (concord_genre_open_feature): Use `COS_ALLOCATE_OBJECT'.
276 (struct CONCORD_INDEX_Table): Renamed to `struct
277 COS_Feature_INDEX_ent'.
278 (concord_genre_open_index): Use `COS_ALLOCATE_OBJECT'.
279 (concord_index_get_name): New function.
280 (concord_index_get_genre): New function.
282 * concord.h: Include <cos.h>.
283 (CONCORD_Object): Use `COS_Object' instead of `void*' as the type.
284 (COS_DS_ent): Renamed from `CONCORD_DS_Table'.
286 (CONCORD_DS): Use `COS_DS' instead of `CONCORD_DS_Table*' as the
288 (concord_open_env): New prototype.
289 (COS_Genre_ent): Renamed from `CONCORD_Genre_Table'.
290 (COS_Genre): New type.
291 (CONCORD_Genre): Use `COS_Genre' instead of `CONCORD_Genre_Table*'
293 (concord_get_genre): New prototype.
294 (COS_Feature_ent): Renamed from `CONCORD_Feature_Table'.
295 (COS_Feature): New type.
296 (CONCORD_Feature): Use `COS_Feature' instead of
297 `CONCORD_Feature_Table*' as the type.
298 (concord_get_feature): New prototype.
299 (COS_Feature_INDEX_ent): Renamed from `CONCORD_INDEX_Table'.
300 (COS_Feature_INDEX): New type.
301 (CONCORD_INDEX): Use `COS_Feature_INDEX' instead of
302 `CONCORD_INDEX_Table*' as the type.
303 (concord_get_feature_index): New prototype.
304 (concord_index_get_name): New prototype.
305 (concord_index_get_genre): New prototype.
306 (concord_decode_object): New prototype.
308 * sysdep.h: Include "config.h" if `HAVE_CONFIG_H' is defined.
310 2013-03-30 MORIOKA Tomohiko <tomo.git@chise.org>
314 2013-03-29 MORIOKA Tomohiko <tomo.git@chise.org>
316 * Makefile.in (localstatedir): New variable.
317 (CONCORD_DB_PREFIX): New variable.
318 (CONCORD_DB_FORMAT_VERSION): New variable.
319 (CONCORD_DB_DIR): New variable.
320 (CONCORD_SI_DB_DIR): New variable.
321 (CONCORD_CFLAGS): New variable.
322 (HEADERS): Add cos.h.
323 (OBJS): Add cos.lo, symbol.lo and read.lo.
324 (cos.lo): New target.
325 (symbol.lo): New target.
326 (read.lo): New target.
327 (concord.lo): Depend on cos-i.h and cos.h.
329 2013-03-22 MORIOKA Tomohiko <tomo.git@chise.org>
331 * name.c (concord_hash_c_string): Use `unsigned long' instead of
332 int' as the type of return value.
334 2013-03-21 MORIOKA Tomohiko <tomo.git@chise.org>
336 * config.h.in (SIZEOF_INT): New macro.
337 (SIZEOF_LONG): New macro.
338 (SIZEOF_LONG_LONG): New macro.
339 (SIZEOF_VOID_P): New macro.
340 (BITS_PER_CHAR): New macro.
342 * configure.in: Add `AC_CHECK_SIZEOF(int)',
343 `AC_CHECK_SIZEOF(long)', `AC_CHECK_SIZEOF(long long)' and
344 `AC_CHECK_SIZEOF(void *)'.
346 2011-10-31 MORIOKA Tomohiko <tomo.git@chise.org>
348 * Makefile.in (ABI_VERSION): Update to 1:0:1.
350 * concord.c (struct CONCORD_Object_Header): New structure.
351 (CONCORD_OBJECT_TYPE_NULL): New macro.
352 (CONCORD_OBJECT_TYPE_C_STRING): New macro.
353 (CONCORD_OBJECT_TYPE_INT): New macro.
354 (CONCORD_OBJECT_TYPE_DS): New macro.
355 (CONCORD_OBJECT_TYPE_GENRE): New macro.
356 (CONCORD_OBJECT_TYPE_FEATURE): New macro.
357 (CONCORD_OBJECT_TYPE_INDEX): New macro.
358 (CONCORD_OBJECT_TYPE_OBJECT): New macro.
359 (struct CONCORD_DS_Table): Add new member `header'.
360 (concord_open_ds): Setup ds->header.
361 (struct CONCORD_Genre_Table): Add new member `header'.
362 (concord_ds_open_genre): Setup ds->header.
363 (struct CONCORD_Feature_Table): Add new member `header'.
364 (concord_genre_open_feature): Setup ds->header.
365 (struct CONCORD_INDEX_Table): Add new member `header'.
366 (concord_genre_open_index): Setup ds->header.
368 2012-07-07 MORIOKA Tomohiko <tomo.git@chise.org>
370 * configure.in: Support db5 in Fink.
372 2012-04-25 MORIOKA Tomohiko <tomo.git@chise.org>
374 * README.en (Reporting Bugs): Modify for
375 chise-{en|ja}@lists.chise.org.
377 2012-04-09 MORIOKA Tomohiko <tomo.git@chise.org>
379 * README.en: Remove descriptions about CVS and add description
380 about the new Git repository.
382 2012-02-08 MORIOKA Tomohiko <tomo@zinbun.kyoto-u.ac.jp>
385 - Don't use "AC_CHECK_FUNCS(strnlen)".
386 - When $ac_cv_func_strnlen_working = "yes", define HAVE_STRNLEN.
388 2011-08-24 MORIOKA Tomohiko <tomo@zinbun.kyoto-u.ac.jp>
390 * Makefile.in (CFLAGS): Add $(DEFS).
393 2010-06-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
395 * Concord 0.0.2 released.
397 * configure.in: Update version to 0.0.2.
399 2008-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
401 * configure.in: Add settings for --with-site-includes=PATH and
402 --with-site-libraries=PATH.
405 2008-05-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
407 * Concord 0.0.1 released.
409 2008-01-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
411 * Makefile.in (MKDIR): New variable.
412 (install.h): Make $(INCLUDE_INSTALLDIR).
413 (install.libs): Make $(LIB_INSTALLDIR).
415 2006-12-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
417 * configure.in: Update version to 0.0.1.
419 * Makefile.in (libconcord.la): Specify `-no-undefined' to avoid
420 error on Cygwin [suggested by KAMICHI Koichi <kamichi@fonts.jp>].
421 (concord.lo): Specify `--mode=compile'.
422 (concord-bdb.lo): ditto.
424 (install.libs): Specify `--mode=install'.
427 2006-05-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
429 * Concord 0.0.0 released.
431 * Makefile.in (tar): Fixed.
433 2006-04-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
435 * concord.c (concord_ds_open_genre): Use <char*> instead of
436 <unsigned char*> for genre-name.
437 (concord_genre_open_feature): Likewise.
438 (concord_genre_open_index): Use <char*> instead of <unsigned
439 char*> for index-name.
440 (concord_genre_get_feature_0): Use <char*> instead of <unsigned
441 char*> for feature-name.
442 (struct CONCORD_DS_Table): Use <char*> instead of <unsigned char*>
443 for member `location'.
444 (concord_default_read_object): Cast to avoid warning.
445 (concord_open_ds): Use <char*> instead of <unsigned char*> for
447 (concord_ds_foreach_genre_name): Use <char*> instead of <unsigned
448 char*> for ds->location; cast to avoid warning.
449 (struct CONCORD_Genre_Table): Use <char*> instead of <unsigned
450 char*> for member `name'.
451 (concord_ds_open_genre): Use <char*> instead of <unsigned char*>
453 (concord_genre_foreach_feature_name): Use <char*> instead of
454 <unsigned char*> for ds->location.
455 (concord_genre_get_feature_0): Use <char*> instead of <unsigned
456 char*> for genre-name.
457 (concord_genre_get_feature): Use <char*> instead of <unsigned
459 (struct CONCORD_Feature_Table): Use <char*> instead of <unsigned
460 char*> for member `name'.
461 (concord_genre_open_feature): Use <char*> instead of <unsigned
462 char*> for feature-name.
463 (concord_obj_gets_feature_value): Cast to avoid warning.
464 (struct CONCORD_INDEX_Table): Use <char*> instead of <unsigned
465 char*> for member `name'.
466 (concord_genre_open_index): Use <char*> instead of <unsigned
467 char*> for index-name.
468 (concord_index_strid_put_obj): Cast to avoid warning.
470 * name.c, concord-name.h (concord_name_table_put): Use <char*>
471 instead of <unsigned char*> for key.
472 (concord_name_table_get): Likewise.
474 2006-04-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
476 * concord-bdb.c, concord-bdb.h (CONCORD_BDB_open): Use <char*>
477 instead of <unsigned char*> for db_dir, genre, key_type and name.
478 (CONCORD_BDB_get): Use <char*> instead of <unsigned char*> for
480 (CONCORD_BDB_put): Likewise.
482 * concord.c, concord.h (concord_open_ds): Use <char*> instead of
483 <unsigned char*> for location.
484 (concord_ds_location): Likewise.
485 (concord_ds_foreach_genre_name): Use <char*> instead of <unsigned
486 char*> for genre-name.
487 (concord_ds_get_genre): Likewise.
488 (concord_genre_get_name): Likewise.
489 (concord_genre_foreach_feature_name): Likewise.
490 (concord_genre_get_feature): Use <char*> instead of <unsigned
491 char*> for feature-name.
492 (concord_feature_get_name): Likewise.
493 (concord_obj_put_feature_value_str): Use <char*> instead of
494 <unsigned char*> for object-id.
495 (concord_obj_get_feature_value): Likewise.
496 (concord_obj_get_feature_value_string): Likewise.
497 (concord_obj_gets_feature_value): Likewise.
498 (concord_genre_get_index): Use <char*> instead of <unsigned char*>
500 (concord_index_strid_put_obj): Use <char*> instead of <unsigned
501 char*> for indexer and object-id.
502 (concord_index_strid_get_obj_string): Use <char*> instead of
503 <unsigned char*> for indexer.
505 2006-02-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
507 * README.en: New file.
509 2005-12-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
511 * concord.h (concord_genre_get_name): New prototype.
512 (concord_feature_get_genre): New prototype.
514 * concord.c (concord_genre_get_name): New function.
515 (concord_feature_get_genre): New function.
517 2005-06-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
519 * concord.c (concord_ds_set_object_failure): Renamed from
520 `concord_ds_set_object_nil'.
521 (concord_genre_get_feature_0): New function.
522 (concord_genre_get_feature): New implementation; use
523 `concord_genre_get_feature_0'; support feature alias.
525 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
527 * concord.h (concord_ds_set_object_failure): Renamed from
528 `concord_ds_set_object_nil'.
530 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
532 * concord.c, concord.h (concord_obj_put_feature_value_str):
533 Renamed from `concord_stroid_set_feature_str'.
534 (concord_obj_get_feature_value): Renamed from
535 `concord_stroid_get_feature_object'.
536 (concord_obj_get_feature_value_string): Renamed from
537 `concord_stroid_get_feature_string'.
538 (concord_obj_gets_feature_value): Renamed from
539 `concord_stroid_gets_feature'.
540 (concord_feature_foreach_obj_string): Renamed from
541 `concord_feature_foreach_object_string'.
542 (concord_index_strid_get_obj_string): Renamed from
543 `concord_index_strid_get_object_string'.
544 (concord_index_strid_put_obj): Renamed from
545 `concord_index_strid_set_object_str'.
547 2005-06-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
549 * concord.c, concord.h (concord_close_ds): Renamed from
552 2005-06-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
554 * concord-bdb.c, concord-bdb.h, concord.c, concord.h: New files.
556 2005-06-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
558 * Makefile.in: New file.
560 2005-06-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
562 * sysdep.h: New file.
564 2005-06-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
566 * aclocal.m4, concord-name.h, config.h.in, configure.in,
567 config.guess, config.sub, install-sh, ltmain.sh, name.c: New