git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17372 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-Macdonald 2003-07-27 08:59:08 +00:00
parent d96f5b48c8
commit 54b5983408
4 changed files with 17 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2003-07-27 Richard Frith-Macdonald <rfm@gnu.org>
* Source/NSInvocation.m: implement methodSignatureForSelector for
proxy.
2003-07-26 Richard Frith-Macdonald <rfm@gnu.org>
* Source/GSFFCALLInvocation.m: Add evil hack to cope with cases

View file

@ -50,6 +50,7 @@ static Class NSInvocation_concrete_class;
+ (id) _newWithTarget: (id)t;
- (NSInvocation*) _invocation;
- (void) forwardInvocation: (NSInvocation*)anInvocation;
- (NSMethodSignature*) methodSignatureForSelector: (SEL)aSelector;
@end
@interface GSMessageProxy : GSInvocationProxy
@end
@ -1001,7 +1002,7 @@ _arg_addr(NSInvocation *inv, int index)
{
GSInvocationProxy *o;
o = (GSInvocationProxy*) NSAllocateObject(self, 0, NSDefaultMallocZone());
o->target = t;
o->target = RETAIN(t);
return o;
}
- (NSInvocation*) _invocation
@ -1025,6 +1026,10 @@ _arg_addr(NSInvocation *inv, int index)
{
invocation = anInvocation;
}
- (NSMethodSignature*) methodSignatureForSelector: (SEL)aSelector
{
return [target methodSignatureForSelector: aSelector];
}
@end
@implementation GSMessageProxy

View file

@ -152,6 +152,7 @@ typedef struct {
}
- (void) forwardInvocation: (NSInvocation*)inv;
- (id) initWithTarget: (id)target;
- (NSMethodSignature*) methodSignatureForSelector: (SEL)aSelector;
@end
@implementation MyProxy
@ -178,6 +179,10 @@ typedef struct {
[inv setReturnValue: b];
objc_free(b);
}
- (NSMethodSignature*) methodSignatureForSelector: (SEL)aSelector
{
return [obj methodSignatureForSelector: aSelector];
}
@end
int