interface that can be used for all sorting tasks in the library. The actual sort
algorithms to use are now plugable. Timsort is the new default sorting
algorithm, the existing algorithms, shellsort and quicksort, can still be
selected using a configure switch.
Also implement the new NSComparator (blocks) based sorting and insertion index
searching methods for NSMutableArray and NSArray.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35573 72102866-910b-0410-8b05-ffd578937521
* Source/NSXMLDTD.m:
* Source/NSXMLNode.m:
* Source/NSXMLDTDNode.m:
* Source/NSXMLElement.m: Remove compiler warnings for clang
reported by David Chisnall.
* Tests/base/NSAutoreleasePool/basic.m: Get to compile again
without -C99.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35043 72102866-910b-0410-8b05-ffd578937521
Yes, the syntax is ugly, but no doubt people will start using it in June...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35033 72102866-910b-0410-8b05-ffd578937521
object for a private document.
* Tests/base/NSXMLNode/transfer.m: New code for test case
contributed by Doug Simons.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35026 72102866-910b-0410-8b05-ffd578937521
enumeration methods that take blocks as arguments. This allows us to implement
the NSEnumerationConcurrent option of those methods with minimal effort.
The searching methods on NSIndexSet and all the sorting methods are still
missing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35010 72102866-910b-0410-8b05-ffd578937521
for deep copy. Bug found by Doug Simons <doug.simons@testplant.com>.
* Source/NSXMLNode.m (-rootDocument): Don't return the private
document.
* Source/NSXMLNode.m (-nextSibling, -previousSibling): Protect
against namspace nodes.
* Tests/base/NSXMLNode/transfer.m: New test case for problem
reported by Doug Simons.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34988 72102866-910b-0410-8b05-ffd578937521
* Source/NSXMLNode.m: Fix memory leak for attribute private
documents found by valgrind.
* Tests/base/NSXMLNode/namespace.m: Use drain instead of
release.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34976 72102866-910b-0410-8b05-ffd578937521
* Source/NSXMLPrivate.h: Remove URI ivar.
* Source/NSXMLElement.m,
* Source/NSXMLNode.m: Full support for namespaces.
* Tests/base/NSXMLNode/namespace.m: Test code borrowed from
Google data project.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34972 72102866-910b-0410-8b05-ffd578937521
* Source/NSXMLDocument.m: Get DTD from node and and validation
in init methods.
* Source/NSXMLDTD.m: Implement.
* Source/NSXMLNode.m: No children for attribute nodes.
* Tests/base/NSXMLNode/basic.m: Test empty attribute children
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34943 72102866-910b-0410-8b05-ffd578937521
* Source/NSXMLNode.m: Implement special handling for namespace
nodes.
* Tests/base/NSXMLNode/basic.m: Correct method name for
namespace node.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34926 72102866-910b-0410-8b05-ffd578937521
copy if it is nil.
* Source/NSXMLNode.m (+_objectForNode:): Use correct sub class
for decl nodes.
* Tests/base/NSXMLNode/basic.m: More tests.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34912 72102866-910b-0410-8b05-ffd578937521
exception.
* Tests/base/NSXMLNode/basic.m: More tests.
* Source/NSXMLNode.m: Rewrite object value handling.
* Source/NSXMLElement.m (-objectValue): Return @"" when the
value is nil.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34881 72102866-910b-0410-8b05-ffd578937521
* Tests/base/NSXMLNode/children.m: Add test cases for attributes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34879 72102866-910b-0410-8b05-ffd578937521
and rangeOfString:. Mark as hopeful for the moment. All pass
on Mac OS 10.7.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34878 72102866-910b-0410-8b05-ffd578937521
and the special retain and release methods.
* Tests/base/NSXMLNode/basic.m,
* Tests/base/NSXMLNode/children.m: A few more test
cases. Validated on MacOSX 10.6.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34873 72102866-910b-0410-8b05-ffd578937521
* Source/NSXMLDTD.m
* Source/NSXMLDTDNode.m
* Source/NSXMLElement.m
* Source/NSXMLNode.m
* Source/NSXMLPrivate.h: Reimplementation of all DOM classes based on
libxml2. Implementation of all methods using libxml2 functions.
* Tests/base/NSXMLDocument/basic.m
* Tests/base/NSXMLElement/attributes.m
* Tests/base/NSXMLElement/children.m
* Tests/base/NSXMLNode/basic.m
* Tests/base/NSXMLNode/children.m
* Tests/base/NSXMLNode/kinds.m: Changes to test for new functionality.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34789 72102866-910b-0410-8b05-ffd578937521
These were blocking the file from compiling with gcc 4.6
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34672 72102866-910b-0410-8b05-ffd578937521