David Chisnall
c5103403f6
Refactored last two commits so that all of the real code is in GSIMap.h and is just called from the relevant classes, rather than copied and pasted everywhere. Also added fast enumeration support to GSCountedSet.
...
I think that's all of the classes that use GSIMaps for their implementation now fully supporting fast enumeration. If there are any that I've missed, then just copy the methods from GSSet to implement them. You just need to set the mutations pointer to something sensible (i.e. something that will change if the collection mutates) and then call the new GSIMapCountByEnumeratingWithStateObjectsCount() function.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29181 72102866-910b-0410-8b05-ffd578937521
2009-12-29 16:49:07 +00:00
David Chisnall
41eb58f807
Added fast enumeration to NSSet. This changed the layout of GSMutableSet, adding a _version ivar, but this is a private class so it doesn't change the public ABI. All mutator methods in GSMutableSet must increment this variable, allowing thread-safe fast enumeration.
...
As with GSArray, GSSet uses its isa pointer for detecting mutations. This may change as a result of adding KVO notifications, so it might not be the best solution, but I can't currently think of a way we could catch isa changing to [GSMutableSet class] and not changing to a hidden class...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29179 72102866-910b-0410-8b05-ffd578937521
2009-12-29 15:59:14 +00:00
Richard Frith-MacDonald
bc9468c45f
More moves towards OSX 10.5 GC compatibility.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28054 72102866-910b-0410-8b05-ffd578937521
2009-03-09 15:11:51 +00:00
Richard Frith-MacDonald
0e2e58bf87
simplify GC ... don't need to add new zone
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27783 72102866-910b-0410-8b05-ffd578937521
2009-02-04 16:45:10 +00:00
Richard Frith-MacDonald
6bccff5fc7
GC changes for MacOS-X compatiblity
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27630 72102866-910b-0410-8b05-ffd578937521
2009-01-19 11:00:33 +00:00
Richard Frith-MacDonald
b2b14398d2
allow developers more time to adapt to LGPLv3
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26606 72102866-910b-0410-8b05-ffd578937521
2008-06-08 10:38:33 +00:00
Richard Frith-MacDonald
d6cfc0e91c
Improve MacOS-X compatibility of headers.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25638 72102866-910b-0410-8b05-ffd578937521
2007-11-29 20:53:26 +00:00
Richard Frith-MacDonald
62559023b9
Update to GPL3 and LGPL3
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25482 72102866-910b-0410-8b05-ffd578937521
2007-09-14 11:36:11 +00:00
Richard Frith-MacDonald
0ebe68ae48
More code tidyups and NSError updates.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23921 72102866-910b-0410-8b05-ffd578937521
2006-10-20 10:56:27 +00:00
Richard Frith-Macdonald
7c4a87c2c0
Recommit gcc-4 tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21431 72102866-910b-0410-8b05-ffd578937521
2005-07-08 11:48:37 +00:00
Richard Frith-Macdonald
9e292d78c1
Revert subtly broken change
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21391 72102866-910b-0410-8b05-ffd578937521
2005-07-01 17:31:07 +00:00
Richard Frith-Macdonald
71e5005964
Tweaks to avoid compiler warnings with gcc-4
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21390 72102866-910b-0410-8b05-ffd578937521
2005-07-01 12:29:50 +00:00
Adam Fedor
fcc13ccd0f
* Update FSF Address.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21245 72102866-910b-0410-8b05-ffd578937521
2005-05-22 03:32:16 +00:00
Richard Frith-Macdonald
db7b22a4fb
Tidy up use of white space so we have it after if/for/while and not after (
...
or before ) or padding at end of line.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20773 72102866-910b-0410-8b05-ffd578937521
2005-02-22 11:22:44 +00:00
Richard Frith-Macdonald
d82674f3d8
Fix stack overflow problem
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20016 72102866-910b-0410-8b05-ffd578937521
2004-09-07 11:08:46 +00:00
Richard Frith-Macdonald
59decd99ff
Override -init to use our own initialiser
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20013 72102866-910b-0410-8b05-ffd578937521
2004-09-07 09:22:10 +00:00
David Ayers
68672643e7
* Source/GSSet.m (-[GSMutableSet unionSet:]): Remove redundant
...
test.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19456 72102866-910b-0410-8b05-ffd578937521
2004-06-04 13:19:42 +00:00
Richard Frith-Macdonald
412c677079
More keyed coding updates.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@18495 72102866-910b-0410-8b05-ffd578937521
2004-01-28 07:33:20 +00:00
Fred Kiefer
cb7a4b0777
Implemented keyed decoding for this classes.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@18491 72102866-910b-0410-8b05-ffd578937521
2004-01-27 21:51:33 +00:00
David Ayers
ac30183cd6
Header reorganizsateion - Please refer to ChangeLog
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17407 72102866-910b-0410-8b05-ffd578937521
2003-07-31 23:49:32 +00:00
Adam Fedor
d228cba99b
Change syntax of includes
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@16874 72102866-910b-0410-8b05-ffd578937521
2003-06-07 01:24:41 +00:00
Richard Frith-Macdonald
64d7feafd2
Optimise test for dictionary equality
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@15973 72102866-910b-0410-8b05-ffd578937521
2003-02-16 11:31:28 +00:00
Richard Frith-Macdonald
4bd6038dd5
Tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@15654 72102866-910b-0410-8b05-ffd578937521
2003-01-20 17:18:06 +00:00
Richard Frith-Macdonald
97ee138a2b
Tidy more GNUstep extensions.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@15137 72102866-910b-0410-8b05-ffd578937521
2002-11-27 12:52:29 +00:00
Richard Frith-Macdonald
f6cc9ceb34
Tidied
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@14969 72102866-910b-0410-8b05-ffd578937521
2002-11-10 13:56:34 +00:00
Richard Frith-Macdonald
d54488d74d
Added method for returning immutable objects.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@14776 72102866-910b-0410-8b05-ffd578937521
2002-10-14 08:52:39 +00:00
Richard Frith-Macdonald
106faffbd9
Applied fixes for map table changes.
...
Also fixes for GSMime set methods
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@13727 72102866-910b-0410-8b05-ffd578937521
2002-05-28 11:30:15 +00:00
Richard Frith-Macdonald
ecbcc202a1
iPerformance and GC improvements
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@13726 72102866-910b-0410-8b05-ffd578937521
2002-05-28 05:23:36 +00:00
Adam Fedor
70875d6164
Darwin fixes
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@11904 72102866-910b-0410-8b05-ffd578937521
2001-12-28 03:40:03 +00:00
Richard Frith-Macdonald
5be36e089c
Many minor fixes for autogsdoc.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@11787 72102866-910b-0410-8b05-ffd578937521
2001-12-17 14:31:42 +00:00
Richard Frith-Macdonald
e8cb9dcc9d
Tidyups and implementation of setSet: method
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@10010 72102866-910b-0410-8b05-ffd578937521
2001-05-22 09:30:07 +00:00
Richard Frith-MacDonald
e0256e7ac3
Tidyup
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@8523 72102866-910b-0410-8b05-ffd578937521
2001-01-08 23:44:25 +00:00
Richard Frith-MacDonald
012ba919ad
Clean up interface to GSIMap
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@8389 72102866-910b-0410-8b05-ffd578937521
2000-12-21 10:31:33 +00:00
Richard Frith-MacDonald
24451e5cbc
Code simplification
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@8275 72102866-910b-0410-8b05-ffd578937521
2000-12-07 23:07:37 +00:00
Richard Frith-MacDonald
edc67ffd44
Some set tidyups
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@8274 72102866-910b-0410-8b05-ffd578937521
2000-12-07 22:57:56 +00:00