CoreFW  Check-in [ffa5357d1b]

Overview
Comment:Add cfw_is.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: ffa5357d1b517f3b66b823eec94ccd1e881c7c19dd3b63cf4a8af2f440fbfd26
User & Date: js on 2012-04-22 14:03:42
Other Links: manifest | tags
Context
2012-04-22
14:10
Add cfw_class. check-in: 106a4491c3 user: js tags: trunk
14:03
Add cfw_is. check-in: ffa5357d1b user: js tags: trunk
13:19
Let the iter point to the first object. check-in: d4d333ba7f user: js tags: trunk
Changes

Modified src/object.c from [3d2cb3ed1b] to [55e68373f9].

114
115
116
117
118
119
120








121
122
123
124
125
126
127
	CFWObject *obj = ptr;

	if (obj->cls->dtor != NULL)
		obj->cls->dtor(obj);

	free(obj);
}









bool
cfw_equal(void *ptr1, void *ptr2)
{
	CFWObject *obj1 = ptr1, *obj2 = ptr2;

	if (obj1->cls->equal != NULL) {







>
>
>
>
>
>
>
>







114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
	CFWObject *obj = ptr;

	if (obj->cls->dtor != NULL)
		obj->cls->dtor(obj);

	free(obj);
}

bool
cfw_is(void *ptr, CFWClass *cls)
{
	CFWObject *obj = ptr;

	return (obj->cls == cls);
}

bool
cfw_equal(void *ptr1, void *ptr2)
{
	CFWObject *obj1 = ptr1, *obj2 = ptr2;

	if (obj1->cls->equal != NULL) {

Modified src/object.h from [07013e8446] to [b6d17265f1].

36
37
38
39
40
41
42

43
44
45
46
47

extern CFWClass *cfw_object;
extern void* cfw_new(CFWClass*, ...);
extern void* cfw_new_p(CFWClass*, ...);
extern void* cfw_ref(void*);
extern void cfw_unref(void*);
extern void cfw_free(void*);

extern bool cfw_equal(void*, void*);
extern uint32_t cfw_hash(void*);
extern void* cfw_copy(void*);

#endif







>





36
37
38
39
40
41
42
43
44
45
46
47
48

extern CFWClass *cfw_object;
extern void* cfw_new(CFWClass*, ...);
extern void* cfw_new_p(CFWClass*, ...);
extern void* cfw_ref(void*);
extern void cfw_unref(void*);
extern void cfw_free(void*);
extern bool cfw_is(void*, CFWClass*);
extern bool cfw_equal(void*, void*);
extern uint32_t cfw_hash(void*);
extern void* cfw_copy(void*);

#endif