From: MORIOKA Tomohiko Date: Tue, 16 Apr 2013 09:42:39 +0000 (+0900) Subject: (COS_Object_retain_function_table): New variable. X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fconcord.git;a=commitdiff_plain;h=0d3176d0fb075dde73e08ebf9d918733f0c3ef72 (COS_Object_retain_function_table): New variable. (cos_retain_string): New prototype. (cos_retain_symbol): New prototype. (cos_retain_cons): New prototype. (cos_retain_container): New prototype. (cos_retain_sexp): New prototype. (cos_retain_binary): New prototype. (cos_retain_ds): New prototype. (cos_retain_genre): New prototype. (cos_retain_feature): New prototype. (cos_retain_index): New prototype. (cos_retain_db_object): New prototype. --- diff --git a/cos-i.h b/cos-i.h index 73450dc..4ed5540 100644 --- a/cos-i.h +++ b/cos-i.h @@ -115,6 +115,7 @@ enum COS_Object_Type { #define COS_FAT_OBJECT_TYPE_MIN COS_Object_Type_String #define COS_OBJECT_TYPE_MAX COS_Object_Type_DB_Object +extern int (*COS_Object_retain_function_table[]) (COS_Object); extern int (*COS_Object_release_function_table[]) (COS_Object); struct COS_Object_ent @@ -179,6 +180,7 @@ struct COS_String_ent unsigned char* data; }; +int cos_retain_string (COS_Object obj); int cos_release_string (COS_Object obj); @@ -192,6 +194,7 @@ struct COS_Symbol_ent COS_Symbol cos_make_symbol (COS_String string); +int cos_retain_symbol (COS_Object obj); int cos_release_symbol (COS_Object obj); @@ -229,6 +232,7 @@ struct COS_Cons_ent #define COS_CDR(obj) \ (((COS_Cons)(obj))->cdr) +int cos_retain_cons (COS_Object obj); int cos_release_cons (COS_Object obj); @@ -243,6 +247,7 @@ struct COS_Container_ent COS_Object* data; }; +int cos_retain_container (COS_Object obj); int cos_release_container (COS_Object obj); @@ -254,6 +259,7 @@ struct COS_Sexp_ent char* data; }; +int cos_retain_sexp (COS_Object obj); int cos_release_sexp (COS_Object obj); @@ -265,22 +271,27 @@ struct COS_Binary_ent unsigned char* data; }; +int cos_retain_binary (COS_Object obj); int cos_release_binary (COS_Object obj); +int cos_retain_ds (COS_Object obj); int cos_release_ds (COS_Object obj); +int cos_retain_genre (COS_Object obj); int cos_release_genre (COS_Object obj); int concord_close_genre (COS_Genre genre); +int cos_retain_feature (COS_Object obj); int cos_release_feature (COS_Object obj); int concord_close_feature (COS_Feature feature); +int cos_retain_index (COS_Object obj); int cos_release_index (COS_Object obj); int concord_close_index (COS_Feature_INDEX table); @@ -294,6 +305,7 @@ struct COS_DB_Object_ent COS_Object id; }; +int cos_retain_db_object (COS_Object obj); int cos_release_db_object (COS_Object obj); #if 0