Commit graph

1240 commits

Author SHA1 Message Date
mccallum
df76a73a48 File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1493 72102866-910b-0410-8b05-ffd578937521
1996-05-06 19:10:52 +00:00
mccallum
2a513e2117 All uses of @"" were crashing in Linux libc-5.3.9.
(arginfo_func): New function.
(handle_printf_atsign): Get the string object without va_arg().
([NSString +initialize]): Use new function.
(Reported and fixed by Kai-Uwe Sattler
<sattler@volker.cs.Uni-Magdeburg.DE>.)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1492 72102866-910b-0410-8b05-ffd578937521
1996-05-06 18:59:01 +00:00
mccallum
9d1d627729 ([NSMutableArrayNonCore -removeObject:]): Replace with version that
removes all objects equal to argument.
([NSMutableArrayNonCore -removeObjectIdenticalTo:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1491 72102866-910b-0410-8b05-ffd578937521
1996-04-30 14:25:22 +00:00
mccallum
a7aa62d7db ([TextCStream -encodeValueOfCType:at:withName:]): If name is nil or
zero-length, make it "Anonymous".


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1485 72102866-910b-0410-8b05-ffd578937521
1996-04-19 23:16:59 +00:00
mccallum
cf5278b6d9 Add todo comments.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1484 72102866-910b-0410-8b05-ffd578937521
1996-04-19 23:16:24 +00:00
mccallum
4c0c21dc34 (USE_OPENSTEP_STYLE_FORWARD_REFERENCES): New macro.
(NSGArchiverNullCStream): New class, interface and implementation.
([NSGArchiverNullCStream -decodeValueOfCType:at:withName:]): New method.
([NSGArchiverNullCStream -decodeValueOfCType:at:withName:]): New method.
([NSGArchiver -encodeRootObject:withName:]): New method.
([NSGArchiver -encodeConditionalObject:]): New method.
([NSGArchiver -_coderCreateReferenceForObject:]): New method.
([NSGArchiver -_coderCreateForwardReferenceForObject:]): New method.
([NSGArchiver -_coderForwardReferenceForObject:]): New method.
([NSGArchiver -_objectWillBeInProgress:]): New method.
([NSGArchiver -_objectNoLongerInProgress:]): New method.
([NSGArchiver -defaultDecoderClassname]): New method.
([NSGUnarchiver -_createReferenceBeforeInit]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1483 72102866-910b-0410-8b05-ffd578937521
1996-04-19 23:15:30 +00:00
mccallum
32b5f18ba1 ([NSUnarchiver +initialize]): Test self against NSUnarchiver class.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1482 72102866-910b-0410-8b05-ffd578937521
1996-04-19 23:13:51 +00:00
mccallum
6687fc397a (debug_coder): Make it a static var instead of a #define.
([Encoder -_objectWillBeInProgress:]): New method.
([Encoder -_objectNoLongerInProgress:]): New method.  Depending on
whether we are doing GNU or OpenStep style forward references one of
these two methods will create a backward reference to the object by
calling -_coderInternalCreateReferenceForObject:.  This will effect
whether encoding make forward or backward references to objects in
progress.  GNU uses forward references, which is robust even when the
object's -initWithCoder substitutes another object for self.
([Encoder -_encodeObject:withName:isBycopy:isForwardReference:]): Use
new methods.  Don't call -_coderInternalCreateReferenceForObject here,
let one of the ...InProgress methods do it.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1481 72102866-910b-0410-8b05-ffd578937521
1996-04-19 23:12:59 +00:00
mccallum
1e171d13a7 (debug_coder): Make it a static var instead of a #define.
([Decoder -_coderCreateReferenceForObject:]): Add a debugging message.
([Decoder -_coderCreateReferenceForInterconnectedObject:]):
Autorelease the placeholder object.
([Decoder -_createReferenceBeforeInit]): New method.  By default
return NO, for the GNU-style forward references.
([Decoder -decodeObjectAt:anObjPtr:name]): [CODER_OBJECT]: Use new
method; if it returns true, then we are using non-GNU, OpenStep-style
forward references.  In this case: (1) don't try to decode the object by
sending +newWithCoder:, in fact, raise an error if the object wanted
to be decoded that way; (2) call _coderInternalCreateReferenceForObject
before sending -initWithCoder, not after; unfortunately this means
that -initWithCoder methods cannot substitute another object for self.
If it returns false, use the more robust GNU style forward references.
The NSGUnarchiver overrides this method to use the OpenStep style.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1480 72102866-910b-0410-8b05-ffd578937521
1996-04-19 23:05:57 +00:00
mccallum
e16a142cde Include gnustep/base/Archiver.h.
([Coder +archivedDataWithRootObject:]): Use Archiver class, not
NSArchiver, it matters because now the two classes handle forward
references differently.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1479 72102866-910b-0410-8b05-ffd578937521
1996-04-19 22:59:11 +00:00
mccallum
26d90fec56 (Foundation): Fix dependancy to force proper handling after a cvs
checkout.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1476 72102866-910b-0410-8b05-ffd578937521
1996-04-18 12:31:52 +00:00
mccallum
986b9760cf ([Decoder -decodeObjectAt:anObjPtr:name]): Decode the Unindent
*before* decoding the fref; as does Encoder!


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1466 72102866-910b-0410-8b05-ffd578937521
1996-04-18 01:47:52 +00:00
mccallum
3228ed0477 Change R. Andrew McCallum to post-marriage name: Andrew Kachites McCallum
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1456 72102866-910b-0410-8b05-ffd578937521
1996-04-17 20:17:45 +00:00
mccallum
c9390386a4 Rename in comments from GNU Objective C Class Library to Gnustep Base Library.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1454 72102866-910b-0410-8b05-ffd578937521
1996-04-17 20:01:09 +00:00
mccallum
dbe4613ced Rename in comments from GNU Objective C Class Library to Gnustep Base Library.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1451 72102866-910b-0410-8b05-ffd578937521
1996-04-17 19:55:26 +00:00
mccallum
2361a6f94f Rename all objects_* to o_*.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1445 72102866-910b-0410-8b05-ffd578937521
1996-04-17 19:26:04 +00:00
mccallum
e819b08f9c ([NSGSet -isEqual:]): Call isEqualToSet: (in superclass).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1444 72102866-910b-0410-8b05-ffd578937521
1996-04-17 19:21:57 +00:00
mccallum
db3c8a5a51 Use preface.h instead of stdobjects.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1439 72102866-910b-0410-8b05-ffd578937521
1996-04-17 19:04:15 +00:00
mccallum
e667c9e3fa Change all include objects/*.h to include gnustep/base/*.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1438 72102866-910b-0410-8b05-ffd578937521
1996-04-17 19:02:37 +00:00
mccallum
82d3aa098e File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1437 72102866-910b-0410-8b05-ffd578937521
1996-04-17 19:01:47 +00:00
mccallum
2e03d0fb4d Change all include objects/*.h to include gnustep/base/*.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1436 72102866-910b-0410-8b05-ffd578937521
1996-04-17 19:01:22 +00:00
mccallum
27129f6452 ([CStream -writeSignature]): Use new version macro names.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1435 72102866-910b-0410-8b05-ffd578937521
1996-04-17 18:59:34 +00:00
mccallum
8d708fb335 (__gnustep_base_subinit_args__): Renamed from libobjects...
(main): Use gnustep_base_user_main, not LibobjectsMain.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1431 72102866-910b-0410-8b05-ffd578937521
1996-04-17 17:37:22 +00:00
mccallum
b6640ad777 Include objc-malloc.h from gnustep/base.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1429 72102866-910b-0410-8b05-ffd578937521
1996-04-17 17:31:02 +00:00
mccallum
a937ffc633 (Foundation): Add step to get rid of old Foundation directory that
would come from a CVS checkout.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1428 72102866-910b-0410-8b05-ffd578937521
1996-04-17 17:10:43 +00:00
mccallum
3bfd520e88 Adjust comment.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1427 72102866-910b-0410-8b05-ffd578937521
1996-04-17 16:58:44 +00:00
mccallum
7b0fbbd162 (include/preface.h): Make substitutions for macro name, as well as value.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1421 72102866-910b-0410-8b05-ffd578937521
1996-04-17 15:40:18 +00:00
mccallum
89d67bb808 Fix typo; it is preface.h, not prefix.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1420 72102866-910b-0410-8b05-ffd578937521
1996-04-17 15:34:35 +00:00
mccallum
d4b12b4053 Change all include objects/*.h to include gnustep/base/*.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1419 72102866-910b-0410-8b05-ffd578937521
1996-04-17 15:23:00 +00:00
mccallum
6cc570eca1 (all): Add dependancy on `Foundation'.
(Foundation): New target.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1418 72102866-910b-0410-8b05-ffd578937521
1996-04-17 15:17:52 +00:00
mccallum
54a1fed9d9 Update names of global const char's.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1417 72102866-910b-0410-8b05-ffd578937521
1996-04-17 15:08:10 +00:00
mccallum
6fe53d1e3c Don't assume the `lib' prefix is included in $(LIBRARY_NAME).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1413 72102866-910b-0410-8b05-ffd578937521
1996-04-17 14:52:22 +00:00
mccallum
2ad329bbc6 Rename all occurrences of objects/' to include/'.
Rename all occurrences of `Foundation/' to `include/'.
Rename all occurrences of `libobjects' to `$(LIBRARY_NAME)'.
Rename all occurrences of `OBJECTS_*VERSION' to `*VERSION'.
(GNU_NEXT_INCLUDES): Renamed from OBJECTS_NEXT_INCLUDES.
(gnustep/base): New target; make symbolic link to `include'.
(all): Added dependancy on gnustep/base.
(install): Put the include files in gnustep/base.  Make a link from
$(includedir)/Foundation to $(includedir)/gnustep/base.
(installdirs): Make $(includedir)/gnustep/base, not objects and
Foundation include directories.
(GNU_MFILES): stdobjects.m renamed to preface.m.
(GNU_HEADERS): LibobjectsMain.h renamed to fake-main.h.  objects.h
renamed to all.h.
(HEADERS_INSTALL): stdobjects.h renamed to preface.h.
(maintainer-clean): Likewise.
(DIST_FILES): stdobjects.h.in renamed to preface.h.in.
(RCS_FILES): Likewise.
(include/preface.h): Target renamed from stdobjects.h.
(preface$(OEXT)): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1409 72102866-910b-0410-8b05-ffd578937521
1996-04-17 14:41:15 +00:00
mccallum
643ad61075 File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1408 72102866-910b-0410-8b05-ffd578937521
1996-04-17 14:33:00 +00:00
mccallum
46a2a3d9f3 File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1406 72102866-910b-0410-8b05-ffd578937521
1996-04-17 13:34:36 +00:00
mccallum
46d78ca8f1 File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1404 72102866-910b-0410-8b05-ffd578937521
1996-04-17 13:14:40 +00:00
mccallum
9a8e1a650b ([NotificationDispatcher
-_addObserver:notificationRequest:name:object:]): Don't release NR here.
([NotificationDispatcher -addInvocation:name:object:]): Release it here.
([NotificationDispatcher -addObserver:selector:name:object:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1388 72102866-910b-0410-8b05-ffd578937521
1996-04-17 00:29:24 +00:00
mccallum
4836bf8c2e (debug_tcpport): Changed from 1 to 0; don't print debugging messages.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1386 72102866-910b-0410-8b05-ffd578937521
1996-04-16 23:28:35 +00:00
mccallum
8f242feadf (debug_proxy): Changed from 1 to 0; don't print debugging messages.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1385 72102866-910b-0410-8b05-ffd578937521
1996-04-16 23:28:14 +00:00
mccallum
4544d06b79 (debug_connection): Changed from 1 to 0; don't print debugging
messages.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1384 72102866-910b-0410-8b05-ffd578937521
1996-04-16 23:27:53 +00:00
mccallum
aff8870c71 ([NSArrayNonCore -arrayByAddingObject:]): Autorelease the returned
array.
([NSArrayNonCore -arrayByAddingObjectsFromArray:]): Likewise.
([NSArrayNonCore -subarrayWithRange:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1383 72102866-910b-0410-8b05-ffd578937521
1996-04-16 23:22:08 +00:00
mccallum
3ecc0f9d4d (GNU_MFILES): Re-added Time.m.
(o_vscanf$(OEXT), o_vscanf_pic$(OEXT)): New rules that turn off
warnings for o_vscanf.c, it generates a bunch of unimportant ones.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1381 72102866-910b-0410-8b05-ffd578937521
1996-04-16 22:38:28 +00:00
mccallum
eebe43a13b Only declare "id MemoryExchaustedException" #ifdef __OBJC__. This
allows <objects/objc-malloc.h> to be include in non-ObjC files, i.e. C
files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1380 72102866-910b-0410-8b05-ffd578937521
1996-04-16 22:18:32 +00:00
mccallum
1ba2a634c9 Include <objects/stdobjects.h> first.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1379 72102866-910b-0410-8b05-ffd578937521
1996-04-16 22:17:34 +00:00
mccallum
5b483ea611 ([Time +initialize]): Comment out day/month name handling that depends
on old Collection heirarchy.
([Time +indexOfDayName:]): un-implemented.
([Time +nameOfDayIndex:]): Likewise.
([Time +indexOfMonthName:]): Likewise.
([Time +nameOfMonthIndex:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1375 72102866-910b-0410-8b05-ffd578937521
1996-04-16 22:01:18 +00:00
mccallum
313ef47ba4 ([Heap -heapifyFromIndex:]): Swap -compare: receiver and argument, so
firstObject is minimum instead of maximum object.
([Heap -addObject:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1371 72102866-910b-0410-8b05-ffd578937521
1996-04-16 21:29:00 +00:00
mccallum
062a995fe7 ([NSGDictionaryObjectEnumerator -nextObject]): Return the key, not the
object.
([NSGDictionary -objectForKey:]): Method moved from
NSGMutableDictionary.
([NSGMutableDictionary +initialize]): Don't use static variable in
test.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1370 72102866-910b-0410-8b05-ffd578937521
1996-04-16 02:52:13 +00:00
mccallum
6ae9416376 ([KeyEnumerator -initWithCollection:]): New method.
([KeyEnumerator -nextObject]): New method.
([KeyEnumerator -dealloc]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1369 72102866-910b-0410-8b05-ffd578937521
1996-04-16 02:50:42 +00:00
mccallum
811ad24881 ([LinkedList -encodeWithCoder:]): New method.
([LinkedList -initWithCoder:]): New method.
([LinkedList -_initCollectionWithCoder:]): Method removed.
([LinkedList -_encodeContentsWithCoder:]): Method removed.
([LinkedList -_decodeContentsWithCoder:]): Method removed.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1366 72102866-910b-0410-8b05-ffd578937521
1996-04-14 16:00:07 +00:00
mccallum
fc619424b7 ([Coder -encodeConditionalObject:]): Don't use old, removed method
name to see if object has already been encoded.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1365 72102866-910b-0410-8b05-ffd578937521
1996-04-14 15:58:03 +00:00
mccallum
f64eb0baae (debug_binary_coder): Explicitly set to zero.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1364 72102866-910b-0410-8b05-ffd578937521
1996-04-14 00:59:58 +00:00
mccallum
a692b70a7a Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1363 72102866-910b-0410-8b05-ffd578937521
1996-04-13 19:57:11 +00:00
mccallum
918e1fcfd3 ([Coder (Private) -_coderReferenceForObject:): Renamed from
old-xref-scheme "_coderHasObjectReference:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1362 72102866-910b-0410-8b05-ffd578937521
1996-04-13 19:55:26 +00:00
mccallum
192ff064ea Add comments to CONNECTION_WIDE_OBJECT_REFERENCES section.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1361 72102866-910b-0410-8b05-ffd578937521
1996-04-13 19:54:19 +00:00
mccallum
d544aacf47 ([Decoder -decodeObjectAt:withName:]): Allow for the case in which
ANOBJPTR is NULL, and deal with it using a DUMMY_OBJECT local variable.
Remove CODER_OBJECT_FORWARD_SATISFIER case.  In the CODER_OBJECT case,
decode the forward reference number, and deal with it appropriately.
See the ChangeLog comments for the Encoder changes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1359 72102866-910b-0410-8b05-ffd578937521
1996-04-13 19:29:39 +00:00
mccallum
12a9901113 ([Encoder -_encodeObject:withName:isBycopy:isForwardReference:]): See
if object satisfies a forward reference *after* encoding it.  This is
necessary because the encoding of subobjects may generate forward
references.  (In a sense, this undoes the last change, but it is
significantly different in that we test whether the object is in the
object_2_fref table *after* encoding the object; before we looked in
the table before encoding the object.)  As a consequence,
the CODER_OBJECT_FORWARD_SATISFIER tag is no longer necessary; this
was used to tag an object before it was encoded, but now we understand
that we cannot know whether this object satisfies a forward reference
until after it has been encoded.  Thus, for all objects we encode an
unsigned int after encoding the object itself.  This unsigned int is
either the forward reference number of zero, depending on whether this
object satisfies any forward references.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1358 72102866-910b-0410-8b05-ffd578937521
1996-04-13 19:27:23 +00:00
mccallum
9f5a3aa82c (CODER_OBJECT_FORWARD_SATISFIER): Enum constant removed; it is no
longer needed.  Note: decoders built after this change will not be
able to read data files encoded before this change.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1357 72102866-910b-0410-8b05-ffd578937521
1996-04-13 19:21:07 +00:00
mccallum
0ebd08872c ([ConstantCollection -_decodeContentsWithCoder:]): Use alloca(), not
objc_malloc(), plugging memory leak.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1356 72102866-910b-0410-8b05-ffd578937521
1996-04-13 18:37:57 +00:00
mccallum
eba65f78eb ([Encode -_encodeObject:withName:isBycopy:isForwardReference:]): If
this object satisfies a forward reference, remove it from the
object_2_fref table before encoding the object, since, in the process
of encoding the object, we may generate more references to this
object, and we don't want to interpret this as another forward
reference satisfier; previously an object could get encoded as a
forward reference satisfier more than once.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1355 72102866-910b-0410-8b05-ffd578937521
1996-04-13 17:49:22 +00:00
mccallum
94ed47bd55 (Encoder fref_counter): New ivar for guaranteeing that forward
references have unique names.  Previous use of the MapTable count
for this purpose didn't work because we occasionally removed elements
from the table, and thus had aliased forward reference numbers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1354 72102866-910b-0410-8b05-ffd578937521
1996-04-12 21:13:12 +00:00
mccallum
82098fd24f ([StdioStream -writeBytes:length:]): Check for error condition, and
report.  Reporting scheme needs fixing.
([StdioStream -readBytes:length:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1353 72102866-910b-0410-8b05-ffd578937521
1996-04-12 21:11:11 +00:00
mccallum
2332831d4f ([LinkedList -_decodeContentsWithCoder:]): Step through the new list,
and send -setLinkedList:, otherwise the links don't properly know
about their parent LinkedList.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1352 72102866-910b-0410-8b05-ffd578937521
1996-04-12 21:10:15 +00:00
mccallum
7e4f9c510e ([Encoder -initForWritingToStream:withFormatVersion:cStreamClass
:cStreamFormatVersion:]): Initialize new ivar.
([Encoder -_coderCreateForwardReferenceForObject:]): Use new ivar to
`gensym' a new forward reference.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1351 72102866-910b-0410-8b05-ffd578937521
1996-04-12 21:09:24 +00:00
mccallum
38b8b74f50 ([Decoder -_coderSatisfyForwardReference:withObject:]): Create
fref_2_object with NSNonOwnedPointerMapValueCallBacks, not
NSObjectMapValueCallBacks.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1350 72102866-910b-0410-8b05-ffd578937521
1996-04-12 21:08:06 +00:00
mccallum
caf331e0e6 ([Encoder -_coderCreateForwardReferenceForObject:]): Initialize the
OBJECT_2_FREF ivar, if it hasn't been already.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1349 72102866-910b-0410-8b05-ffd578937521
1996-04-10 21:30:10 +00:00
mccallum
03d62d7e71 (MemoryExhaustedException): Declare this global variable; note that
now objc-malloc.h cannot be included in .c files, only .m files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1348 72102866-910b-0410-8b05-ffd578937521
1996-04-10 20:47:02 +00:00
mccallum
dce5dfe236 Changed from objc-malloc.c. Raise a MemoryExhaustedException with
NSException instead of calling objc_fatal.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1347 72102866-910b-0410-8b05-ffd578937521
1996-04-10 20:46:03 +00:00
mccallum
daea1ad502 File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1346 72102866-910b-0410-8b05-ffd578937521
1996-04-10 20:30:35 +00:00
mccallum
a12d8aba24 (GNU_CFILES): Removed objc-malloc.c.
(GNU_MFILES): Added objc-malloc.m.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1344 72102866-910b-0410-8b05-ffd578937521
1996-04-10 20:21:46 +00:00
mccallum
724e71f960 (GNUSTEP_MFILES): Added NSRunLoop.m.
(GNUSTEP_HEADERS): Added Foundation/NSRunLoop.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1343 72102866-910b-0410-8b05-ffd578937521
1996-04-10 18:21:47 +00:00
mccallum
3c5f1b1640 New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1341 72102866-910b-0410-8b05-ffd578937521
1996-04-10 18:20:36 +00:00
mccallum
7df9cb9436 ([NSAutoreleasePool -dealloc]): When unintalling ourselves at the
current pool, and setting our parent to be the current pool, be sure
to set our parent's _CHILD ivar to nil.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1340 72102866-910b-0410-8b05-ffd578937521
1996-04-10 16:40:25 +00:00
mccallum
272a2c30fd (mframe_do_call): Use sel_get_type() instead of
class_get_instance_method() to get the selector type.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1339 72102866-910b-0410-8b05-ffd578937521
1996-04-10 16:37:30 +00:00
mccallum
ea181197c4 (mframe_do_call): When getting the instance method, just use
object->class_pointer, not object_get_class(), because
object_get_class() of a class will return the argument, not the
metaclass---we want the metaclass.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1337 72102866-910b-0410-8b05-ffd578937521
1996-04-09 23:55:42 +00:00
mccallum
a2f9fe90a6 ([TcpInPort +newForReceivingFromPortNumber:]): Bind the socket with
INADDR_ANY, (not the host's address), so that others can connect using
any of the host's interfaces, including localhost.  Add the host's
address to _LISTENING_ADDRESS after the bind().


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1336 72102866-910b-0410-8b05-ffd578937521
1996-04-09 03:02:20 +00:00
mccallum
2cff25e764 ([NSDictionary -allKeysForObject:]): Ask SELF for objectForKey:, not K.
(Reported by Robert Quillen <rquillen@csugrad.cs.vt.edu>).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1335 72102866-910b-0410-8b05-ffd578937521
1996-04-08 17:19:16 +00:00
mccallum
b6064633dc (ABS): Remove macro.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1333 72102866-910b-0410-8b05-ffd578937521
1996-04-01 02:52:12 +00:00
mccallum
49d377aca8 ([MappedCollector -nextObjectAndKey:withEnumState:]): Add comment.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1331 72102866-910b-0410-8b05-ffd578937521
1996-04-01 02:50:55 +00:00
mccallum
e31f91035b ([MappedCollector -newEnumState]): New method.
([MappedCollector -freeEnumState:]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1329 72102866-910b-0410-8b05-ffd578937521
1996-04-01 02:41:44 +00:00
mccallum
fa05569ce8 (ABS): Remove macro; now defined in objects/stdobjects.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1328 72102866-910b-0410-8b05-ffd578937521
1996-03-31 23:15:12 +00:00
mccallum
9a4abde655 Declare new function names.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1327 72102866-910b-0410-8b05-ffd578937521
1996-03-31 22:46:59 +00:00
mccallum
5b640895e7 Add #ifndef/#endif wrapper around header file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1326 72102866-910b-0410-8b05-ffd578937521
1996-03-31 22:46:44 +00:00
mccallum
c20c905fe0 (behavior_class_add_class): Function renamed from class_add_behavior.
Add more explanation to NSCAssert().
(class_add_behavior): New function, calling above function.
(behavior_class_add_category): New function.
(behavior_class_add_methods): Function renamed from
class_add_methods_if_not_there.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1325 72102866-910b-0410-8b05-ffd578937521
1996-03-31 22:46:14 +00:00
mccallum
ff771f9d6b ([NSGArray +initialize]): Add the NSArrayNonCore behavior, so we can,
once and for all, avoid the need for those odd [super ...] calls, and
can remove many methods.
([NSGArray -initWithObjects:count:]): Method removed.
([NSGArray -indexOfObject:]): Method removed.
([NSGArray -objectAtIndex:]): Method removed.
([NSGMutableArray +initialize]): Add the NSMutableArrayNonCore
behavior, as above.
([NSGMutableArray -replaceObjectAtIndex:withObject:]): Method removed.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1324 72102866-910b-0410-8b05-ffd578937521
1996-03-31 22:34:27 +00:00
mccallum
048f55528d Divide methods between NSArray and NSArrayNonCore classes. Add
NSArrayNonCore behavior to NSArray.
Divide methods between NSMutableArray and NSMutableArrayNonCore
classes.  Add NSArrayNonCore behavior to NSArray.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1323 72102866-910b-0410-8b05-ffd578937521
1996-03-31 22:23:37 +00:00
mccallum
e5e9e8c0e8 Include <objects/stdobjects.h>.
(class_add_behavior): Use NSCAssert() to make sure that we don't try
to increase the instance size of a class that has been subclassed;
(hopeless ivar layout confusion would result).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1319 72102866-910b-0410-8b05-ffd578937521
1996-03-31 21:54:02 +00:00
mccallum
a4e8ca1af5 (GNU_CFILES): Removed behavior.c.
(GNU_MFILES): Added behavior.m.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1318 72102866-910b-0410-8b05-ffd578937521
1996-03-31 21:43:41 +00:00
mccallum
af64387855 *** empty log message ***
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1317 72102866-910b-0410-8b05-ffd578937521
1996-03-31 21:41:02 +00:00
mccallum
00e53dbf51 ([NSArray -lastObject]): Don't assert count; just return nil if it's
empty.
([NSMutableArray -removeLastObject]): Don't assert count; raise
NSRangeError if it's empty.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1314 72102866-910b-0410-8b05-ffd578937521
1996-03-30 23:00:27 +00:00
mccallum
b5e1608e0c Make NSAutoreleasePools co-exist with exceptions, safely and without
leaks.  Also improve efficiency by using a linked list of arrays
instead of realloc when more space is needed, and by using a cache of
pools that helps avoid the allocation/deallocation of pools.
(push_pool_to_cache): New function.
(pop_pool_from_cache): New function.
([NSAutoreleasePool +initialize]): New method.
([NSAutoreleasePool +allocWithZone:]): New method.
([NSAutoreleasePool -init]): Method overhauled to initialize new ivar
for handling exceptions, _child; also use pool cache.
(total_autoreleased_objects_count): New static variable.
(BEGINNING_POOL_SIZE): Macro renamed from DEFAULT_SIZE.
(autorelease_pool_cache, autorelease_pool_cache_size,
autorelease_pool_cache_count): New static variables.
([NSAutoreleasePool -_setChildPool:]): New method, handling stack and
dealing with exceptions.
([NSAutoreleasePool -addObject:]): Deal with linked list of arrays.
([NSAutoreleasePool -dealloc]): Deal with exceptions by releasing
child pools.  Place self into the pool cache instead of deallocating.
([NSAutoreleasePool +resetTotalAutoreleasedObjects]): New method.
([NSAutoreleasePool +totalAutoreleasedObjects]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1311 72102866-910b-0410-8b05-ffd578937521
1996-03-30 22:39:48 +00:00
mccallum
48f6007abf Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1310 72102866-910b-0410-8b05-ffd578937521
1996-03-30 22:22:20 +00:00
mccallum
007a6058c4 Change return types of "grow factor" methods from unsigned to int.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1309 72102866-910b-0410-8b05-ffd578937521
1996-03-30 22:21:48 +00:00
mccallum
7fec33d756 ([IndexedCollection -removeObject:]): Use unsigned for index, not int.
([IndexedCollection -replaceObject:withObject:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1308 72102866-910b-0410-8b05-ffd578937521
1996-03-30 22:21:11 +00:00
mccallum
21ac08e531 (NO_INDEX): Change from UINT_MAX to NSNotFound, so that Array and
NSArray can coexist.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1305 72102866-910b-0410-8b05-ffd578937521
1996-03-30 22:07:46 +00:00
mccallum
7c3fd4aafc ([NSArray -isEqualToArray:]): Fix typo; reverse test before returning no.
([NSArray -arrayByAddingObject:]): New function, from Scott
Christley.
([NSArray -arrayByAddingObjectsFromArray:]): Likewise.
([NSArray -subarrayWithRange:]): Implemented by Scott Christely.
([NSMutableArray -removeObjectIdenticalTo:]): Don't fail if the object
is not present.
([NSMutableArray -removeObject:]): Likewise.
([NSMutableArray -removeAllObjects]): Implemented by Scott Christley.
([NSMutableArray -setArray:]): New function, from Scott Christley.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1304 72102866-910b-0410-8b05-ffd578937521
1996-03-30 19:14:43 +00:00
mccallum
674f7c6e4c ([IndexedCollection -removeObject:]): Now removes *all* instances of
ANOBJECT, not just one.
([IndexedCollection -replaceObject:withObject:]): Now replaces *all*
instances of OLDOBJECT, not just one.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1303 72102866-910b-0410-8b05-ffd578937521
1996-03-30 19:04:35 +00:00
mccallum
378daed2e4 (ABS): New macro, defined if not already defined.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1302 72102866-910b-0410-8b05-ffd578937521
1996-03-30 16:01:43 +00:00
mccallum
56a21444df Fix typos in method types.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1301 72102866-910b-0410-8b05-ffd578937521
1996-03-30 15:58:28 +00:00
mccallum
5a42421e5b (Array _grow_factor): Change type of ivar from unsigned to int.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1300 72102866-910b-0410-8b05-ffd578937521
1996-03-30 15:06:46 +00:00
mccallum
dfe09402ef ([Array +defaultGrowFactor]): Return type changed to int.
([Array -growFactor]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1299 72102866-910b-0410-8b05-ffd578937521
1996-03-30 15:06:20 +00:00
mccallum
98e317d924 Add new semantic to ivar _grow_factor: if it is less than 0, the array
grows by -_grow_factor, but never shrinks.
(incrementCount): Use the ABS() of _grow_factor.
(decrementCount): Only shrink the array if _grow_factor is > 0.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1298 72102866-910b-0410-8b05-ffd578937521
1996-03-30 15:05:15 +00:00
mccallum
0a05a8cab0 Declare new method names, and comment.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1293 72102866-910b-0410-8b05-ffd578937521
1996-03-30 01:33:05 +00:00
mccallum
d1f34854a7 Overhauled for memory management changes to fix leaks, various other
fixes.
(MFRAME_STRUCTURES_PASSED_BY_REFERENCE): Renamed from
CONNECTION_STRUCTURES_PASSED_BY_REFERENCE.
(mframe_dissect_call): Function renamed from dissect_method_call.
Remove some redundant if()-else clauses.  Clarify case in which
OUT_PARAMETERS is true.  Use switch statement instead of if-else's.
(mframe_do_call): Function renamed from make_method_call.  Get the
local selector type from the target's Method, not from the selector
type; this will more reliably give the correct type string.  Don't
bother to set OBJECT twice.  Remove some redundant if()-else clauses.
Use NSParameterAssert, not assert, so we can catch problems, (and not
crash the D.O. server).  Change the way memory management for decoded
arguments is handled to remove memory leaks; use new scheme for
DECODER functions that are responsonsible for making sure allocated
memory is eventually freed.  Use alloca() to allocate space for _C_PTR
values, struct's and arrays.  Overhaul the way floats and doubles are
extracted from the RETFRAME; use functions with __builtin_return,
instead of fishing around the RETFRAME.  Use switch statement intead
of if-else's.  Separate cases for char's and short's.  Change some
local variable names for clarity.
(mframe_build_return): Function renamed from dissect_method_return.
Remove some redundant if()-else clauses.  Use NSParameterAssert, not
assert.  Change the way memory management for decoded arguments is
handled to remove memory leaks; use new scheme for DECODER functions
that are responsonsible for making sure allocated memory is eventually
freed.  Use alloca() to allocate space for _C_PTR values, struct's and
arrays.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1292 72102866-910b-0410-8b05-ffd578937521
1996-03-30 01:29:07 +00:00
mccallum
064b35b0af ([BinaryCStream -encodeValueOfCType:at:withName:]): Encode the
exponent as a short, not an int.
([BinaryCStream -decodeValueOfCType:at:withName:]): Likewise, decoding.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1291 72102866-910b-0410-8b05-ffd578937521
1996-03-30 00:50:30 +00:00
mccallum
4bb93b1005 ([Connection -forwardForProxy:selector:argFrame:]): Use new mframe
interface.  In the nested function DECODER, autorelease any char*'s
that we decode, as required by the new memory reference scheme.
([Connection -_service_forwardForProxy:]): Likewise, for both.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1290 72102866-910b-0410-8b05-ffd578937521
1996-03-29 17:55:15 +00:00
mccallum
4efe2c488b ([BinaryCStream -encodeValueOfCType:at:withName:]): [_C_CHARPTR]:
Don't autorelease the malloc'ed pointer here; thus the behavior is
analogous to decoding an object: it gives you a reference, it is the
callers responsibility to free it.
([BinaryCStream -decodeValueOfCType:at:withName:]): [_C_DBL]: Fix
typo.  Use mantissa1, not mantissa2 twice.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1289 72102866-910b-0410-8b05-ffd578937521
1996-03-29 17:53:05 +00:00
mccallum
97271561b7 ([ConstantCollection -_collectionReleaseContents]): Use alloca()
instead of malloc() and free().


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1288 72102866-910b-0410-8b05-ffd578937521
1996-03-29 17:51:07 +00:00
mccallum
d410dc37bb Include <math.h>
(FLOAT_FACTOR): New macro.
(WRITE_SIGNED_TYPE): Take new first argument, the pointer for the
data.
(READ_SIGNED_TYPE): Likewise.
(WRITE_UNSIGNED_TYPE): Likewise.
(READ_UNSIGNED_TYPE): Likewise.
([BinaryCStream -encodeValueOfCType:at:withName:]): [_C_FLT]: Use new
scheme, based on frexp() to turn a float into a series of ints.
[_C_DBL]: Likewise.
([BinaryCStream -decodeValueOfCType:at:withName:]): [_C_FLT]: Likewise
to match.
[_C_DBL]: Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1286 72102866-910b-0410-8b05-ffd578937521
1996-03-29 15:51:13 +00:00
mccallum
341c38f07f (debug_run_loop): Changed from 1 to 0; turn off debugging messages.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1285 72102866-910b-0410-8b05-ffd578937521
1996-03-29 14:47:38 +00:00
mccallum
d723ccc755 ([MallocAddress +autoreleaseMallocAddress:]): Fix typo in method name.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1284 72102866-910b-0410-8b05-ffd578937521
1996-03-29 04:01:33 +00:00
mccallum
4b1972f13b Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1283 72102866-910b-0410-8b05-ffd578937521
1996-03-29 03:59:34 +00:00
mccallum
d3fa62d866 ([MallocAddress +initialize]): Use
NSNonRetainedObjectMapValueCallBacks, not NSObjectMapValueCallBacks,
because otherwise the object will never get dealloc'ed.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1282 72102866-910b-0410-8b05-ffd578937521
1996-03-27 02:14:47 +00:00
mccallum
96ace81859 In all methods, use NSParameterAssert() instead of assert(), so that
it raises an NSException, and doesn't abort().
([Connection -forwardForProxy:selector:argFrame:]): Decode the flag
that indicates whether the return packet hold an exception or the
return values.  If it holds an exception, decode it and raise it.
([Connection -_service_forwardForProxy:]): Surround the processing of
the method request packet with NS_DURING...NS_ENDHANDLER.  If an
exception is raised, catch it, encode in in a specially flagged
packet, and send the packet back to the client.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1278 72102866-910b-0410-8b05-ffd578937521
1996-03-26 22:34:40 +00:00
mccallum
23494c1e2f ([BinaryCStream -decodeValueOfCType:at:withName:]): [_C_CHARPTR]:
Autorelease the malloc'ed char pointer.  Before memory was leaking.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1277 72102866-910b-0410-8b05-ffd578937521
1996-03-26 22:28:48 +00:00
mccallum
f491e64f1b Fix typos.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1276 72102866-910b-0410-8b05-ffd578937521
1996-03-26 20:59:42 +00:00
mccallum
4e034a4b95 Use NSException instead of sending -error: in all methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1275 72102866-910b-0410-8b05-ffd578937521
1996-03-26 20:52:26 +00:00
mccallum
d1cdbbcef1 ([OrderedCollection -putObject:atIndex:]): Return type changed from id
to void.  Use NSException, not error:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1274 72102866-910b-0410-8b05-ffd578937521
1996-03-26 20:52:17 +00:00
mccallum
6c5e0d54bb Use NSException instead of sending -error: in all methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1273 72102866-910b-0410-8b05-ffd578937521
1996-03-26 19:35:47 +00:00
mccallum
9aa534aee8 ([BinaryCStream -encodeValueOfCType:at:withName:]): Use NSException
instead of sending -error:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1272 72102866-910b-0410-8b05-ffd578937521
1996-03-26 19:23:09 +00:00
mccallum
41319325cc (string_buf_ptr): Init local variable.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1271 72102866-910b-0410-8b05-ffd578937521
1996-03-26 00:29:07 +00:00
mccallum
a62d5060b4 ([NSBundle +setSystemLanguages:]): Comment out unused variables.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1270 72102866-910b-0410-8b05-ffd578937521
1996-03-26 00:28:39 +00:00
mccallum
fb6428b7cc ([NSMutableData -resetBytesInRange:]): Cast to avoid warning.
([NSMutableData -initWithLength:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1269 72102866-910b-0410-8b05-ffd578937521
1996-03-26 00:28:20 +00:00
mccallum
59c2287dc3 ([NSValueDecoder -initValue:withObjCType:]): Return self.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1268 72102866-910b-0410-8b05-ffd578937521
1996-03-26 00:27:44 +00:00
mccallum
e58773d581 (objc_load_module): Comment out unused variables.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1267 72102866-910b-0410-8b05-ffd578937521
1996-03-26 00:27:31 +00:00
mccallum
675d864c5d Include <sys/param.h> for MAXHOSTNAMELEN.
([UdpInPort -newPacketReceivedBeforeDate:]): Return nil.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1266 72102866-910b-0410-8b05-ffd578937521
1996-03-26 00:27:03 +00:00
mccallum
abf615d000 (name_2_port_number): Function renamed from name_to_port_number, and
changed to better use IPPORT_USERRESERVED.
([UdpInPort +newForReceivingFromPortNumber:]): Overhauled and
commented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1260 72102866-910b-0410-8b05-ffd578937521
1996-03-24 22:04:23 +00:00
mccallum
c66c2eb116 ([NSObject +initialize]): Use NSNonOwnedPointerOrNullMapKeyCallBacks,
not NSNonRetainedObjectsMapKeyCallBacks; keying on addresses, and
avoiding a call to -isEqual is better.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1258 72102866-910b-0410-8b05-ffd578937521
1996-03-22 13:39:01 +00:00
mccallum
75cd745baf ([BinaryCStream -encodeValueOfCType:at:withName:name]): [_C_CHARPTR]:
Write the string with the host LENGTH, not the network LENGTH!


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1256 72102866-910b-0410-8b05-ffd578937521
1996-03-22 02:36:22 +00:00
mccallum
34987d18d2 ([NSGSet -isEqual:]): Make this just compare the id's, not call [super
isEqual:].  I did this to prevent an infinite loop while running
checks/nsarchiver.m, but I have a feeling that the bug might be in
map.c, not here.  Look at this again!


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1254 72102866-910b-0410-8b05-ffd578937521
1996-03-22 02:35:07 +00:00
mccallum
fd0ec14912 ([Set -nextObjectWithEnumState:]): Dereference ENUMSTATE; this change
mirrors the earlier change to [NSGSet -nextObject].


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1253 72102866-910b-0410-8b05-ffd578937521
1996-03-22 02:33:33 +00:00
mccallum
8557fb793d ([ConstantKeyedCollection -_decodeContentsWithCoder:]): Reverse order
of objects and keys, to match _encodeContentsWithCoder:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1252 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:46:30 +00:00
mccallum
ab6898614c New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1251 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:26:22 +00:00
mccallum
dfd83fea64 File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1250 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:25:46 +00:00
mccallum
b5a6448cf6 (GNUSTEP_CFILES): Removed NSZone.c.
(GNUSTEP_MFILES): Added NSZone.m.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1249 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:25:23 +00:00
mccallum
c064b79af7 (objects/stdobjects.h): Create it in the build directory, not
$(srcdir).  (Thanks to Albin Jones.)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1248 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:17:04 +00:00
mccallum
072df7b6b9 (CFLAGS): Added -Wno-implicit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1247 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:13:51 +00:00
mccallum
70185d2785 Change -basics and -callbacks to -bas and -cbs.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1246 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:11:38 +00:00
mccallum
c639cb6be6 Added -bas.m and -cbs.m.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1245 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:10:35 +00:00
mccallum
dd23b0d486 File deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1244 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:09:05 +00:00
mccallum
8057a746b7 *** empty log message ***
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1243 72102866-910b-0410-8b05-ffd578937521
1996-03-22 01:06:28 +00:00
mccallum
1b9378e6be ([BinaryCStream -encodeValueOfCType:at:withName:name]): Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1242 72102866-910b-0410-8b05-ffd578937521
1996-03-22 00:41:23 +00:00
mccallum
2e90c4e163 New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1241 72102866-910b-0410-8b05-ffd578937521
1996-03-22 00:37:53 +00:00
mccallum
57f600e121 Second patch from Albin Jones
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1240 72102866-910b-0410-8b05-ffd578937521
1996-03-22 00:36:13 +00:00
mccallum
54f8625a2a Overhauled to use htonl() and friends. New format is incompatible
with the old.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1237 72102866-910b-0410-8b05-ffd578937521
1996-03-22 00:31:09 +00:00
mccallum
c723c2f3ab (CC): Added -pipe.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1232 72102866-910b-0410-8b05-ffd578937521
1996-03-20 18:21:13 +00:00
mccallum
cceb033955 (debug_tcp_port): Set to 1.
([TcpInPort -encodeWithCoder:]): Use encodeBytes:.., not
encodeValue..; the data is already in network byte-order.
([TcpOutPort -encodeWithCoder:]): Likewise.
([TcpOutPort +newWithCoder:]): Likewise.
([TcpOutPort
+newForSendingToSockaddr:withAcceptedSocket:pollingInPort:]): Set
entirety of _REMOTE_IN_PORT_ADDRESS to zero.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1227 72102866-910b-0410-8b05-ffd578937521
1996-03-19 20:37:04 +00:00
mccallum
7ed8083673 ([NotificationQueue -dequeueNotificationsMatching:coalesceMask:]):
Specify object class in arg type for nested function.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1226 72102866-910b-0410-8b05-ffd578937521
1996-03-19 20:34:29 +00:00
mccallum
545bb9cbf0 ([Encoder -encodeBytes:count:withName:]): Update for new argument
types.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1225 72102866-910b-0410-8b05-ffd578937521
1996-03-19 20:33:46 +00:00
mccallum
9a02a76077 ([Decoder -decodeBytes:count:withName:name]): Update for new argument
types, and verify read count.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1224 72102866-910b-0410-8b05-ffd578937521
1996-03-19 20:33:28 +00:00
mccallum
8c2fc92144 (Coding -encodeBytes:count:withName:): Use void*, not char* for bytes.
(Coding -decodeBytes:count:withName:): Likewise, and pass COUNT, not
pointer to COUNT.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1223 72102866-910b-0410-8b05-ffd578937521
1996-03-19 20:32:33 +00:00
mccallum
09cc51c33c ([Decoder -decodeBytes:count:withName:name]): Method implemented;
although it may need to change later.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1222 72102866-910b-0410-8b05-ffd578937521
1996-03-19 18:33:07 +00:00
mccallum
27143c23d0 ([Encoder -encodeBytes:count:withName:]): Method implemented; although
it may need to change later.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1221 72102866-910b-0410-8b05-ffd578937521
1996-03-19 18:32:49 +00:00
mccallum
5900c268e1 ([RunLoop -acceptInputForMode:beforeDate:]): If LIMIT_DATE is nil,
poll the inputs, but don't wait if there is nothing available
immediately.  Check to make sure that the LIMIT_DATE hasn't already
past; if it has, return immediately, before polling input sources.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1220 72102866-910b-0410-8b05-ffd578937521
1996-03-19 17:10:41 +00:00
mccallum
a8a1f14dd0 New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1217 72102866-910b-0410-8b05-ffd578937521
1996-03-19 02:02:52 +00:00
mccallum
e7667dd5ed Raise NSExceptions instead of using -error:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1214 72102866-910b-0410-8b05-ffd578937521
1996-03-19 01:48:39 +00:00
mccallum
6165857149 Fix indentation.
([NSThread +currentThread]): Add parenthesis around assignment inside
while.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1213 72102866-910b-0410-8b05-ffd578937521
1996-03-19 01:45:25 +00:00
mccallum
735a988473 Include <objects/behavior.h.
([NSString -componentsSeparatedByString:]): Initialize ARRAY!


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1212 72102866-910b-0410-8b05-ffd578937521
1996-03-19 01:44:01 +00:00
mccallum
822381a98f Include <objects/stdobjects.h>
Use OBJC_MALLOC and friends, instead of NX_MALLOC.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1211 72102866-910b-0410-8b05-ffd578937521
1996-03-19 01:40:44 +00:00
mccallum
02282bc913 ([Decoder -finishDecodingInterconnectedObjects]): Comment out
temporarily unused AWAKE_SEL local variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1210 72102866-910b-0410-8b05-ffd578937521
1996-03-19 01:35:05 +00:00
mccallum
df553684be ([Proxy -encodeWithCoder:]): Add a more explanatory error message for
the use of invalid Connections.
([Proxy +encodeObject:withConnectedCoder:]): Likewise.
([Proxy -forward::]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1208 72102866-910b-0410-8b05-ffd578937521
1996-03-19 01:05:46 +00:00
mccallum
7d53b43319 Prepend debugging messages with "RunLoop".
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1205 72102866-910b-0410-8b05-ffd578937521
1996-03-19 00:59:05 +00:00
mccallum
dface81488 ([Connection -_handleRmc:]): [METHOD_REQUEST]: Fix conditional for
which we handle a request immediately.  Before it inappropriately
queued call backs from the server on which we were waiting, causing us
to wait forever.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1204 72102866-910b-0410-8b05-ffd578937521
1996-03-19 00:58:38 +00:00
mccallum
f9ce451de0 ([TcpOutPort -encodeWithCoder:]): Add debugging message.
([TcpOutPort +newWithCoder:]): Add debugging message.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1203 72102866-910b-0410-8b05-ffd578937521
1996-03-19 00:56:23 +00:00
mccallum
e974176a55 ([Proxy +newWithCoder:]): Fix misspelling in debug message.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1202 72102866-910b-0410-8b05-ffd578937521
1996-03-19 00:55:27 +00:00
mccallum
88559e5d9c ([Proxy +encodeObject:withConnectedCoder:]): Assert that triangle
connection proxy out port's are valid.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1201 72102866-910b-0410-8b05-ffd578937521
1996-03-18 21:57:29 +00:00
mccallum
1cdfdad717 ([NSObject -autorelease]): Print retain and release counts in more
helpful error message.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1199 72102866-910b-0410-8b05-ffd578937521
1996-03-18 21:48:15 +00:00
mccallum
53930b831f (NSAllMapTableKeys): Don't autorelease the return value; it was
already autoreleased.  Too many autoreleases were causing crashes.
(NSAllMapTableValues): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1198 72102866-910b-0410-8b05-ffd578937521
1996-03-18 21:47:49 +00:00
mccallum
c8e7da6b14 ([NSAutoreleasePool -dealloc]): Set CURRENT_POOL to PARENT, even if
PARENT is nil.  This is correct behavior.  Old behavior could cause
infinite loops in the PARENT pointers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1197 72102866-910b-0410-8b05-ffd578937521
1996-03-18 21:43:14 +00:00
mccallum
4904c6560a ([RunLoop -limitDateForMode:]): Assert mode.
([RunLoop -acceptInputForMode:beforeDate:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1196 72102866-910b-0410-8b05-ffd578937521
1996-03-18 20:29:34 +00:00
mccallum
be2ab8f283 ([NSTimer +scheduledTimerWithTimeInterval:invocation:repeats:]): Add
to RunLoopDefaultMode, not nil.
([NSTimer
+scheduledTimerWithTimeInterval:target:selector:userInfo:repeats:]):
Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1195 72102866-910b-0410-8b05-ffd578937521
1996-03-18 20:28:12 +00:00
mccallum
fae68ecafa ([Connection -_getReceivedReplyRmcWithSequenceNumber:]): Run the
RunLoop in RunLoopConnectionReplyMode, not nil mode.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1194 72102866-910b-0410-8b05-ffd578937521
1996-03-18 20:27:30 +00:00
mccallum
3bee33e53d Remove old methods. Add declaration of new RunLoop mode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1193 72102866-910b-0410-8b05-ffd578937521
1996-03-18 20:09:30 +00:00
mccallum
83525eb693 ([Connection +newForInPort:outPort:ancestorConnection:]): Add the in
port to the RunLoop in new RunLoop style.
([Connection -addToRunLoop:forMode:]): Method removed.
([Connection -removeFromRunLoop:forMode:]): Method removed.
([Connection -_getReceivedReplyRmcWithSequenceNumber:]): Use new class
method for RunLoop.
([Connection -invalidate]): Remove comment about removing from
RunLoop.  RunLoop's now automatically remove invalid ports.
(RunLoopConnectionReplyMode): New run loop mode string.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1192 72102866-910b-0410-8b05-ffd578937521
1996-03-18 20:08:53 +00:00
mccallum
f7f962e140 Removed methods for dealing remembering locally which RunLoop we've
been added to; now the RunLoop manages this.
([TcpInPort +newForReceivingFromPortNumber:]): Don't initialize the
the removed ivar ACTIVE_FD_SET.  Likewise with _RUN_LOOPS.
([TcpInPort -newPacketReceivedBeforeDate:]): Don't use removed
_RUN_LOOPS.
([TcpInPort -old_receivePacketWithTimeout:]): Remove old deprecated
method.
([TcpInPort -invokeWithObject:]): Method removed.
([TcpInPort -newPacketReceivedBeforeDate:]): Overhauled to use new
RunLoop mechanism.
([TcpInPort -getFds:count:]): New method, called by RunLoop.
([TcpInPort -readyForReadingOnFileDescriptor:]): Likewise.
([TcpInPort -_addClientOutPort:]): Updated for new scheme.
([TcpInPort -_connectedOutPortInvalidated:]): Likewise.
([TcpInPort -addToRunLoop:forMode:]): Method removed.
([TcpInPort -removeFromRunLoop:forMode:]): Method removed.
([TcpInPort -dealloc]): Don't release _RUN_LOOPS.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1189 72102866-910b-0410-8b05-ffd578937521
1996-03-18 19:40:45 +00:00
mccallum
369d077689 (TcpInPort _run_loops): Removed ivars.
(TcpInPort _client_sock_2_out_port, _client_sock_2_packet): Prepended
ivars with underscores.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1188 72102866-910b-0410-8b05-ffd578937521
1996-03-18 19:33:51 +00:00
mccallum
89f5f6a71e Add new explanatory comment at beginning.
([RunLoop -init]): Initialize new ivars.
([RunLoop -currentMode]): New method.
([RunLoop -addFileDescriptor:object:forMode:]): Method replaces
-addFileDescriptor:invocation:forMode:, and re-implemented.  Not yet
functional.
([RunLoop -removeFileDescriptor:forMode:]): Likewise.
([RunLoop -addPort:forMode:]): New method.
([RunLoop -removePort:forMode:]): New method.
([RunLoop -addTimer:forMode:]): Overhauled to do the right thing with
the MODE argument.
([RunLoop -acceptInputForMode:beforeDate:]): Method overhauled to ask
port objects for their FD's, create FD_2_OBJECT map table on the fly,
and initialize FDS on the fly.  Now properly removed invalidated ports
from the MODE.
([RunLoop -runOnceBeforeDate:forMode:]): New method.
([RunLoop -runOnceBeforeDate:]): New method.
([RunLoop -runUntilDate:forMode:]): New method.
([RunLoop -runUntilDate:]): New method.
([RunLoop +runUntilDate:forMode:]): New method.
([RunLoop +runOnceBeforeDate:]): New method.
([RunLoop +runOnceBeforeDate:forMode:]): New method.
([RunLoop +currentMode]): New method.
(RunLoopDefaultMode): New global variable.
([NSObject -performSelector:afterDelay:]): Not implemented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1187 72102866-910b-0410-8b05-ffd578937521
1996-03-18 19:32:45 +00:00
mccallum
f6882b6732 Many new methods declared.
(RunLoop _mode_2_timers): New ivar.
(RunLoop _mode_2_in_ports): New ivar.
(RunLoop _mode_2_fd_listeners): New ivar.
(RunLoopDefaultMode): New extern variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1186 72102866-910b-0410-8b05-ffd578937521
1996-03-18 19:26:13 +00:00
mccallum
22d887757e (RandomGenerating): Inherit from NSObject protocol. Remove methods
+alloc and -init.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1185 72102866-910b-0410-8b05-ffd578937521
1996-03-18 19:23:57 +00:00
mccallum
6b8ba601bc ([NSDate +distantFuture]): Increase efficiency by caching a single
instance in a static variable.
([NSDate +distantPast]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1184 72102866-910b-0410-8b05-ffd578937521
1996-03-18 18:31:37 +00:00
mccallum
3627f4f3e1 Don't include <objects/SocketPort.h>
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1183 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:10:06 +00:00
mccallum
95f27e1381 Declare classes UdpInPacket and UdpOutPacket.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1182 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:09:48 +00:00
mccallum
908c58ef31 (dissect_method_return): Initialize RETFRAME to NULL to prevent warning.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1181 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:03:17 +00:00
mccallum
27b1833e20 Change references to non-existant UdpPacket class to UdpInPacket.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1180 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:02:44 +00:00
mccallum
9ba040ba4f ([TextCStream -decodeName:name]): Pass correct value to debug message.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1179 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:02:14 +00:00
mccallum
25e3d6354b (bzero): New macro, to memset(); for FD_ZERO().
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1178 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:01:18 +00:00
mccallum
a12177d13a Remove references to NAN. Define bzero for FD_CLR(). Include
<string.h> for memset.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1177 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:00:47 +00:00
mccallum
b78a8fa72f ([RawCStream -encodeValueOfCType:at:withName:name]): Remove unused variable.
([RawCStream -decodeValueOfCType:at:withName:]): Likewise.  Switch on
*type, not unused variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1176 72102866-910b-0410-8b05-ffd578937521
1996-03-18 14:00:06 +00:00
mccallum
c7a1b76c75 ([Proxy +newWithCoder:]): Remove unused variable.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1175 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:59:19 +00:00
mccallum
91e84080f4 ([OrderedCollection -replaceRange:withCollection:]): Return void.
([OrderedCollection -replaceRange:usingCollection:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1174 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:58:56 +00:00
mccallum
2933fbed0c ([NotificationDispatcher -removeObserver:name:object:]): Remove unused
variables.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1173 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:58:28 +00:00
mccallum
1d0adfd025 Remove references to NAN.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1172 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:57:39 +00:00
mccallum
e4bcea3861 Include <behavior.h>
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1171 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:57:20 +00:00
mccallum
c01411c1ac ([NSInvocation -methodSignature]): Return nil.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1170 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:56:54 +00:00
mccallum
7c4cd74195 Comment fix.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1169 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:56:13 +00:00
mccallum
fb5b2f86d5 ([NSDate -initWithString:]): Initialize theTime to 0, to prevent warning.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1168 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:55:57 +00:00
mccallum
68d23b3f82 ([NSData +_setConcreteClass:]): Include <string.h> for memset().
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1167 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:55:26 +00:00
mccallum
aee7ff0d91 ([NSCountedSet -countForObject:]): Return 0.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1166 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:55:09 +00:00
mccallum
3534bcc0de Minor comment format fix.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1165 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:54:56 +00:00
mccallum
fe4eb5b2ab ([NSAutoreleasePool -parentAutoreleasePool]): Remove inclusion of
eltfuncs.h and collhash.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1164 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:54:29 +00:00
mccallum
4f654a66b5 ([NSArchiver +initialize]): Use ==, not = in if test.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1163 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:54:00 +00:00
mccallum
7744490c10 Include <string.h> for memset().
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1162 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:53:30 +00:00
mccallum
46c691f3dc ([MutableCString -initWithCoder:]): Remove unused variable n. Return
self, not n.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1161 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:53:13 +00:00
mccallum
c391b55f7c ([MappedCollector -initWithObjects:forKeys:count:]): Return self.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1160 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:52:10 +00:00
mccallum
bca55a3944 ([LinkedList -initWithObjects:count:]): Return self.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1159 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:51:44 +00:00
mccallum
a75e69337b ([ConstantKeyedCollection -initWithObjects:forKeys:count:]): Return nil.
([ConstantKeyedCollection -objectAtKey:]): Likewise.
([ConstantKeyedCollection -keyOfObject:]): Likewise.
([ConstantKeyedCollection -withKeysInvoke:]): Return void.
([ConstantKeyedCollection -withKeysInvoke:whileTrue:]): Likewise.
([ConstantKeyedCollection -nextObjectAndKey:withEnumState:]): Return nil.
([ConstantKeyedCollection -copyValuesAs:]): Likewise.
([ConstantKeyedCollection -nextObjectAndKey:withEnumState:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1158 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:51:14 +00:00
mccallum
d9407d1c3e ([MethodInvocation -invokeWithObject:]): Revert last change: call
-invokeWithTarget:, not -subclassResponsibility.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1157 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:49:14 +00:00
mccallum
83c247f865 ([ConstantIndexedCollection -prevObjectWithEnumState:]): Use
assignment, not equality test for setting enumState to -1.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1156 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:47:14 +00:00
mccallum
23ad958160 ([GapArray -empty]): Renamed from _collectionEmpty, and implemented to
do entire job of emptying.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1155 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:46:06 +00:00
mccallum
e033c2f4bf ([Encoder -_coderCreateReferenceForObject:]): Return the xref!
([Encoder -_coderCreateReferenceForConstPtr:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1154 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:45:37 +00:00
mccallum
bf9b5c9219 ([Dictionary -newEnumState]): Removed useless cruft.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1153 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:44:52 +00:00
mccallum
874e4c358e ([ConstantCollection -detectObjectByInvoking:]): Set detectedObject to
nil to avoid warning.
([ConstantCollection -maxObject]): Initialize MAX to nil.
([ConstantCollection -minObject]): Initialize MIN to nil.
([Collection -uniqueContents]): Iterate over CP, not SELF.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1152 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:44:21 +00:00
mccallum
9bdb46c614 Return nil for several -notImplemented methods that are to return objects.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1151 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:42:32 +00:00
mccallum
f0f6ba4e5d ([CircularArray -empty]): Renamed from _collectionEmpty, and
implemented to do entire job of emptying.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1150 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:42:07 +00:00
mccallum
09e5694006 ([CStream -initForWritingToStream:s]): Return the result.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1149 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:41:30 +00:00
mccallum
93ea2042f2 ([Array -empty]): Renamed from _empty, and implemented to do entire
job of emptying.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1148 72102866-910b-0410-8b05-ffd578937521
1996-03-18 13:40:54 +00:00
mccallum
87a1745c9d (TcpInPort _run_loops): Make it a Bag.
(TcpInPort _run_loop_modes): Remove ivar.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1138 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:39:07 +00:00
mccallum
48ff0e32af Fix packet type.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1137 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:38:33 +00:00
mccallum
094f927f35 ([TcpInPort +newForReceivingFromPortNumber:]): Initialize _run_loops.
([TcpInPort -addToRunLoop:forMode:]): Use new _run_loops Bag.
([TcpInPort -removeFromRunLoop:forMode:]): Likewise.
([TcpInPort -_connectedOutPortInvalidated:]): Likewise.
([TcpInPort -_addClientOutPort:]): Likewise.
([TcpInPort -dealloc]): Release _run_loops.
([TcpOutPort -outPacketClass]): Method renamed from -packetClass.
([TcpOutPort +outPacketClass]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1136 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:38:16 +00:00
mccallum
c4734ce2a0 ([RunLoop -removeFileDescriptor:forMode:]): Add debugging message.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1135 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:35:25 +00:00
mccallum
416ccc2e25 ([InPort -setReceivedPacketInvocation:]): Assert that
_packet_invocation isn't already set.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1134 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:34:55 +00:00
mccallum
addfc7456e ([NSGSet -member:]): Return value.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1133 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:34:37 +00:00
mccallum
88cb4347f5 ([ConstantIndexedCollection -firstObject]): Return nil if emtpy.
([ConstantIndexedCollection -lastObject]): Likewise.
([ConstantIndexedCollection -prevObjectWithEnumState:]): Use -1 to
deal with reversals at extremes.
([ConstantIndexedCollection -nextObjectWithEnumState:]): Use [self
count] to deal with reversals at extremes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1132 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:34:22 +00:00
mccallum
3e003b0db1 (in_port_2_ancestor): New static variable.
([Connection +initialize]): Initialize it.
([Connection +newForInPort:outPort:ancestorConnection:]): Use new
static variable to handle ancestor; (ignore ancestor argument; the
method name will be changed later).  Set the in-port's packet
invocation to the Connection class. Don't call -addToRunLoop.. here,
the mechanics of it were already done above.
([Connection -addToRunLoop:forMode:]): Mark it as not implemented, for
now.
([Connection -runConnectionUntilDate:]): Don't add to run loop here.
([Connection +invokeWithObject:]): Make it a class method instead of
an instance method; alter contents appropriately for this.
([Connection -portIsInvalid:]): Look at in_port_2_ancestor and remove
ourselves if necessary.
([Connection -invalidate]): Don't remove ourselves from the run loop
here, because we may not be the only one listening.  This still needs
fixing.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1131 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:32:46 +00:00
mccallum
947465458a ([ConnectedEncoder -dismiss]): Fix typo in sendPacket: call.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1130 72102866-910b-0410-8b05-ffd578937521
1996-03-13 02:26:24 +00:00
mccallum
72ac85de5c Several minor fixes to return types and return values.
([ReverseEnumerator -nextObject]): Pass pointer to enum_state.
([ConstantIndexedCollection -prevObjectWithEnumState:]): Method
overhauled.
([ConstantIndexedCollection -nextObjectWithEnumState:]): Likewise.
([ConstantIndexedCollection -newEnumState]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1129 72102866-910b-0410-8b05-ffd578937521
1996-03-12 20:39:58 +00:00
mccallum
659c2fa200 Remove #include of objects/eltfuncs.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1126 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:48:47 +00:00
mccallum
64b554fab2 Remove #include of objects/collhash.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1125 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:48:05 +00:00
mccallum
e97e90fc13 Declare new methods and classes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1124 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:45:24 +00:00
mccallum
e378e2025b Declare new method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1123 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:45:11 +00:00
mccallum
bfacad8920 Declare new methods. Type arguments with InPort and OutPort, not just
Port.
(Connection reply_depth): New ivar.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1122 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:44:34 +00:00
mccallum
14e9a570a6 Updated to conform to new Port class. TcpPacket class split into
TcpInPacket and TcpOutPacket.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1121 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:43:25 +00:00
mccallum
9065b24e37 Debugging messages conditioned on debug_run_loop.
([RunLoop -runOnceBeforeDate:forMode:]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1120 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:42:45 +00:00
mccallum
5e4ad23b78 ([Port +outPacketClass]): Method renamed from packetClass.
([Port -outPacketClass]): Likewise.
([InPort -setReceivedPacketInvocation:]): Method renamed from
setPacketInvocation.
([OutPort -sendPacket:]): Method renamed from -sendPacket:withTimeout:.
(OutPacket, InPacket): New classes, replacing Packet class.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1119 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:42:10 +00:00
mccallum
1edac6f126 ([MemoryStream -initWithCapacity:prefix:]): New method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1118 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:40:30 +00:00
mccallum
a4b570cbf2 Remove old-style methods for getting incoming ConnectedCoders. Add
new methods that use RunLoop.  All callers changed.
([Connection -addToRunLoop:forMode:]): New method.
([Connection -removeFromRunLoop:forMode:]): New method.
([Connection -runConnectionUntilDate:]): New method.
([Connection -runConnection]): Method changed to call above method.
([Connection -_handleRmc:]): New method.
([Connection -_handleQueuedRmcRequests]): New method.
([Connection -_getReceivedReplyRmcFromQueueWithSequenceNumber:]): New
method.
([Connection -_getReceivedReplyRmcWithSequenceNumber:]): New method.
([Connection -invokeWithObject:]): New method.
([Connection +newForInPort:outPort:ancestorConnection:]): Set
reply_depth ivar.
([Connection -_encoderCreateReferenceForConstPtr:]): Return the xref!


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1117 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:40:16 +00:00
mccallum
02c5d2f22a ([ConnectedDecoder +newDecodingWithPacket:connection:]): New method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1116 72102866-910b-0410-8b05-ffd578937521
1996-03-12 19:36:13 +00:00
mccallum
e8d8fc9588 *** empty log message ***
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1114 72102866-910b-0410-8b05-ffd578937521
1996-03-12 15:39:13 +00:00
mccallum
d2e640c43b (TcpInPort _run_loop, _run_loop_mode): New ivars.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1113 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:57:08 +00:00
mccallum
0b83e5b725 Declare new methods.
(Port _packet_invocation): New ivar.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1112 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:56:43 +00:00
mccallum
02e6ab2701 ([NotificationDispatcher +defaultInstance): Declare new method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1111 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:55:49 +00:00
mccallum
153b84d956 (Notifying): New protocol.
(NotificationPosting): New protocol.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1110 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:55:22 +00:00
mccallum
0b0329b2f6 Declare new method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1109 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:54:34 +00:00
mccallum
437913db94 (ConstantArray): Inherit from ConstantIndexedCollection, not
IndexedCollection.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1108 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:54:25 +00:00
mccallum
a61ae3ccbf ([TcpInPort -receivePacketWithTimeout:]): Completely new
implementation that uses the RunLoop.
([TcpInPort -old_receivePacketWithTimeout:]): New method, holding old
implementation.
([TcpInPort -invokeWithObject:]): New method, called by RunLoop.
([TcpInPort -_tryToGetPacketFromReadableFD:]): New private method.
([TcpInPort -_addClientOutPort:toRunLoop:forMode:]): New method.
([TcpInPort -addToRunLoop:forMode:]): New method.
([TcpInPort -_removeClientOutPort:fromRunLoop:forMode:]): New method.
([TcpInPort -removeFromRunLoop:forMode:]): New method.
([TcpInPort -_addClientOutPort:]): Add it to the RunLoop.
([TcpInPort -_connectedOutPortInvalidated:]): Remove it from the
RunLoop.
([TcpInPort -_addClientOutPort:]): Method renamed from _addOutPort:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1107 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:53:45 +00:00
mccallum
36e7676707 ([InPort -init]): Set _packet_invocation.
([InPort -setPacketInvocation:]): New method.
([InPort -addToRunLoop:forMode:]): New method.
([InPort -removeFromRunLoop:forMode:]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1106 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:50:46 +00:00
mccallum
da4a4ccfe8 ([NotificationDispatcher +defaultInstance]): New method.
([NotificationDispatcher -removeObserver:name:object:]): Remove
handling of non-existance _nil_observer_array.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1105 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:49:02 +00:00
mccallum
c014b911a5 Many small formatting changes.
(UNIX_REFERENCE_INTERVAL): Macro renamed from UNIX_OFFSET.
([NSConcreteDate -timeIntervalSinceNow]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1104 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:48:07 +00:00
mccallum
18597e28ae (CFLAGS): Add -Wall.
(GNU_MFILES): Add RunLoop.m.
(GNU_HEADERS): Add objects/RunLoop.h.
(GNUSTEP_MFILES): Add NSTimer.m.
(GNUSTEP_HEADERS): Add Foundation/NSTimer.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1103 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:46:20 +00:00
mccallum
dbd61108e4 (return_retained): Change macro from 1 to 0.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1102 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:44:47 +00:00
mccallum
ce9937212b ([Connection -isValid]): New method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1099 72102866-910b-0410-8b05-ffd578937521
1996-03-12 14:43:30 +00:00
mccallum
d790110e2e ([IndexedCollection +initialize]): Compare self with
IndexedCollection, not KeyedCollection.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1096 72102866-910b-0410-8b05-ffd578937521
1996-03-11 17:02:02 +00:00
mccallum
0f270ba791 ([TcpInPort -receivePacketWithTimeout:]): Move initialization of
select_timeout to inside loop since Linux select() modifies
*select_timeout.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1095 72102866-910b-0410-8b05-ffd578937521
1996-03-07 20:51:50 +00:00
mccallum
c1e75d3b05 Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1092 72102866-910b-0410-8b05-ffd578937521
1996-03-07 18:14:41 +00:00
mccallum
4e48eb0082 Assert is_valid in many places.
([TcpInPort +newForReceivingFromPortNumber:]): Get the address of the
host, not localhost=127.0.0.1.
([TcpInPort -invalidate]): Remove ourselves from socket_2_port and
port_number_2_port here instead of in -dealloc.
([TcpInPort -description]): Indicate whether we are valid or not in
string.
([TcpOutPort -description]): Likewise.
([TcpOutPort -invalidate]): Assert is_valid, don't just conditionally
execute body.  Remove ourselves from out_port_bag and socket_2_port
here, not in -dealloc.
([TcpPacket +_getPacketSize:andReplyPort:fromSocket:inPort:]): If we
don't read() full prefix, don't abort(), just return EOF.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1091 72102866-910b-0410-8b05-ffd578937521
1996-03-07 18:14:23 +00:00
mccallum
f6d5c1c787 Assert that the connection is valid in several places.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1090 72102866-910b-0410-8b05-ffd578937521
1996-03-07 18:09:06 +00:00
mccallum
c2cf958548 Assert is_valid in many places.
([Connection +newForInPort:outPort:ancestorConnection:]): Set is_valid
to 1.  Only ask for notification of out port death if out port is non-nil.
([Connection -portIsInvalid:]): Properly get the port from the
notification object.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1089 72102866-910b-0410-8b05-ffd578937521
1996-03-07 18:08:24 +00:00
mccallum
0e774391ed ([Port -invalidate]): Insist that is_valid is true at the beginning of
this method, don't test it and skip the body of this method.  Force
users to be careful about calling -invalidate more than once.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1088 72102866-910b-0410-8b05-ffd578937521
1996-03-07 02:30:04 +00:00
mccallum
c6a9cf83d8 (NSAllMapTableValues): Get rid of unused variable ARRAY. Return
VALUEARRAY, not unused variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1087 72102866-910b-0410-8b05-ffd578937521
1996-03-07 01:56:10 +00:00
mccallum
173ead75cb Declare new methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1083 72102866-910b-0410-8b05-ffd578937521
1996-03-07 00:29:05 +00:00
mccallum
599b54b504 (NotificationRequest): Ivar names prepended with `_'.
(NotificationInvocation): Likewise.
(NotificationPerformer): Likewise.
([NotificationDispatcher
-_addObserver:notificationRequest:name:object:]): Insist that observer
be non-nil; (in the case of Invocation's, the invocation is now the
observer).
([NotificationDispatcher -addInvocation:name:object:]): Method renamed
from -addObserver:invocation:...  Pass the invocation as the
observer.  Release the NR after it has been added.
([NotificationDispatcher -addObserver:selector:name:object:]): Release
the NR after it has been added.
([NotificationDispatcher -_removeFromLinkedListNotificationRequest:]):
New method.
([NotificationDispatcher -removeInvocation:]): New method.
([NotificationDispatcher -removeInvocation:name:object:]): New method.
([NotificationDispatcher -removeObserver:]): Use
_removeFromLinkedListNotificationRequest:.
([NotificationDispatcher -removeObserver:name:object:]): Likewise.
([NotificationDispatcher +addInvocation:name:object:]): New method.
([NotificationDispatcher +removeInvocation:]): New method.
([NotificationDispatcher +removeInvocation:name:object:]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1082 72102866-910b-0410-8b05-ffd578937521
1996-03-07 00:28:43 +00:00
mccallum
fd0733d23d ([Connection +initialize]): Initialize all_connections_local_targets.
([Connection -addLocalObject:]): Put it in all_connections_local_targets
also.
([Connection -removeLocalObject:]): Remove it from
all_connections_local_targets also.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1081 72102866-910b-0410-8b05-ffd578937521
1996-03-06 16:40:00 +00:00
mccallum
741a48d406 Declare new ivars and notfication strings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1068 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:38:38 +00:00
mccallum
beace25ae7 Several ivar name changes. Method types fixed.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1067 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:38:13 +00:00
mccallum
efb18c71e7 (in_port_class, out_port_class): New ivars replacing port_class.
Declare methods to get and set them.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1066 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:37:45 +00:00
mccallum
d7c22f7452 (SIGNATURE_FORMAT_STRING): Remove "version" from between class name
and format version.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1065 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:37:11 +00:00
mccallum
16cb7de5b3 Fix typos.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1064 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:36:36 +00:00
mccallum
ed0c23d9a9 Many ivar names changed for clarity. Some new ivars added; see
changes to TcpPort.h.  Overhaul of how TcpOutPort's track their remote
address.  Previously they used the address of their local peer; this
is no good when encoding a TcpOutPort on the wire for D.O.; the
D.O. reciever needs a way to contact the listen'ing socket of the
TcpInPort in order to form a new connection.  _remote_in_port_address
is now the address of the remote listen'ing socket.  Added many
comments throughout.  All perror() calls changes to be more
informative.
(debug_tcp_port): Make this a static variable instead of a macro.
(init_socket_2_port): Check pre-existance of socket_2_port here
instead of callers.
([TcpInPort +newForReceivingFromPortNumber:]): Method overhauled.
Don't bind socket to INADDR_ANY because we need to be able to encode
our unique host address on the wire for D.O.
([TcpInPort -_listeningSockaddr]): New method.
([TcpInPort -receivePacketWithTimeout:]): Method overhauled.  Get the
reply port for an incoming packet from the packet prefix.
([TcpInPort -_connectedOutPortInvalidated:]): Add debugging message.
([TcpInPort -classForConnectedCoder:]): Return the TcpOutPort class,
not [self class] because we always encode a "send right" (ala Mach),
not a "recieve right".
([TcpOutPort
+newForSendingToSockaddr:withAcceptedSocket:pollingInPort:]): Method
renamed, and majorly overhauled.  Now many different combinations of
NULL argument do different things.  This is now the single designated
initializer.  We now check both the SOCKADDR and the SOCK argument to
find previously-created TcpOutPort's.  This method is also used to set
the remote_in_port_address of an already-created TcpOutPort.  There is
more error checking.
([TcpOutPort +newForSendingToPortNumber:onHost:]): Overhauled.
([TcpOutPort +_newWithAcceptedSocket:peeraddr:inPort:]): Overhauled to
work with new designated  initalizer.
([TcpOutPort -sendPacket:withTimeout:]): Use new low-level Packet
interface that deals with reply ports.
([TcpOutPort +packetClass]): New method.
(PREFIX_LENGTH_TYPE): New macro.
(PREFIX_LENGTH_SIZE): New macro.
(PREFIX_ADDRESS_TYPE): New macro.
(PREFIX_ADDRESS_SIZE): New macro.
(PREFIX_SIZE): New macro.
([TcpPacket -_initForReceivingWithSize:replyPort:]): Use 0 prefix,
because the separate +_getPacketSize... method reads those bytes.
([TcpPacket -_writeToSocket:withReplySockaddr:]): Now the prefix
includes the sockaddr of the reply port.  If ADDR is non-null, set the
reply port address portion of the prefix.
([TcpPacket +_getPacketSize:andReplyPort:fromSocket:inPort:]): New
method, replacing +readPacketSizeFromSocket:.
([TcpPacket -_fillFromSocket:]): Set Stream's eofPosition properly.
Leave Stream's position at zero.
(InPortAcceptedClientNotification): New notification string.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1063 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:35:57 +00:00
mccallum
af321f2af1 Change many ivar names.
(debug_proxy): Temporarily set to 1.
([Proxy +newForRemoteTarget:connection:]): Set new ivar names.
Embellish debugging message to include connection.
([Proxy -invalidateProxy]): Return void instead of self.
([Proxy +encodeObject:withConnectedCoder:]): Overhauled, encode tag,
and change order of encoding for more efficient encoding.  Added many
comments.
([Proxy +newWithCoder:]): Likewise, to match.  Also added a check to
make sure we don't return a bogus pointer for a local object; do this
by checking with connection's +includesLocalObject; if it's not
there, raise an exception.
([Proxy -forward::]): Call the new forwarding method name in Connection.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1062 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:16:04 +00:00
mccallum
d2c356a762 Indentation changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1061 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:10:17 +00:00
mccallum
34a7788ce2 ([LinkedList -prependObject:]): Fix return type.
([LinkedList -insertObject:atIndex:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1060 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:09:55 +00:00
mccallum
931eb3b58c ([Encoder -_coderCreateReferenceForObject:]): Insert it in
object_2_xref, not const_ptr_2_xref.
([Encoder -_encodeObject:withName:isBycopy:isForwardReference:]):
Create the in_progress_table with NSNonOwnedPointerMapKeyCallBacks,
not NSObject..; needed by distributed objects so we don't get infinite
loop with proxy objects.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1059 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:09:15 +00:00
mccallum
e51b3f9c60 ([Decoder +readSignatureFromCStream:getClassname:formatVersion:]):
Compare got with 6, not 2.
([Decoder -_coderCreateReferenceForObject:]): Add warning comment
about a -retain we don't want.  Fix this eventually!


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1058 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:07:17 +00:00
mccallum
d714589623 (default_in_port_class, default_out_port_class): New static variables,
replacing default_port_class.
(all_connections_local_targets): New map table; not used yet, though.
(debug_connection): Temporarily set to 1.
([Connection +initialize]): Set new static vars.
([Connection +setDefaultInPortClass:]): New method.
([Connection +defaultInPortClass]): New method.
([Connection +setDefaultOutPortClass:]): New method.
([Connection +defaultOutPortClass]): New method.
([Connection -init]): Use new default_in_port_class.
([Connection +new]): Likewise.
([Connection +newWithRootObject:]): Likewise.
([Connection +newRegisteringAtName:withRootObject:]): Likewise.
([Connection +rootProxyAtName:onHost:]): Likewise.
([Connection +rootProxyAtPort:]): Likewise.
([Connection +newForInPort:outPort:ancestorConnection:]): Assert the
in port.  Embellish the debugging message to print the in port and
out port.  Set the new connection's in port and out port ivars.
Register ourselves as observers of port invalidation with the
NotificationDispatcher.  Post a notification that a new connection was
created.
([Connection -runConnectionWithTimeout:]): Use
_serviceReceivedRequestsWithTimeout:.
([Connection -_newReceivedRmcWithTimeout:]): Use decodingClass, not
encodingClass.
([Connection -_serviceReceivedRequestsWithTimeout:]): Method name
changed from -newReceivedReplyRmcWithSequenceNumber:.
([Connection +includesLocalObject:]): New method; still needs more
infrastructure to work, though.
([Connection -inPortClass]): New method.
([Connection -outPortClass]): New method.
([Connection -setInPortClass:aPortClass]): New method.
([Connection -setOutPortClass:aPortClass]): New method.
([Connection -_encoderCreateReferenceForConstPtr:]): Add 1 to map
table count to get xref.
([Connection -_decoderCreateReferenceForConstPtr:]): Likewise.
([Connection -dealloc]): Remove ourselves from the NotificationDispatcher.
(ConnectionWasCreatedNotification): New notification string.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1057 72102866-910b-0410-8b05-ffd578937521
1996-03-06 14:05:36 +00:00
mccallum
2aea66d1cb (CONNECTED_CODER_FORMAT_VERSION): New macro.
([ConnectedEncoder
-_initForWritingWithConnection:sequenceNumber:identifier:]): Get
packetClass from the connection's outPort, not the outPortClass.
Return self.
([ConnectedDecoder
+readSignatureFromCStream:getClassname:formatVersion:]): Fill in name
and version.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1056 72102866-910b-0410-8b05-ffd578937521
1996-03-06 13:54:21 +00:00
mccallum
f26a2609fe Use new SIGNATURE_FORMAT_STRING, as defined in objects/CoderPrivate.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1055 72102866-910b-0410-8b05-ffd578937521
1996-03-06 13:51:48 +00:00
mccallum
3ac9d40922 New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1054 72102866-910b-0410-8b05-ffd578937521
1996-03-03 02:18:46 +00:00
mccallum
0e5c8c02a8 (GNU_MFILES): Added Notification.m and NotificationDispatcher.m.
Removed SocketPort.m.
(GNU_HEADERS): Added objects/Notification.h and
objects/NotificationDispatcher.h.  Removed objects/SocketPort.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1053 72102866-910b-0410-8b05-ffd578937521
1996-03-03 02:16:25 +00:00
mccallum
6dc128356a New implementation based on GNU NotificationDispatcher. This version
is much faster, and has some better features.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1050 72102866-910b-0410-8b05-ffd578937521
1996-03-03 01:41:20 +00:00
mccallum
8471dd2b25 New implementation based on GNU Notification. This version is much
faster, and has some better features.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1049 72102866-910b-0410-8b05-ffd578937521
1996-03-03 01:41:01 +00:00
mccallum
67aae38b85 Declare new methods and new Notification String.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1048 72102866-910b-0410-8b05-ffd578937521
1996-03-03 01:38:40 +00:00
mccallum
c888258e60 ([Proxy +initialize]): Don't return self.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1047 72102866-910b-0410-8b05-ffd578937521
1996-03-03 01:37:59 +00:00
mccallum
199edc8cd5 Don't include <objc/Object.h>
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1046 72102866-910b-0410-8b05-ffd578937521
1996-03-03 01:37:39 +00:00
mccallum
6e8b9c47a0 ([LinkedListNode -initialize]): Method removed.
([LinkedListNode -init]): Set _linked_list.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1045 72102866-910b-0410-8b05-ffd578937521
1996-03-03 01:37:08 +00:00
mccallum
f44968627f ([LinkedList -insertObject:after:]): When inserting first object, set
_count to 1.
([LinkedList -insertObject:before:]): Likewise.
([LinkedList -appendObject:]): Don't claim ownership here if we're
going to call -insertObject:after: later.
([LinkedList -prependObject:]): Likewise.  And renamed from
prependElement.
([LinkedList -insertObject:atIndex:]): Likewise.
([LinkedList -newEnumState]): New method.
([LinkedList -nextObjectWithEnumState:]): Overhauled.
([LinkedList -prevObjectWithEnumState:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1044 72102866-910b-0410-8b05-ffd578937521
1996-03-03 01:36:41 +00:00
mccallum
78362f95c8 ([Connection +connectionsCountWithInPort:]): Fix use of END_FOR_ARRAY.
([Connection -invalidate]): Post ConnectionBecameInvalidNotification.
(ConnectionBecameInvalidNotification): New extern String.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1043 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:45:04 +00:00
mccallum
916a5ee316 (ConnectionBecameInvalidNotification): Declare extern new String.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1042 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:42:42 +00:00
mccallum
6910873fa9 (String): Make the protocol inherit from the NSObject protocol.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1041 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:41:51 +00:00
mccallum
a955a3bd30 (ConstantCollecting): Make is inherit from the NSObject protocol.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1040 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:41:23 +00:00
mccallum
6cc416e14e ([TcpInPort -numberOfConnectedOutPorts]): New method.
([TcpInPort -_connectedOutPortInvalidated:]): Post an
InPortClientBecameInvalidNotification.
([TcpInPort -portNumber]): New method.
([TcpInPort -description]): New method.
([TcpOutPort +newWithAcceptedSocket:inPort:]): Fill in the _address
ivar.
([TcpOutPort -portNumber]): New method.
([TcpOutPort -description]): New method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1039 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:40:46 +00:00
mccallum
42b53d068e ([MethodInvocation -invokeWithObject:]): Make it a
-subclassResponsibililty.
([MethodInvocation -initWithArgframe:selector:]): Raise an exception
if we are unable to get a non-null selector type string.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1038 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:38:06 +00:00
mccallum
2999ea826d ([Port -invalidate]): Post PortBecameInvalidNotification.
(PortBecameInvalidNotification): New String object.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1037 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:36:53 +00:00
mccallum
e55c09f42c ([NSGMutableDictionary -objectForKey:]): New method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1036 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:35:52 +00:00
mccallum
8bc528f073 ([ConstantKeyedCollection -description]): Use object_get_class_name
instead of -name.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1035 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:35:28 +00:00
mccallum
08f493f917 ([DelegatePool -forward::]): Fix use of END_FOR_ARRAY.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1033 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:33:51 +00:00
mccallum
a7cfff726b ([Enumerator -nextObject]): Pass pointer to ENUM_STATE.
([Enumerator -dealloc]): Likewise.
([ConstantCollection -detectObjectByInvoking:]): Use -returnValueIsTrue.
([ConstantCollection -printForDebugger]): Use object_get_class_name
instead of -name because -name is now ambiguously typed.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1032 72102866-910b-0410-8b05-ffd578937521
1996-03-03 00:33:24 +00:00
mccallum
98a91e5fb3 Surrounded by #if for mach.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1027 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:21:34 +00:00
mccallum
a9db0be31a Fix #ifndef symbol.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1026 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:21:00 +00:00
mccallum
d1361514a0 New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1025 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:20:32 +00:00
mccallum
7c84620fae (GNU_MFILES): Add MachPort.m.
(GNU_HEADERS): Add objects/MachPort.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1024 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:18:08 +00:00
mccallum
0e55df1258 *** empty log message ***
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1023 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:07:42 +00:00
mccallum
b28e7c8ede New file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1022 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:06:57 +00:00
mccallum
10fd5300fb Overhauled for new Port heirarchy.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1021 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:06:03 +00:00
mccallum
f56cfab056 Comment change.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1020 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:05:07 +00:00
mccallum
c9a822d789 ([Encoder -_coderCreateReferenceForConstPtr:]): Get xref before
asserting it.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1019 72102866-910b-0410-8b05-ffd578937521
1996-03-01 16:01:33 +00:00
mccallum
817c1e5677 (WRITE_SIGNATURE_FORMAT_ARGS): Use STRINGIFY() for OBJECTS_PACKAGE_NAME.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1018 72102866-910b-0410-8b05-ffd578937521
1996-03-01 15:57:59 +00:00
mccallum
164ab2393e (STRINGIFY): New macro defined, if not defined already.
(XSTRINGIFY): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1017 72102866-910b-0410-8b05-ffd578937521
1996-03-01 15:57:32 +00:00
mccallum
7edf52aaa0 (END_FOR_ARRAY): Macro renamed from FOR_ARRAY_END, and given argument.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1016 72102866-910b-0410-8b05-ffd578937521
1996-03-01 15:56:16 +00:00
mccallum
7a180f449a Overhauled for new collections, coders and ports.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1015 72102866-910b-0410-8b05-ffd578937521
1996-03-01 15:54:57 +00:00
mccallum
abb2d4f80e (GNU_MFILES): Added UdpPort.m.
(GNU_HEADERS): Added objects/UdpPort.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1013 72102866-910b-0410-8b05-ffd578937521
1996-03-01 14:53:30 +00:00
mccallum
a926eb2858 (GNUSTEP_MFILES): Re-added Connection.m and ConnectedCoder.m.
(GNUSTEP_HEADERS): Removed duplicate Foundation/NSHashTable.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1012 72102866-910b-0410-8b05-ffd578937521
1996-03-01 02:49:31 +00:00
mccallum
6f7c314f40 ([Decoder +readSignatureFromCStream:getClassname:formatVersion:]): Get
new values.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1009 72102866-910b-0410-8b05-ffd578937521
1996-02-29 01:50:31 +00:00
mccallum
d693f394d4 ([Encoder -writeSignature]): Use new macro.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1008 72102866-910b-0410-8b05-ffd578937521
1996-02-29 01:50:05 +00:00
mccallum
189f6992db New macro.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1007 72102866-910b-0410-8b05-ffd578937521
1996-02-29 01:49:34 +00:00
mccallum
592c128410 (SIGNATURE_FORMAT_STRING): Change to include package name and version.
(WRITE_SIGNATURE_FORMAT_ARGS): New macro.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1006 72102866-910b-0410-8b05-ffd578937521
1996-02-29 01:39:48 +00:00
mccallum
1a79d72e2f (GNU_MFILES): Add TcpPort.m.
(GNU_HEADERS): Add objects/TcpPort.h.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1005 72102866-910b-0410-8b05-ffd578937521
1996-02-29 01:37:26 +00:00
mccallum
2392b217a8 (FILE_AUTHORS): Added "Albin L. Jones".
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1004 72102866-910b-0410-8b05-ffd578937521
1996-02-25 15:01:49 +00:00
mccallum
ed81ee921f ([NSInvocation +initialize]): Fix typo.
([NSInvocation +invocationWithMethodSignature:]): Likewise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1003 72102866-910b-0410-8b05-ffd578937521
1996-02-24 18:51:20 +00:00
mccallum
40bcdbbfaa (GNUSTEP_MFILES): Add NSInvocation.m.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1002 72102866-910b-0410-8b05-ffd578937521
1996-02-24 18:49:35 +00:00
mccallum
c919834d1c 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
mccallum
401815e4f5 (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
mccallum
153ecc7603 ([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
mccallum
2f78d229bb 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
mccallum
e13beb9d87 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
mccallum
1697d5f6cd ([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
mccallum
90a367533e 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
mccallum
78a4ae8459 ([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
mccallum
f2ca8f9103 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
mccallum
571196a9e5 ([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
mccallum
f90505d316 ([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
mccallum
4200045b9f (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
mccallum
3e12f5e590 (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
mccallum
6ca26d087c (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
mccallum
06c8a09d27 (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
mccallum
2bf3b74354 ([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
mccallum
34e1956267 ([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
mccallum
74c0185a39 (__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
mccallum
ff0ce16668 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
mccallum
06046b2faa (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
mccallum
596ce40253 (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
mccallum
344394926c 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
mccallum
e04c45aba9 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
mccallum
32cf6e5b62 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
mccallum
27a5e6d245 ([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
mccallum
d77e7f4601 ([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
mccallum
1809abb47f 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
mccallum
1c319c7279 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
mccallum
a7682719ea ([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
mccallum
8b448315da 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
mccallum
4d1da63495 ([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
mccallum
dce5a12dc3 ([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