Commit graph

2322 commits

Author SHA1 Message Date
Andrew McCallum
c9f6d80bb1 Class implemented using Invocation as behavior.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1000 72102866-910b-0410-8b05-ffd578937521
1996-02-24 18:47:39 +00:00
Andrew McCallum
d4cdc0c31f (return_retained): New macro.
([Invocation -setReturnValue:]): Retain return value if necessary.
([ArgframeInvocation -_retainArguments]): Add missing local var.
([MethodInvocation -initWithArgframe:type:]): New method.
([MethodInvocation -initWithArgframe:selector:]): Use new method.  Set
selector using sel_pointer.
([ObjectFunctionInvocation -invokeWithObject:]): Use return_retained,
not args_retained.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@999 72102866-910b-0410-8b05-ffd578937521
1996-02-24 18:46:48 +00:00
Andrew McCallum
645c3c3c96 ([Invocation -initWithReturnType:]): Use new ivar names. Use calloc
instead of malloc.
([Invocation -encodeWithCoder:]): New method.
([Invocation -initWithCoder:]): New method.
([Invocation -classForConnectedCoder:]): New method.
([Invocation -returnType]): Use new ivar name.
([Invocation -setReturnValue:]): New method.
([Invocation -objectReturnValue]): Method implemented.
([Invocation -intReturnValue]): Method implemented.
([Invocation -returnValueIsTrue]): Method implementation finished.
([Invocation -dealloc]): Use new ivar name.  Release return type if
necessary.
([ArgframeInvocation -_retainArguments]): New method.
([ArgframeInvocation -_initArgframeFrom:withType:retainArgs:]): Method
overhauled.
([ArgframeInvocation -initWithArgframe:type:]): Use new method.
([ArgframeInvocation -encodeWithCoder:]): New method.
([ArgframeInvocation -initWithCoder:]): New method.
([ArgframeInvocation -argumentTypeAtIndex:]): Use new ivar name.
([ArgframeInvocation -retainArguments]): New method.
([ArgframeInvocation -argumentsRetained]): New method.
([ArgframeInvocation -_deallocArgframe]): New method.
([ArgframeInvocation -dealloc]): Use new method.  Release args if
necessary.
([MethodInvocation -_initTargetAndSelPointers]): New method.
([MethodInvocation -initWithArgframe:selector:]): Use new method.
([MethodInvocation -initWithCoder:]): New method.
([MethodInvocation -initWithTarget:selector:...]): Retain args if
necessary.
([MethodInvocation -invoke]): Use new ivars.
([MethodInvocation -invokeWithTarget:]): Use -setTarget:.
([MethodInvocation -selector]): Use new ivar.
([MethodInvocation -setSelector:]): Likewise.
([MethodInvocation -target]): Likewise.
([MethodInvocation -setTarget:]): Likewise.
([ObjectMethodInvocation -_initArgObjectPointer]): New method.
([ObjectMethodInvocation -initWithArgframe:selector:]): Use new method.
([ObjectMethodInvocation -initWithCoder:]): New method.
([ObjectMethodInvocation -invokeWithObject:]): New method.
(VoidFunctionInvocation): New class implementation.
(ObjectFunctionInvocation): New class implementation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@998 72102866-910b-0410-8b05-ffd578937521
1996-02-24 17:03:04 +00:00
Andrew McCallum
49f9e1b864 Make -invoke methods return void. Include objects/Invoking.h.
(return_type): ivar renamed from encoding.
(ArgframeInvocation args_retained): new ivar.
(MethodInvocation target_pointer): new ivar.
(MethodInvocation sel_pointer): new ivar.
(VoidFunctionInvocation): New class.
(ObjectFunctionInvocation): New class.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@997 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:42:35 +00:00
Andrew McCallum
bbcd2338b7 Make -invoke methods return void.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@996 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:40:44 +00:00
Andrew McCallum
4ae2c0777d ([Encoder +initialize]): Compare self with Encoder, not Coder.
([Encoder +encodeRootObject:withName:toStream:]): Rename method to
-close.
([Encoder -encodeSelector:withName:name]): Use sel_get_any_typed_uid
instead of sel_get_any_uid.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@995 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:40:17 +00:00
Andrew McCallum
b9b9179ba4 Formatting change.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@994 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:38:43 +00:00
Andrew McCallum
d34f64b00e ([Stream -close]): Method renamed from -closeStream.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@993 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:37:55 +00:00
Andrew McCallum
f4cc4199c3 Rename method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@992 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:37:09 +00:00
Andrew McCallum
cc0042bdac ([Coder +setDefaultCStreamClass:]): Declare method.
([Coder +defaultCStreamClass]): Declare method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@991 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:35:58 +00:00
Andrew McCallum
a0e9567b24 ([Coder -close]): Method renamed from -closeCoding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@990 72102866-910b-0410-8b05-ffd578937521
1996-02-24 16:35:03 +00:00
Andrew McCallum
45f688298e (retain_counts): Make it a NSMapTable instead of a coll_hash.
(NSIncrementExtraRefCount): Update for new retain_counts type.
(NSDecrementExtraRefCountWasZero): Likewise.
([NSObject +initialize]): Likewise.
([NSObject -retainCount]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@989 72102866-910b-0410-8b05-ffd578937521
1996-02-22 23:12:19 +00:00
Andrew McCallum
cb082f3af4 (GNU_HEADERS): Add objects/bitops.h, objects/minmax.h.
(GNU_OTHER_SRCFILES): Add md5.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@988 72102866-910b-0410-8b05-ffd578937521
1996-02-22 22:17:15 +00:00
Andrew McCallum
63a9a4341e (GNU_HEADERS): Add objects/Enumerating.h, objects/Invoking.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@987 72102866-910b-0410-8b05-ffd578937521
1996-02-22 22:10:00 +00:00
Andrew McCallum
26b1c77e10 (GNU_HEADERS): Add objects/array.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@986 72102866-910b-0410-8b05-ffd578937521
1996-02-22 22:09:05 +00:00
Andrew McCallum
43b2e0f097 ([NSString -hash]): Don't use elt_* function, and use
NSHashStringLength.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@984 72102866-910b-0410-8b05-ffd578937521
1996-02-22 21:50:35 +00:00
Andrew McCallum
50d64ec469 ([String -hash]): Don't use elt_* function, and use
NSHashStringLength.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@983 72102866-910b-0410-8b05-ffd578937521
1996-02-22 21:50:25 +00:00
Andrew McCallum
060410dfd6 (__objc_dynamic_find_symbol): Cast to drop const type, and avoid warning.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@982 72102866-910b-0410-8b05-ffd578937521
1996-02-22 21:21:30 +00:00
Andrew McCallum
91ce5762db Add *-basics.h and *-callbacks.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@981 72102866-910b-0410-8b05-ffd578937521
1996-02-22 21:16:48 +00:00
Andrew McCallum
4f368c59a3 (GNU_MFILES): Remove eltfuncs.m.
(GNU_HEADERS): Remove objects/elt.h, objects/eltfuncs.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@980 72102866-910b-0410-8b05-ffd578937521
1996-02-22 21:15:46 +00:00
Andrew McCallum
9b432fa985 (GNU_CFILES): Remove collhash.c.
(GNU_HEADERS): Remove objects/collhash.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@979 72102866-910b-0410-8b05-ffd578937521
1996-02-22 21:13:33 +00:00
Andrew McCallum
5b2c1a0fa6 New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@978 72102866-910b-0410-8b05-ffd578937521
1996-02-22 17:45:48 +00:00
Andrew McCallum
267fc77509 Reinstate this file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@970 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:10:56 +00:00
Andrew McCallum
04867f76a3 Move much of functionality to Encoder.m, Decoder.m, and
objects/CoderPrivate.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@969 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:09:23 +00:00
Andrew McCallum
fa1f5c0ee1 ([Invocation -objectReturnValue]): New method.
([Invocation -intReturnValue]): New method.
([Invocation -returnValueIsTrue]): New method.
([Invocation -initWithTarget:selector:...]): Use switch statement to
handle value arguments, instead of pointer-to-value arguments.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@968 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:08:26 +00:00
Andrew McCallum
63bfd741d9 ([NumberTemplate -hash]): New method.
([NumberTemplate -isEqual:]): New method.
([NumberTemplate -encodeWithCoder:]): Make this self-contained.
([NumberTemplate -initWithCoder:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@967 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:06:34 +00:00
Andrew McCallum
ee361e59f8 Overhaul for new collection class scheme to improve distributed
objects and NeXT-compatibility.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@966 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:05:47 +00:00
Andrew McCallum
a867a5e028 Fix typos.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@965 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:05:12 +00:00
Andrew McCallum
2749460f86 ([Port -encodeWithCoder:]): Fix argument type.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@964 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:04:15 +00:00
Andrew McCallum
a652d3251c Many fixes, continuing conversion from old IndexedCollection.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@963 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:03:55 +00:00
Andrew McCallum
6766050b57 ([NSValueDecoder +newWithCoder:]): Comment out for now; I think it
needs fixes.
([NSValueDecoder -initWithCoder:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@962 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:02:48 +00:00
Andrew McCallum
cd4cb5279b ([NSNumber -description]): New method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@961 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:02:02 +00:00
Andrew McCallum
6e2fc7f944 New version from Albin Jones, plus fixes by McCallum.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@960 72102866-910b-0410-8b05-ffd578937521
1996-02-22 16:00:28 +00:00
Andrew McCallum
30b92976bb New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@956 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:56:02 +00:00
Andrew McCallum
3cad5251c8 Declare classes Encoder and Decoder; extensive rearrangement of ivars,
method names and protocols.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@955 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:51:05 +00:00
Andrew McCallum
848543a778 Don't include <objc/List.h>
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@954 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:50:13 +00:00
Andrew McCallum
ae128cb65c Change many method return types to void.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@953 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:49:46 +00:00
Andrew McCallum
70f2e46fc0 Subclass from Encoder and Decoder, not Coder.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@952 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:49:05 +00:00
Andrew McCallum
3b35400984 (GNUSTEP_OTHER_SRCFILES): Add NSCallBacks.h.
(GNUSTEP_HEADERS): Remove Foundation/NSCallBacks.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@951 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:48:36 +00:00
Andrew McCallum
079a267be8 New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@950 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:47:04 +00:00
Andrew McCallum
16636b8a2f (CFLAGS): Remove -Wno-implicit.
(GNU_MFILES): Remove BinaryTreeEltNode.m, LinkedListEltNode.m,
RNTreeEltNode.m.  Add Decoder.m, Encoder.m.  Temporarily remove
ConnectedCoder.m, Connection.m, RetainingNotifier.m, Time.m.
(GNU_CFILES): Add allocs.c.
(GNU_OBJS): Change order to create BASICS and CALLBACKS first.
(GNU_HEADERS): Remove BinaryTreeEltNode.h, EltNode-h, EltNode-m,
LinkedListEltNode.h, RBTreeEltNode.h.
(GNUSTEP_MFILES): NSCallBacks.m.
(GNUSTEP_HEADERS): Foundation/NSCallBacks.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@949 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:43:34 +00:00
Andrew McCallum
873bc50fa4 New version from Albin Jones, plus fixes by McCallum.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@948 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:25:44 +00:00
Andrew McCallum
b07609e467 Overhaul for new collection class scheme to improve distributed
objects and NeXT-compatibility.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@947 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:18:57 +00:00
Andrew McCallum
7968d35f47 Use new Archiver classes instead of Coder.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@946 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:17:12 +00:00
Andrew McCallum
1ecc7f734a Use NSMapTable instead of Dictionary class.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@945 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:15:46 +00:00
Andrew McCallum
d53ac681bb Overhaul for new collection class scheme to improve distributed
objects and NeXT-compatibility.  Change several methods to return void.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@944 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:15:10 +00:00
Andrew McCallum
b3980320d5 ([CString -initWithCString:range:]): Don't make super call.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@943 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:13:53 +00:00
Andrew McCallum
75ee58bde4 ([BinaryCStream -decodeValueOfCType:at:withName:]): Make save_type const.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@942 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:13:13 +00:00
Andrew McCallum
aa266f9ce5 Don't include <objects/eltfuncs.h>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@941 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:12:41 +00:00
Andrew McCallum
8b1ddb9758 Overhaul for new collection class scheme to improve distributed objects and NeXT-compatibility.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@940 72102866-910b-0410-8b05-ffd578937521
1996-02-22 15:11:43 +00:00