Differences From Artifact [72c72347b1]:
- File
src/runtime/class.m
— part of check-in
[120caad331]
at
2012-11-30 16:09:39
on branch trunk
— Make runtime API more similar to Apple's.
This makes it easier to use runtime functions in portable code. (user: js, size: 11993) [annotate] [blame] [check-ins using]
To Artifact [9dc5ac3596]:
- File src/runtime/class.m — part of check-in [7fe9b2e320] at 2012-12-06 01:19:05 on branch trunk — Don't inline runtime functions. (user: js, size: 12304) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
401 402 403 404 405 406 407 408 409 410 411 412 413 414 | } Class objc_get_class(const char *name) { return objc_getRequiredClass(name); } const char* class_getName(Class cls) { return cls->name; } | > > > > > > | 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 | } Class objc_get_class(const char *name) { return objc_getRequiredClass(name); } BOOL class_isMetaClass(Class cls) { return (cls->info & OBJC_CLASS_INFO_METACLASS); } const char* class_getName(Class cls) { return cls->name; } |
︙ | ︙ | |||
550 551 552 553 554 555 556 557 558 559 560 561 562 563 | objc_update_dtable(cls); objc_global_mutex_unlock(); return (IMP)nil; } static void free_class(Class rcls) { struct objc_abi_class *cls = (struct objc_abi_class*)rcls; if (rcls->subclass_list != NULL) { | > > > > > > > > > > > > > > > > > > > > > > | 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 | objc_update_dtable(cls); objc_global_mutex_unlock(); return (IMP)nil; } Class object_getClass(id obj) { return obj->isa; } Class object_setClass(id obj, Class cls) { Class old = obj->isa; obj->isa = cls; return old; } const char* object_getClassName(id obj) { return obj->isa->name; } static void free_class(Class rcls) { struct objc_abi_class *cls = (struct objc_abi_class*)rcls; if (rcls->subclass_list != NULL) { |
︙ | ︙ |