Overview
Comment: | Make objc_msg_lookup_super public. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | runtime |
Files: | files | file ages | folders |
SHA3-256: |
10b3fbc5fcb5cf4565dac222b2315eac |
User & Date: | js on 2012-04-06 12:14:15 |
Other Links: | branch diff | manifest | tags |
Context
2012-04-06
| ||
13:43 | Convert lookup-amd64-elf.S to AT&T syntax. check-in: d3ce57addf user: js tags: runtime | |
12:14 | Make objc_msg_lookup_super public. check-in: 10b3fbc5fc user: js tags: runtime | |
2012-04-03
| ||
18:42 | Fix includes in OFBlockTests for ObjFW runtime. check-in: 917e9dff1f user: js tags: runtime | |
Changes
Modified src/runtime/lookup.m from [29b33e14c4] to [40605ab2a2].
︙ | ︙ | |||
60 61 62 63 64 65 66 | if ((imp = objc_sparsearray_get(obj->isa->dtable, sel->uid)) == NULL) return objc_forward_handler(obj, sel); return imp; } IMP | | | 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | if ((imp = objc_sparsearray_get(obj->isa->dtable, sel->uid)) == NULL) return objc_forward_handler(obj, sel); return imp; } IMP objc_msg_lookup_super(struct objc_super *super, SEL sel) { IMP imp; if (super->self == nil) return (IMP)nil_method; imp = objc_sparsearray_get(super->class->dtable, sel->uid); |
︙ | ︙ |
Modified src/runtime/runtime-private.h from [76682de6f9] to [8f5d45afbf].
︙ | ︙ | |||
56 57 58 59 60 61 62 | const char *category_name; const char *class_name; struct objc_abi_method_list *instance_methods; struct objc_abi_method_list *class_methods; struct objc_protocol_list *protocols; }; | < < < < < | 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | const char *category_name; const char *class_name; struct objc_abi_method_list *instance_methods; struct objc_abi_method_list *class_methods; struct objc_protocol_list *protocols; }; struct objc_abi_method_description { const char *name; const char *types; }; struct objc_abi_method_description_list { int count; |
︙ | ︙ |
Modified src/runtime/runtime.h from [a509668aea] to [7dcff464ae].
︙ | ︙ | |||
62 63 64 65 66 67 68 69 70 71 72 73 74 75 | Class isa; }; struct objc_selector { uintptr_t uid; const char *types; }; struct objc_method { struct objc_selector sel; IMP imp; }; struct objc_method_list { | > > > > > | 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | Class isa; }; struct objc_selector { uintptr_t uid; const char *types; }; struct objc_super { id self; Class class; }; struct objc_method { struct objc_selector sel; IMP imp; }; struct objc_method_list { |
︙ | ︙ | |||
108 109 110 111 112 113 114 115 116 117 118 | extern unsigned long class_getInstanceSize(Class); extern BOOL class_respondsToSelector(Class, SEL); extern BOOL class_conformsToProtocol(Class, Protocol*); extern IMP class_getMethodImplementation(Class, SEL); extern IMP class_replaceMethod(Class, SEL, IMP, const char*); extern const char* objc_get_type_encoding(Class, SEL); extern IMP objc_msg_lookup(id, SEL); extern void objc_thread_add(void); extern void objc_thread_remove(void); extern void objc_exit(void); #endif | > | 113 114 115 116 117 118 119 120 121 122 123 124 | extern unsigned long class_getInstanceSize(Class); extern BOOL class_respondsToSelector(Class, SEL); extern BOOL class_conformsToProtocol(Class, Protocol*); extern IMP class_getMethodImplementation(Class, SEL); extern IMP class_replaceMethod(Class, SEL, IMP, const char*); extern const char* objc_get_type_encoding(Class, SEL); extern IMP objc_msg_lookup(id, SEL); extern IMP objc_msg_lookup_super(struct objc_super*, SEL); extern void objc_thread_add(void); extern void objc_thread_remove(void); extern void objc_exit(void); #endif |