mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-29 16:01:38 +00:00
Port baseadd to MacOSX
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@15199 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
74a7312255
commit
4667c84855
18 changed files with 808 additions and 580 deletions
83
Source/Additions/GSCompatibility.h
Normal file
83
Source/Additions/GSCompatibility.h
Normal file
|
@ -0,0 +1,83 @@
|
|||
/* GSCompatibility - Extra definitions for compiling on MacOSX
|
||||
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
|
||||
Written by: Adam Fedor <fedor@gnu.org>
|
||||
|
||||
This file is part of the GNUstep Base Library.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
|
||||
|
||||
*/
|
||||
|
||||
#ifndef GSCompatibility_H_INCLUDE
|
||||
#define GSCompatibility_H_INCLUDE
|
||||
|
||||
#ifdef NeXT_Foundation_LIBRARY
|
||||
#include <string.h>
|
||||
#include <Foundation/NSArray.h>
|
||||
#include <Foundation/NSLock.h>
|
||||
#include "gnustep/base/preface.h"
|
||||
#include "gnustep/base/GSObjCRuntime.h"
|
||||
#include "gnustep/base/GNUstep.h"
|
||||
|
||||
#define NSDebugMLLog(a, args...)
|
||||
|
||||
typedef enum _NSGNUstepStringEncoding
|
||||
{
|
||||
/* NB. Must not have an encoding with value zero - so we can use zero to
|
||||
tell that a variable that should contain an encoding has not yet been
|
||||
initialised */
|
||||
GSUndefinedEncoding = 0,
|
||||
|
||||
// GNUstep additions
|
||||
NSKOI8RStringEncoding = 50, // Russian/Cyrillic
|
||||
NSISOLatin3StringEncoding = 51, // ISO-8859-3; South European
|
||||
NSISOLatin4StringEncoding = 52, // ISO-8859-4; North European
|
||||
NSISOCyrillicStringEncoding = 22, // ISO-8859-5
|
||||
NSISOArabicStringEncoding = 53, // ISO-8859-6
|
||||
NSISOGreekStringEncoding = 54, // ISO-8859-7
|
||||
NSISOHebrewStringEncoding = 55, // ISO-8859-8
|
||||
NSISOLatin5StringEncoding = 57, // ISO-8859-9; Turkish
|
||||
NSISOLatin6StringEncoding = 58, // ISO-8859-10; Nordic
|
||||
NSISOThaiStringEncoding = 59, // ISO-8859-11
|
||||
/* Possible future ISO-8859 additions
|
||||
// ISO-8859-12
|
||||
*/
|
||||
NSISOLatin7StringEncoding = 61, // ISO-8859-13
|
||||
NSISOLatin8StringEncoding = 62, // ISO-8859-14
|
||||
NSISOLatin9StringEncoding = 63, // ISO-8859-15; Replaces ISOLatin1
|
||||
NSGB2312StringEncoding = 56,
|
||||
NSUTF7StringEncoding = 64, // RFC 2152
|
||||
NSGSM0338StringEncoding, // GSM (mobile phone) default alphabet
|
||||
NSBIG5StringEncoding // Traditional chinese
|
||||
} NSGNUstepStringEncoding;
|
||||
|
||||
#define GS_RANGE_CHECK(RANGE, SIZE) \
|
||||
if (RANGE.location > SIZE || RANGE.length > (SIZE - RANGE.location)) \
|
||||
[NSException raise: NSRangeException \
|
||||
format: @"in %s, range { %u, %u } extends beyond size (%u)", \
|
||||
sel_get_name(_cmd), RANGE.location, RANGE.length, SIZE]
|
||||
|
||||
GS_EXPORT NSRecursiveLock *gnustep_global_lock;
|
||||
|
||||
@interface NSArray (GSCompatibility)
|
||||
- (id) initWithArray: (NSArray*)array copyItems: (BOOL)shouldCopy;
|
||||
@end
|
||||
|
||||
#endif /* NexT_FOUNDATION_LIB */
|
||||
|
||||
#endif
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue