35 CPMethodSignature _methodSignature;
44 + (id)invocationWithMethodSignature:(CPMethodSignature)aMethodSignature
54 - (id)initWithMethodSignature:(CPMethodSignature)aMethodSignature
61 _methodSignature = aMethodSignature;
72 - (void)setSelector:(
SEL)aSelector
74 _arguments[1] = aSelector;
89 - (void)setTarget:(
id)aTarget
91 _arguments[0] = aTarget;
107 - (void)setArgument:(
id)anArgument atIndex:(
unsigned)anIndex
109 _arguments[anIndex] = anArgument;
118 - (id)argumentAtIndex:(
unsigned)anIndex
120 return _arguments[anIndex];
127 - (void)setReturnValue:(
id)aReturnValue
129 _returnValue = aReturnValue;
146 _returnValue = objj_msgSend.apply(objj_msgSend, _arguments);
153 - (void)invokeWithTarget:(
id)aTarget
155 _arguments[0] = aTarget;
156 _returnValue = objj_msgSend.apply(objj_msgSend, _arguments);
177 _returnValue = [aCoder decodeObjectForKey:CPInvocationReturnValue];
178 _arguments = [aCoder decodeObjectForKey:CPInvocationArguments];
190 [aCoder encodeObject:_returnValue forKey:CPInvocationReturnValue];
191 [aCoder encodeObject:_arguments forKey:CPInvocationArguments];