New improved GSI map macros and added support for GSM alphabet.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@12210 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-Macdonald 2002-01-24 17:03:04 +00:00
parent 7ec92f15c5
commit b43b20c392
18 changed files with 538 additions and 28 deletions

View file

@ -32,8 +32,13 @@
#include <Foundation/NSDebug.h>
#ifdef GSI_NEW
#define GSI_MAP_RETAIN_VAL(M, X)
#define GSI_MAP_RELEASE_VAL(M, X)
#else
#define GSI_MAP_RETAIN_VAL(X)
#define GSI_MAP_RELEASE_VAL(X)
#endif
#define GSI_MAP_KTYPES GSUNION_OBJ
#define GSI_MAP_VTYPES GSUNION_INT
@ -292,7 +297,11 @@
{
GSIMapNode node;
#ifdef GSI_NEW
node = GSIMapNodeForKeyInBucket(&map, bucket, (GSIMapKey)anObject);
#else
node = GSIMapNodeForKeyInBucket(bucket, (GSIMapKey)anObject);
#endif
if (node != 0)
{
if (--node->value.uint == 0)