rendered paste body//
// main.m
// Posing
//
// Created by Brandon Holland on 12-04-11.
// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <objc/runtime.h>
int main (int argc, const char * argv[])
{
NSAutoreleasePool *localPool = [[NSAutoreleasePool alloc] init];
Class poserClass = NSClassFromString(@"Poser");
Class superPoserClass = NSClassFromString(@"SuperPoser");
Class legitClass = objc_allocateClassPair(superPoserClass, "Legit", 0);
IMP poserTitleIMP = class_getMethodImplementation(poserClass, @selector(poserTitle));
class_addMethod(legitClass, @selector(poserTitle), poserTitleIMP, "v@:");
objc_registerClassPair(legitClass);
id legitObject = [[legitClass alloc] init];
NSLog(@"title -> %@", [legitObject performSelector: @selector(poserTitle)]);
NSLog(@"id -> %@", [legitObject performSelector: @selector(poserID)]);
NSLog(@"obj -> %@", legitObject);
[localPool drain];
return 0;
}