Commit graph

9289 commits

Author SHA1 Message Date
Niels Grewe
f8fd11f3fd Completely overhaul how we do sorting in -base. GSSorting.h now defines an
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
2012-09-19 13:31:09 +00:00
Gregory John Casamento
e26964a166 * Headers/Foundation/Foundation.h
* Headers/Foundation/NSScriptWhoseTests.h
	* Source/GNUmakefile
	* Source/NSObject+NSComparisonMethods.m: Move the
	comparison methods to the header for NSScriptWhoseTests.h,
	but don't define the abstract class since we don't support
	Apple script.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35570 72102866-910b-0410-8b05-ffd578937521
2012-09-17 16:05:06 +00:00
Richard Frith-MacDonald
ae328505c2 add support for data:,xxx style URL
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35568 72102866-910b-0410-8b05-ffd578937521
2012-09-16 07:39:18 +00:00
Richard Frith-MacDonald
30934c87eb fix json quoting by copying from webservices library
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35559 72102866-910b-0410-8b05-ffd578937521
2012-09-10 13:18:29 +00:00
Richard Frith-MacDonald
d2972dd399 improve serialisation of booleans
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35557 72102866-910b-0410-8b05-ffd578937521
2012-09-10 10:27:59 +00:00
Richard Frith-MacDonald
4985cf3413 OSX compatibility tweaks inspiered by testplant
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35555 72102866-910b-0410-8b05-ffd578937521
2012-09-10 05:18:09 +00:00
Sergii Stoian
3e6253d584 Fox conflict again
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35550 72102866-910b-0410-8b05-ffd578937521
2012-09-09 21:37:08 +00:00
Sergii Stoian
54b5344ee6 Fix conflict
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35549 72102866-910b-0410-8b05-ffd578937521
2012-09-09 21:33:27 +00:00
Sergii Stoian
283559fa07 Create directories only if it doesn't exist.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35548 72102866-910b-0410-8b05-ffd578937521
2012-09-09 21:29:38 +00:00
Wolfgang Lux
4e8258b232 Add missing variable declaration on big-endian systems.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35543 72102866-910b-0410-8b05-ffd578937521
2012-09-09 10:04:22 +00:00
Richard Frith-MacDonald
8e79b950a7 quadword number fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35538 72102866-910b-0410-8b05-ffd578937521
2012-09-07 08:21:23 +00:00
Richard Frith-MacDonald
e798592eb8 forgot about turning off whitespace in plist element
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35534 72102866-910b-0410-8b05-ffd578937521
2012-09-06 15:06:12 +00:00
Richard Frith-MacDonald
e46b8d3567 tweak xml parsing to not ignore white space
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35533 72102866-910b-0410-8b05-ffd578937521
2012-09-06 12:58:25 +00:00
Richard Frith-MacDonald
b099149311 OSX compatibility fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35532 72102866-910b-0410-8b05-ffd578937521
2012-09-05 08:42:21 +00:00
Fred Kiefer
9ce62100fe Add new CDATA XML test case based on code by John Duff <nico.bin@hotmail.fr>
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35528 72102866-910b-0410-8b05-ffd578937521
2012-09-04 21:29:11 +00:00
Richard Frith-MacDonald
0be505308d simplification, including use of strtoull() everywhere
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35503 72102866-910b-0410-8b05-ffd578937521
2012-09-03 13:36:45 +00:00
Niels Grewe
d2401da38c Tweak ICU detection a little.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35500 72102866-910b-0410-8b05-ffd578937521
2012-09-03 12:58:48 +00:00
Niels Grewe
2174f87ede Let us run configure successfully on platforms that ship ICU, but not the
icu-config script.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35487 72102866-910b-0410-8b05-ffd578937521
2012-09-01 19:24:54 +00:00
Richard Frith-MacDonald
7fd19938a5 fixes to conform to coding style
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35477 72102866-910b-0410-8b05-ffd578937521
2012-08-29 08:54:46 +00:00
Richard Frith-MacDonald
739c0c8ece fix bug appending path to empty string on windows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35462 72102866-910b-0410-8b05-ffd578937521
2012-08-27 10:26:31 +00:00
Richard Frith-MacDonald
543be7f837 fix typecast
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35458 72102866-910b-0410-8b05-ffd578937521
2012-08-27 09:26:00 +00:00
Niels Grewe
ee4052bf6d Compatibility improvements for QNX.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35451 72102866-910b-0410-8b05-ffd578937521
2012-08-26 08:55:49 +00:00
Niels Grewe
868d8a6922 Add support for logging to the QNX slog via NSLog().
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35450 72102866-910b-0410-8b05-ffd578937521
2012-08-25 23:55:51 +00:00
Niels Grewe
d6047d2923 Make the configure script behave more friendly when cross-compiling.
It now no longer unhelpfully fails because it cannot run foreign
binaries during the configuration phase. Instead, the configuration
values necessary are read from cross.config in this case. (This just
codifies present defaults and adds sensible ones where they were still
missing). Alternative files can be specified using the
`--with-cross-compilation-info=' switch.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35449 72102866-910b-0410-8b05-ffd578937521
2012-08-25 21:44:02 +00:00
David Chisnall
6f2704bdb4 Conditionally compile profiling / debugging code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35448 72102866-910b-0410-8b05-ffd578937521
2012-08-25 14:01:56 +00:00
David Chisnall
e30ebe3149 Fix the build on platforms without tiny string support.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35447 72102866-910b-0410-8b05-ffd578937521
2012-08-25 12:31:41 +00:00
David Chisnall
bbc86d4f31 Use tiny strings in a few more places.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35446 72102866-910b-0410-8b05-ffd578937521
2012-08-25 12:15:11 +00:00
David Chisnall
98d6f0baa3 Define macros to expose things in C headers that we need (e.g. INTPTR_MAX) that aren't exposed by default when compiling Objective-C++.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35433 72102866-910b-0410-8b05-ffd578937521
2012-08-20 15:51:30 +00:00
Niels Grewe
383d5ccec2 Changes to support clang's __attribute__((objc_root_class)).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35412 72102866-910b-0410-8b05-ffd578937521
2012-08-16 12:31:16 +00:00
Richard Frith-MacDonald
fc384c63a3 simplify directory creation code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35400 72102866-910b-0410-8b05-ffd578937521
2012-08-13 11:07:02 +00:00
Richard Frith-MacDonald
94add60875 property list deserialisation tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35395 72102866-910b-0410-8b05-ffd578937521
2012-08-10 19:09:44 +00:00
Richard Frith-MacDonald
fd85d91b8a check for failure to create temporary directory
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35394 72102866-910b-0410-8b05-ffd578937521
2012-08-10 15:56:45 +00:00
Richard Frith-MacDonald
5904a38efd temporary directory improvement
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35393 72102866-910b-0410-8b05-ffd578937521
2012-08-10 14:31:28 +00:00
Richard Frith-MacDonald
48ed95b668 fix for bug #35672
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35392 72102866-910b-0410-8b05-ffd578937521
2012-08-10 09:25:38 +00:00
Richard Frith-MacDonald
897390797f preparation for osx compatibility fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35390 72102866-910b-0410-8b05-ffd578937521
2012-08-10 08:36:09 +00:00
Richard Frith-MacDonald
b618b41512 Another use of tolower() found and removed ... retain tolower() when the
internal 8bit encoding in not latin1 and uni_tolower() is therefore not
usable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35386 72102866-910b-0410-8b05-ffd578937521
2012-08-09 18:57:20 +00:00
Richard Frith-MacDonald
cbbdf7a3df fix bogus NSError generation when deserialising some property lists
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35382 72102866-910b-0410-8b05-ffd578937521
2012-08-09 12:58:01 +00:00
Richard Frith-MacDonald
349e696524 Rewrite version/availaibility constant code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35380 72102866-910b-0410-8b05-ffd578937521
2012-08-09 08:48:54 +00:00
Riccardo Mottola
a16dbfd544 Add macro detection for MacOS version 10.1 to 10.6 and make GS_API_LATEST the last in priority.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35365 72102866-910b-0410-8b05-ffd578937521
2012-08-08 21:58:29 +00:00
Richard Frith-MacDonald
6f9b24af1e simplify case conversion options
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35364 72102866-910b-0410-8b05-ffd578937521
2012-08-08 16:54:08 +00:00
Richard Frith-MacDonald
5b9f85a875 fix bad return inside exception block.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35363 72102866-910b-0410-8b05-ffd578937521
2012-08-08 15:10:13 +00:00
Richard Frith-MacDonald
9fcfba64a2 literal string handling improvments.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35359 72102866-910b-0410-8b05-ffd578937521
2012-08-08 09:46:08 +00:00
Richard Frith-MacDonald
99dfb5b7da selector comparison fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35336 72102866-910b-0410-8b05-ffd578937521
2012-08-02 09:27:59 +00:00
Richard Frith-MacDonald
c58ccdb72c chunked encoding optimisations
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35331 72102866-910b-0410-8b05-ffd578937521
2012-07-31 06:53:02 +00:00
Richard Frith-MacDonald
8a605b360a performance tweak for accumulating large amounts of data into a buffer.
eg. megabytes added in incremets of a few bytes at a time.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35328 72102866-910b-0410-8b05-ffd578937521
2012-07-30 16:55:51 +00:00
Richard Frith-MacDonald
4d638f1cb0 fix for bug #36967
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35326 72102866-910b-0410-8b05-ffd578937521
2012-07-27 19:00:17 +00:00
Richard Frith-MacDonald
3000e9ec1c OSX compatibility tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35325 72102866-910b-0410-8b05-ffd578937521
2012-07-27 18:02:11 +00:00
Richard Frith-MacDonald
e6c15aef54 crude KVO setter for structs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35324 72102866-910b-0410-8b05-ffd578937521
2012-07-27 16:48:49 +00:00
Fred Kiefer
27a33dbedb * Source/NSXMLNode.m (-description): Remove trailing newline. This
should fix #36976.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35323 72102866-910b-0410-8b05-ffd578937521
2012-07-27 15:35:39 +00:00
David Chisnall
c257d44725 Remove spurious commas in enums.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35308 72102866-910b-0410-8b05-ffd578937521
2012-07-20 12:39:35 +00:00