Changeset 1391 for branches/GNU/src/gcc/libobjc/objects.c
- Timestamp:
- Apr 27, 2004, 8:39:34 PM (21 years ago)
- Location:
- branches/GNU/src/gcc
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GNU/src/gcc
- Property svn:ignore
-
old new 26 26 configure.vr 27 27 configure.vrs 28 dir.info 28 29 Makefile 29 dir.info30 30 lost+found 31 31 update.out
-
- Property svn:ignore
-
branches/GNU/src/gcc/libobjc/objects.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r1390 r1391 33 33 #endif 34 34 35 id __objc_object_alloc (Class);36 id __objc_object_dispose (id);37 id __objc_object_copy (id);35 id __objc_object_alloc (Class); 36 id __objc_object_dispose (id); 37 id __objc_object_copy (id); 38 38 39 id (*_objc_object_alloc) (Class) = __objc_object_alloc; /* !T:SINGLE */40 id (*_objc_object_dispose) (id) = __objc_object_dispose; /* !T:SINGLE */41 id (*_objc_object_copy) (id) = __objc_object_copy; /* !T:SINGLE */39 id (*_objc_object_alloc) (Class) = __objc_object_alloc; /* !T:SINGLE */ 40 id (*_objc_object_dispose) (id) = __objc_object_dispose; /* !T:SINGLE */ 41 id (*_objc_object_copy) (id) = __objc_object_copy; /* !T:SINGLE */ 42 42 43 43 id 44 class_create_instance (Class class)44 class_create_instance (Class class) 45 45 { 46 46 id new = nil; 47 47 48 48 #if OBJC_WITH_GC 49 if (CLS_ISCLASS (class))50 new = (id) GC_malloc_explicitly_typed (class->instance_size,51 class->gc_object_type);49 if (CLS_ISCLASS (class)) 50 new = (id) GC_malloc_explicitly_typed (class->instance_size, 51 class->gc_object_type); 52 52 #else 53 if (CLS_ISCLASS (class))54 new = (*_objc_object_alloc) (class);53 if (CLS_ISCLASS (class)) 54 new = (*_objc_object_alloc) (class); 55 55 #endif 56 56 57 if (new !=nil)57 if (new != nil) 58 58 { 59 59 memset (new, 0, class->instance_size); … … 64 64 65 65 id 66 object_copy (id object)66 object_copy (id object) 67 67 { 68 if ((object !=nil)&&CLS_ISCLASS(object->class_pointer))69 return (*_objc_object_copy) (object);68 if ((object != nil) && CLS_ISCLASS (object->class_pointer)) 69 return (*_objc_object_copy) (object); 70 70 else 71 71 return nil; … … 73 73 74 74 id 75 object_dispose (id object)75 object_dispose (id object) 76 76 { 77 if ((object !=nil)&&CLS_ISCLASS(object->class_pointer))77 if ((object != nil) && CLS_ISCLASS (object->class_pointer)) 78 78 { 79 79 if (_objc_object_dispose) 80 (*_objc_object_dispose) (object);80 (*_objc_object_dispose) (object); 81 81 else 82 objc_free (object);82 objc_free (object); 83 83 } 84 84 return nil; 85 85 } 86 86 87 id __objc_object_alloc (Class class)87 id __objc_object_alloc (Class class) 88 88 { 89 return (id) objc_malloc(class->instance_size);89 return (id) objc_malloc (class->instance_size); 90 90 } 91 91 92 id __objc_object_dispose (id object)92 id __objc_object_dispose (id object) 93 93 { 94 objc_free (object);94 objc_free (object); 95 95 return 0; 96 96 } 97 97 98 id __objc_object_copy (id object)98 id __objc_object_copy (id object) 99 99 { 100 id copy = class_create_instance (object->class_pointer);101 memcpy (copy, object, object->class_pointer->instance_size);100 id copy = class_create_instance (object->class_pointer); 101 memcpy (copy, object, object->class_pointer->instance_size); 102 102 return copy; 103 103 } 104 105 -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.