Overview
Comment: | Improve selector not found message. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
9dfe4628482f249ff02ce65e790b57e5 |
User & Date: | js on 2012-09-06 19:13:50 |
Original User & Date: | js on 2012-09-06 19:13:51 |
Other Links: | manifest | tags |
Context
2012-09-06
| ||
19:13 | Add objc_{construct,destruct}Instance(). check-in: 20c584252c user: js tags: trunk | |
19:13 | Improve selector not found message. check-in: 9dfe462848 user: js tags: trunk | |
19:13 | OFIntrospection: Remove property introspection. check-in: 28cc9a516e user: js tags: trunk | |
Changes
Modified src/runtime/lookup.m from [ef50fd350e] to [aeac5b2dcb].
︙ | ︙ | |||
24 25 26 27 28 29 30 | #import "macros.h" IMP (*objc_forward_handler)(id, SEL) = NULL; IMP objc_not_found_handler(id obj, SEL sel) { | | | | | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | #import "macros.h" IMP (*objc_forward_handler)(id, SEL) = NULL; IMP objc_not_found_handler(id obj, SEL sel) { BOOL is_class = object_getClass(obj)->info & OBJC_CLASS_INFO_METACLASS; if (!(object_getClass(obj)->info & OBJC_CLASS_INFO_INITIALIZED)) { Class cls = (is_class ? (Class)obj : object_getClass(obj)); objc_initialize_class(cls); if (!(cls->info & OBJC_CLASS_INFO_SETUP)) { if (is_class) return objc_msg_lookup(nil, sel); |
︙ | ︙ | |||
51 52 53 54 55 56 57 | */ return objc_msg_lookup(obj, sel); } if (objc_forward_handler != NULL) return objc_forward_handler(obj, sel); | | | | 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | */ return objc_msg_lookup(obj, sel); } if (objc_forward_handler != NULL) return objc_forward_handler(obj, sel); OBJC_ERROR("Selector %c[%s] is not implemented for class %s!", (is_class ? '+' : '-'), sel_getName(sel), object_getClassName(obj)); } BOOL class_respondsToSelector(Class cls, SEL sel) { if (cls == Nil) return NO; |
︙ | ︙ |