Enlightenment CVS committal Author : mej Project : eterm Module : libast
Dir : eterm/libast/include/libast Modified Files: list_if.h obj.h regexp.h url.h vector_if.h Log Message: Tue Nov 18 23:15:59 2003 Michael Jennings (mej) Added D_*_IF macros for doing debugging conditionals more cleanly. Removed the bogus "next" member function from the array and vector interface classes. Fleshed out the iterator interface and implemented it for arrays. Fixed stupid mistake that made property functions overly type-strict. Cleaned up the "show" member functions. Added a routine for testing a regexp vs. a C string. Property-ized the URL class objects. =================================================================== RCS file: /cvsroot/enlightenment/eterm/libast/include/libast/list_if.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- list_if.h 30 Oct 2003 23:13:53 -0000 1.10 +++ list_if.h 19 Nov 2003 04:21:14 -0000 1.11 @@ -62,8 +62,7 @@ #define SPIF_LIST_INDEX(o, item) SPIF_CAST_C(size_t) ((SPIF_LIST_CALL_METHOD((o), index))(o, item)) #define SPIF_LIST_INSERT(o, item) SPIF_CAST(bool) ((SPIF_LIST_CALL_METHOD((o), insert))(o, item)) #define SPIF_LIST_INSERT_AT(o, item, index) SPIF_CAST(bool) ((SPIF_LIST_CALL_METHOD((o), insert_at))(o, item, index)) -#define SPIF_LIST_ITERATOR(o) SPIF_CAST(bool) ((SPIF_LIST_CALL_METHOD((o), iterator))(o)) -#define SPIF_LIST_NEXT(o) SPIF_CAST(obj) ((SPIF_LIST_CALL_METHOD((o), next))(o)) +#define SPIF_LIST_ITERATOR(o) SPIF_CAST(iterator) ((SPIF_LIST_CALL_METHOD((o), iterator))(o)) #define SPIF_LIST_PREPEND(o, item) SPIF_CAST(bool) ((SPIF_LIST_CALL_METHOD((o), prepend))(o, item)) #define SPIF_LIST_REMOVE(o, item) SPIF_CAST(obj) ((SPIF_LIST_CALL_METHOD((o), remove))(o, item)) #define SPIF_LIST_REMOVE_AT(o, index) SPIF_CAST(obj) ((SPIF_LIST_CALL_METHOD((o), remove_at))(o, index)) @@ -84,7 +83,6 @@ spif_func_t insert; spif_func_t insert_at; spif_func_t iterator; - spif_func_t next; spif_func_t prepend; spif_func_t remove; spif_func_t remove_at; =================================================================== RCS file: /cvsroot/enlightenment/eterm/libast/include/libast/obj.h,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- obj.h 5 Nov 2003 20:13:38 -0000 1.23 +++ obj.h 19 Nov 2003 04:21:15 -0000 1.24 @@ -33,8 +33,8 @@ * manipulating basic generic objects. * * @author Michael Jennings <[EMAIL PROTECTED]> - * $Revision: 1.23 $ - * $Date: 2003/11/05 20:13:38 $ + * $Revision: 1.24 $ + * $Date: 2003/11/19 04:21:15 $ */ /[EMAIL PROTECTED]/ @@ -193,12 +193,9 @@ */ #define SPIF_DEFINE_PROPERTY_FUNC(otype, vtype, name) \ SPIF_TYPE(vtype) spif_ ## otype ## _get_ ## name (SPIF_TYPE(otype) self) \ - { return ((SPIF_OBJ_IS_TYPE(self, otype)) ? (self->name) : (SPIF_NULL_TYPE(vtype))); } \ + { return (self->name); } \ SPIF_TYPE(bool) spif_ ## otype ## _set_ ## name (SPIF_TYPE(otype) self, SPIF_TYPE(vtype) new_ ## name) \ { \ - if (!SPIF_OBJ_IS_TYPE(self, otype)) { \ - return FALSE; \ - } \ if (!SPIF_OBJ_ISNULL(self->name)) { \ SPIF_OBJ_DEL(self->name); \ } \ @@ -223,12 +220,9 @@ */ #define SPIF_DEFINE_PROPERTY_FUNC_NONOBJ(otype, vtype, name) \ SPIF_TYPE(vtype) spif_ ## otype ## _get_ ## name (SPIF_TYPE(otype) self) \ - { return ((SPIF_OBJ_IS_TYPE(self, otype)) ? (self->name) : (SPIF_CAST(vtype) (0))); } \ + { return (self->name); } \ SPIF_TYPE(bool) spif_ ## otype ## _set_ ## name (SPIF_TYPE(otype) self, SPIF_TYPE(vtype) new_ ## name) \ { \ - if (!SPIF_OBJ_IS_TYPE(self, otype)) { \ - return FALSE; \ - } \ self->name = new_ ## name; \ return TRUE; \ } @@ -247,12 +241,9 @@ */ #define SPIF_DEFINE_PROPERTY_FUNC_C(otype, vtype, name) \ vtype spif_ ## otype ## _get_ ## name (SPIF_TYPE(otype) self) \ - { return ((SPIF_OBJ_IS_TYPE(self, otype)) ? (self->name) : (SPIF_NULL_TYPE_C(vtype))); } \ + { return (self->name); } \ SPIF_TYPE(bool) spif_ ## otype ## _set_ ## name (SPIF_TYPE(otype) self, vtype new_ ## name) \ { \ - if (!SPIF_OBJ_IS_TYPE(self, otype)) { \ - return FALSE; \ - } \ self->name = new_ ## name; \ return TRUE; \ } @@ -629,7 +620,7 @@ #define SPIF_SHOW(o, fd) do { \ spif_str_t tmp__; \ tmp__ = SPIF_OBJ_SHOW(o, SPIF_NULL_TYPE(str), 0); \ - fprintf(fd, "%s\n", SPIF_STR_STR(tmp__)); \ + fprintf(fd, "%s", SPIF_STR_STR(tmp__)); \ spif_str_del(tmp__); \ } while (0) =================================================================== RCS file: /cvsroot/enlightenment/eterm/libast/include/libast/regexp.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- regexp.h 30 Oct 2003 23:13:53 -0000 1.4 +++ regexp.h 19 Nov 2003 04:21:15 -0000 1.5 @@ -63,6 +63,7 @@ extern spif_classname_t spif_regexp_type(spif_regexp_t); extern spif_bool_t spif_regexp_compile(spif_regexp_t); extern spif_bool_t spif_regexp_matches_str(spif_regexp_t, spif_str_t); +extern spif_bool_t spif_regexp_matches_ptr(spif_regexp_t self, spif_charptr_t subject); extern int spif_regexp_get_flags(spif_regexp_t); extern spif_bool_t spif_regexp_set_flags(spif_regexp_t, spif_charptr_t); =================================================================== RCS file: /cvsroot/enlightenment/eterm/libast/include/libast/url.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- url.h 30 Oct 2003 23:13:53 -0000 1.7 +++ url.h 19 Nov 2003 04:21:15 -0000 1.8 @@ -46,11 +46,13 @@ SPIF_DECL_OBJ(url) { SPIF_DECL_PARENT_TYPE(str); - spif_str_t proto; - spif_str_t user, passwd; - spif_str_t host, port; - spif_str_t path; - spif_str_t query; + SPIF_DECL_PROPERTY(str, proto); + SPIF_DECL_PROPERTY(str, user); + SPIF_DECL_PROPERTY(str, passwd); + SPIF_DECL_PROPERTY(str, host); + SPIF_DECL_PROPERTY(str, port); + SPIF_DECL_PROPERTY(str, path); + SPIF_DECL_PROPERTY(str, query); }; extern spif_class_t SPIF_CLASS_VAR(url); @@ -66,20 +68,13 @@ extern spif_cmp_t spif_url_comp(spif_url_t, spif_url_t); extern spif_url_t spif_url_dup(spif_url_t); extern spif_classname_t spif_url_type(spif_url_t); -extern spif_str_t spif_url_get_proto(spif_url_t); -extern spif_bool_t spif_url_set_proto(spif_url_t, spif_str_t); -extern spif_str_t spif_url_get_user(spif_url_t); -extern spif_bool_t spif_url_set_user(spif_url_t, spif_str_t); -extern spif_str_t spif_url_get_passwd(spif_url_t); -extern spif_bool_t spif_url_set_passwd(spif_url_t, spif_str_t); -extern spif_str_t spif_url_get_host(spif_url_t); -extern spif_bool_t spif_url_set_host(spif_url_t, spif_str_t); -extern spif_str_t spif_url_get_port(spif_url_t); -extern spif_bool_t spif_url_set_port(spif_url_t, spif_str_t); -extern spif_str_t spif_url_get_path(spif_url_t); -extern spif_bool_t spif_url_set_path(spif_url_t, spif_str_t); -extern spif_str_t spif_url_get_query(spif_url_t); -extern spif_bool_t spif_url_set_query(spif_url_t, spif_str_t); +SPIF_DECL_PROPERTY_FUNC(url, str, proto); +SPIF_DECL_PROPERTY_FUNC(url, str, user); +SPIF_DECL_PROPERTY_FUNC(url, str, passwd); +SPIF_DECL_PROPERTY_FUNC(url, str, host); +SPIF_DECL_PROPERTY_FUNC(url, str, port); +SPIF_DECL_PROPERTY_FUNC(url, str, path); +SPIF_DECL_PROPERTY_FUNC(url, str, query); extern spif_bool_t spif_url_unparse(spif_url_t); #endif /* _LIBAST_URL_H_ */ =================================================================== RCS file: /cvsroot/enlightenment/eterm/libast/include/libast/vector_if.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- vector_if.h 30 Oct 2003 23:13:53 -0000 1.3 +++ vector_if.h 19 Nov 2003 04:21:15 -0000 1.4 @@ -58,8 +58,7 @@ #define SPIF_VECTOR_COUNT(o) SPIF_CAST_C(size_t) ((SPIF_VECTOR_CALL_METHOD((o), count))(o)) #define SPIF_VECTOR_FIND(o, item) SPIF_CAST(obj) ((SPIF_VECTOR_CALL_METHOD((o), find))(o, item)) #define SPIF_VECTOR_INSERT(o, item) SPIF_CAST(bool) ((SPIF_VECTOR_CALL_METHOD((o), insert))(o, item)) -#define SPIF_VECTOR_ITERATOR(o) SPIF_CAST(bool) ((SPIF_VECTOR_CALL_METHOD((o), iterator))(o)) -#define SPIF_VECTOR_NEXT(o) SPIF_CAST(obj) ((SPIF_VECTOR_CALL_METHOD((o), next))(o)) +#define SPIF_VECTOR_ITERATOR(o) SPIF_CAST(iterator) ((SPIF_VECTOR_CALL_METHOD((o), iterator))(o)) #define SPIF_VECTOR_REMOVE(o, item) SPIF_CAST(obj) ((SPIF_VECTOR_CALL_METHOD((o), remove))(o, item)) #define SPIF_VECTOR_TO_ARRAY(o) SPIF_CAST_PTR(obj) ((SPIF_VECTOR_CALL_METHOD((o), to_array))(o)) @@ -73,7 +72,6 @@ spif_func_t find; spif_func_t insert; spif_func_t iterator; - spif_func_t next; spif_func_t remove; spif_func_t to_array; }; ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ enlightenment-cvs mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs