Declare new methods.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@899 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Andrew McCallum 1996-02-13 01:54:48 +00:00
parent dd05a76be1
commit 78b946e763
2 changed files with 52 additions and 40 deletions

View file

@ -20,10 +20,9 @@
- initWithReturnType: (const char *)encoding;
- (void) invoke;
- (void) invokeWithObject: anObj;
- (void) invokeWithElement: (elt)anElt;
- (const char *) returnType;
- (unsigned) returnSize;
- (void) getReturnValue: (void *)addr;
- (void) getReturnValue: (void*) addr;
@end
@interface ArgframeInvocation : Invocation
@ -43,6 +42,7 @@
@interface MethodInvocation : ArgframeInvocation
- initWithArgframe: (arglist_t)frame selector: (SEL)s;
- initWithSelector: (SEL)s;
- initWithTarget: target selector: (SEL)s, ...;
- (void) invokeWithTarget: t;
- (SEL) selector;
- (void) setSelector: (SEL)s;
@ -50,6 +50,30 @@
- (void) setTarget: t;
@end
@interface VoidFunctionInvocation : Invocation
{
void (*function)();
}
- initWithFunction: (void(*)())f;
@end
#if 0
@interface VoidObjectFunctionInvocation : Invocation
{
void (*function)(id);
id object;
}
- initWithFunction: (void(*)())f;
@end
@interface ObjectObjectFunctionInvocation : Invocation
{
id (*function)(id);
}
- initWithFunction: (void(*)())f;
@end
@interface FunctionInvocation : ArgframeInvocation
{
void (*function)();
@ -59,24 +83,6 @@
- initWithFunction: (void(*)())f;
@end
#if 0
// NO, instead do above;
@interface EltFunctionInvocation
{
void (*func)(elt);
}
- initWithEltFunction: (void(*)(elt))func;
@end
@interface TclInvocation
- initWithTcl: (Tcl*)t command: (id <String>)c;
@end
@interface Collection (Invokes)
- makeObjectsInvoke: (MethodInvocation*)i;
- withObjectsInvoke: (Invocation*)i;
- withElementsInvoke: (EltInvocation*)i;
@end
#endif
#endif /* __Invocation_h_OBJECTS_INCLUDE */