Stable branch 1_14_0

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/branches/stable@24995 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Adam Fedor 2007-04-12 15:00:00 +00:00
commit b469216640
328 changed files with 21322 additions and 5811 deletions

View file

@ -1,11 +1,7 @@
1 Announcement
**************
ftp.gnustep.org
pub/daily-snapshots
The GNUstep Base Library, version 1.13.1, is now available.
The GNUstep Base Library, version 1.14.0, is now available.
1.1 What is the GNUstep Base Library?
=====================================
@ -22,23 +18,18 @@ portion of the OpenStep standard (the Foundation library).
There is more information available at the GNUstep homepage at
`http://www.gnustep.org'.
ftp.gnustep.org
pub/daily-snapshots
1.2 Noteworthy changes in version `1.13.1'
1.2 Noteworthy changes in version `1.14.0'
==========================================
Various minor bugs and MacOS-X incompatibilities fixed. One important
fix for a possible buffer overrun attack when initialising NSDate
objects from strings. One fix for a serious (crash) bug when
initialising the bundles system in an application which has a lot of
frameworks linked to it. See the release notes for more details.
Many portability (particularly for ms-windows) and MacOS-X
compatibility fixes. New MacOS-X classes and incorporation of
NSAffineTransform and NSSpellServer which were formerly in the gui
library. Improved performance of amssively multithreaded programs.
1.3 Where can you get it? How can you compile it?
==================================================
The gnustep-base-1.13.1.tar.gz distribution file has been placed at
The gnustep-base-1.14.0.tar.gz distribution file has been placed at
`ftp://ftp.gnustep.org/pub/gnustep/core'.
Please log bug reports on the GNUstep project page

1645
ChangeLog

File diff suppressed because it is too large Load diff

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.1//EN" "http://www.gnustep.org/gsdoc-1_0_1.xml">
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.3//EN" "http://www.gnustep.org/gsdoc-1_0_3.xml">
<!--
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@ -67,7 +67,7 @@ notice and this notice are preserved.
removed until or after the specified version are available.<br />
The version consists of five or six digits ...
a major number (0-99) followed by a minor number (00-99) and
a subminor number (00-00).<br />
a subminor number (00-99).<br />
Features in the header file are marked as belonging to different
version ranges using the
<ref type="macro" id="GS_API_VERSION">GS_API_VERSION</ref>
@ -87,7 +87,7 @@ notice and this notice are preserved.
are available.<br />
The version consists of five or six digits ...
a major number (1-99) followed by a minor number (00-99) and
a subminor number (00-00).<br />
a subminor number (00-99).<br />
A major number of 1 indicates the OpenStep specification ...
available as the GS_API_OSSPEC preprocessor constant.<br />
A major number of 4 indicates the OPENSTEP implementation ...
@ -98,27 +98,12 @@ notice and this notice are preserved.
version ranges using the
<ref type="macro" id="GS_API_VERSION">GS_API_VERSION</ref>
macro.<br />
</desc>
<term>NO_GNUSTEP</term>
<desc>
GNUstep specific extensions to the OpenStep and MacOS cocoa
APIs are excluded from the headers.<br />
This is obsolete .. setting GS_OPENSTEP_V should exclude
GNUstep extensions.
</desc>
<term>STRICT_MACOS_X</term>
<desc>
Only methods and classes that are part of the oriignal MacOS
cocoa API are made available in the headers.<br />
This is obsolete .. setting GS_OPENSTEP_V to GS_API_MACOSX should
do this.
</desc>
<term>STRICT_OPENSTEP</term>
<desc>
Only methods and classes that are part of the OpenStep
specification are made available in the headers.<br />
This is obsolete .. setting GS_OPENSTEP_V to GS_API_OPENSTEP
should do this.
For MacOS-X compatibility, if this constant is not defined
and MAC_OS_X_VERSION_MAX_ALLOWED <em>is</em> defined, then
GS_OPENSTEP_V is defined to be MAC_OS_X_VERSION_MAX_ALLOWED.<br />
Similarly, for MacOS-X we define MAC_OS_X_VERSION_10_2,
MAC_OS_X_VERSION_10_3 etc as the appropriate numeric version
numbers.
</desc>
</deflist>
<p>
@ -132,6 +117,11 @@ notice and this notice are preserved.
GNUstep API in place, so that the feature set is as consistent
as possible.
</p>
<p>
The presence of these macros is also used by autogsdoc to generate
information about which version of the API a particular feature
belongs to.
</p>
</subsect>
<subsect>
<heading>User defaults</heading>
@ -279,6 +269,16 @@ notice and this notice are preserved.
core dump on systems where that is possible.
</p>
</desc>
<term>GNUSTEP_STACK_TRACE</term>
<desc>
<p>
When this is set to <em>YES</em> a stack trace is placed in
the user information dictionary of the NSException object
created when an exception is raised. The trace is keyed
on <code>GSStackTraceKey</code> and provides additional
information to let you know where the exception occurred.
</p>
</desc>
<term>GNUSTEP_STRING_ENCODING</term>
<desc>
<p>

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.1//EN" "http://www.gnustep.org/gsdoc-1_0_1.xml">
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.3//EN" "http://www.gnustep.org/gsdoc-1_0_3.xml">
<!--
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.1//EN" "http://www.gnustep.org/gsdoc-1_0_1.xml">
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.3//EN" "http://www.gnustep.org/gsdoc-1_0_3.xml">
<!--
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View file

@ -21,10 +21,19 @@
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02111 USA.
ifeq ($(GNUSTEP_MAKEFILES),)
GNUSTEP_MAKEFILES := $(shell gnustep-config --variable=GNUSTEP_MAKEFILES 2>/dev/null)
endif
ifeq ($(GNUSTEP_MAKEFILES),)
$(error You need to set GNUSTEP_MAKEFILES before compiling!)
endif
# Install into the system root by default
GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT)
GNUSTEP_INSTALLATION_DOMAIN = SYSTEM
GNUSTEP_LOCAL_ADDITIONAL_MAKEFILES=../base.make
include $(GNUSTEP_MAKEFILES)/common.make
include ../Version

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.1//EN" "http://www.gnustep.org/gsdoc-1_0_1.xml">
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.3//EN" "http://www.gnustep.org/gsdoc-1_0_3.xml">
<!--
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View file

@ -24,7 +24,7 @@
#
# Install into the system root by default
GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT)
GNUSTEP_INSTALLATION_DOMAIN = SYSTEM
include $(GNUSTEP_MAKEFILES)/common.make
include ../../config.mak

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.1//EN" "http://www.gnustep.org/gsdoc-1_0_1.xml">
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.3//EN" "http://www.gnustep.org/gsdoc-1_0_3.xml">
<!--
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View file

@ -28,6 +28,63 @@ notice and this notice are preserved.
changes and other information that might help developers and users
migrate to using a newer version of the library.
</p>
<section>
<heading>Version 1.14.0</heading>
<p>
This is a stable release ... all programs linked with earlier
versions of the library and wishing to use this latest stable
release need to be rebuilt from source.<br />
This release should be used in conjunction with the latest
stable release of the other gnustep core components.
</p>
<p>
This release continues the process of cleanup and restructuring
to further improve MacOS-X compatibility, fix bugs, optimise
performance, and improve portability between different
hardware/operating system platforms.
</p>
Highlights:
<deflist>
<term>NSAffineTransform</term>
<desc>
Imported from gui library for MacOS-X compatibility.
</desc>
<term>NSBundle</term>
<desc>
Implemented library resource versioning.
</desc>
<term>NSException</term>
<desc>
Support provision of stack trace information in exceptions.
</desc>
<term>NSObject</term>
<desc>
Fixes for lock contention with retain/release, so the performance
of massively multithreaded applications is much better.
</desc>
<term>NSNetServices</term>
<desc>
New MacOS-X class implemented.
</desc>
<term>NSPathUtilities</term>
<desc>
Uses new gnustep-make features to provide native filesystem
integration.
</desc>
<term>NSPropertyList</term>
<desc>
XML property list parsing supported even if libxml2 not available.
</desc>
<term>NSSpellServer</term>
<desc>
Imported from gui library for MacOS-X compatibility.
</desc>
<term>NSValueTransformer</term>
<desc>
New MacOS-X class implemented.
</desc>
</deflist>
</section>
<section>
<heading>Version 1.13.1</heading>
<p>

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.1//EN" "http://www.gnustep.org/gsdoc-1_0_1.xml">
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.3//EN" "http://www.gnustep.org/gsdoc-1_0_3.xml">
<!--
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View file

@ -23,17 +23,17 @@ runtime.
Adding an option to a makefile to define one of the following preprocessor
constants will modify the API visible to software being compiled -
@deffn {} NO_GNUSTEP
@deffn preprocessor NO_GNUSTEP
GNUstep specific extensions to the OpenStep and MacOS cocoa APIs are
excluded from the headers.
@end deffn
@deffn {} STRICT_MACOS_X
@deffn preprocessor STRICT_MACOS_X
Only methods and classes that are part of the MacOS cocoa API are made
available in the headers.
@end deffn
@deffn {} STRICT_OPENSTEP
@deffn preprocessor STRICT_OPENSTEP
Only methods and classes that are part of the OpenStep specification are
made available in the headers.
@end deffn
@ -50,29 +50,29 @@ possible.
@section User Defaults
@cindex user defaults, API compliance
User defaults may be specified ///
User defaults may be specified ...
@deffn {} GNU-Debug
@deffn defaults GNU-Debug
An array of strings that lists debug levels to be used within the
program. These debug levels are merged with any which were set on the command
line or added programmatically to the set given by the
[NSProcessInfo-debugSet] method.
@end deffn
@deffn {} GSLogSyslog
@deffn defaults GSLogSyslog
Setting the user default GSLogSyslog to YES will cause log/debug output to be
sent to the syslog facility (on systems which support it), rather than to the
standard error stream. This is useful in environments where stderr has been
re-used strangely for some reason.
@end deffn
@deffn {} GSMacOSXCompatible
@deffn defaults GSMacOSXCompatible
Setting the user default GSMacOSXCompatible to YES will cause MacOS compatible
behavior to be the default at runtime. This default may however be overridden
to provide more fine grained control of system behavior.
@end deffn
@deffn {} GSOldStyleGeometry
@deffn defaults GSOldStyleGeometry
Specifies whether the functions for producing strings describing geometric
structures (NSStringFromPoint(), NSStringFromSize(), and NSStringFromRect())
should produce strings conforming to the OpenStep specification or to MacOS-X
@ -80,7 +80,7 @@ behavior. The functions for parsing those strings should cope with both cases
anyway.
@end deffn
@deffn {} GSSOCKS
@deffn defaults GSSOCKS
May be used to specify a default SOCKS5 server (and optionally a port
separated from the server by a colon) to which tcp/ip connections made using
the NSFileHandle extension methods should be directed.
@ -88,11 +88,11 @@ the NSFileHandle extension methods should be directed.
This default overrides the SOCKS5_SERVER and SOCKS_SERVER environment variables.
@end deffn
@deffn {} {Local Time Zone}
@deffn defaults {Local Time Zone}
Used to specify the name of the timezone to be used by the NSTimeZone class.
@end deffn
@deffn {} NSWriteOldStylePropertyLists
@deffn defaults NSWriteOldStylePropertyLists
Specifies whether text property-list output should be in the default MacOS-X
format (XML), or in the more human readable (but less powerful) original
OpenStep format.
@ -108,7 +108,7 @@ containing either a backslash or an illegal character will be written
differently to the same string on MacOS-X.
@end deffn
@deffn {} NSLanguages
@deffn defaults NSLanguages
An array of strings that lists the users prefered languages, in order or
preference. If not found the default is just English.
@end deffn

View file

@ -177,9 +177,7 @@ at the server.
/* Get the proxy */
id proxy = [NSConnection
rootProxyForConnectionWithRegisteredName:
@i{registeredServerName}
host: @i{hostName}];
rootProxyForConnectionWithRegisteredName: @i{registeredServerName}];
/* The rest of your program code goes here */
@ -189,8 +187,81 @@ at the server.
The code that obtains the proxy automatically creates an NSConnection
object for managing the inter-process communication, so there is no need
to create one yourself. If the @i{hostName} in this statement is 'nil',
then only the local host will be searched to find the
to create one yourself.
The above example serves to establish a secure connection between processes
which are run by the same person and are both on the same host.
If you want your connections to work between different host or between
programs being run by different people, you do this slightly differently,
telling the system that you want to use 'socket' ports, which make TCP/IP
connections over the network.
@example
int main(void)
@{
CREATE_AUTORELEASE_POOL(pool);
/*
* Create a new socket port for your connection.
*/
NSSocketPort *port = [NSSocketPort port];
/*
* Create a connection using the socket port.
*/
NSConnection *connXion = [NSConnection connectionWithReceivePort: port
sendPort: port];
/*
* Set the responding server object as
* the root object for this connection.
*/
[connXion setRootObject: telephoneDirectory];
/*
* Try to register a name for the NSConnection,
* and report an error if this is not possible.
*/
if ([connXion registerName: @@"DirectoryServer"
withNameServer: [NSSocketPortNameServer sharedInstance]] == NO)
@{
NSLog(@@"Unable to register as 'DirectoryServer'");
NSLog(@@"Perhaps another copy of this program is running?");
exit(1);
@}
[[NSRunLoop currentRunLoop] run];
RELEASE(pool);
return 0;
@}
@end example
In the above example, we specify that the socket port name server is used
to register the name for the connection ... this makes the connection name
visible to processes running on other machines.
The client side code is as follows
@example
/* Create an instance of the NSAutoreleasePool class */
CREATE_AUTORELEASE_POOL(pool);
/* Get the proxy */
id proxy = [NSConnection
rootProxyForConnectionWithRegisteredName: @i{registeredServerName}
host: @i{hostName}
usingNameServer: [NSSocketPortNameServer sharedInstance]];
/* The rest of your program code goes here */
/* Release the pool */
RELEASE(pool);
@end example
If the @i{hostName} in this statement is 'nil'
or an empty string, then only the local host will be searched to find the
@i{registeredServerName}. If @i{hostName} is "*", then all hosts on the
local network will be searched.
@ -199,9 +270,9 @@ any host on the network would be:
@example
id proxyForDirectory = [NSConnection
rootProxyForConnectionWithRegisteredName:
@@"DirectoryServer"
host: "*"];
rootProxyForConnectionWithRegisteredName: @@"DirectoryServer"
host: @@"*"
usingNameServer: [NSSocketPortNameServer sharedInstance]];
@end example
With this additional line of code in the client program, you can now
@ -252,9 +323,8 @@ In the telephone directory example, if the declared protocol was
/* Cast the returned proxy object to the extended type */
proxyForDirectory = (id<TelephoneDirectory>) [NSConnection
rootProxyForConnectionWithRegisteredName:
@@"DirectoryServer"
host: "*"];
rootProxyForConnectionWithRegisteredName: @@"DirectoryServer"
usingNameServer: [NSSocketPortNameServer sharedInstance]];
@end example
Since class names and protocol names do not share the same 'address
space' in a process, the declared protocol and the class of the
@ -325,15 +395,15 @@ int main(int argc, char *argv[])
/* Acquire the remote reference. */
proxyForDirectory = (id<TelephoneDirectory>) [NSConnection
rootProxyForConnectionWithRegisteredName:
@@"DirectoryServer"
host: @@"*"];
rootProxyForConnectionWithRegisteredName: @@"DirectoryServer"
host: @@"*"
usingNameServer: [NSSocketPortNameServer sharedInstance]];
if(proxyForDirectory == nil)
if (proxyForDirectory == nil)
printf("\n** WARNING: NO CONNECTION TO SERVER **\n");
else printf("\n** Connected to server **\n");
if(argc == 2) // Command line name entered
if (argc == 2) // Command line name entered
@{
returnedNumber = (char *)[proxyForDirectory teleNumber: personName];
printf("\n%s%s%s%s%s\n", "** (In client) The telephone number for ",
@ -361,7 +431,14 @@ you display a "No Server Connection" warning at the client?
@cindex Distributed Objects Name Server, GNUstep
You might wonder how the client finds the server, or, rather, how it finds the
directory the server lists itself in. In fact an auxiliary process will
directory the server lists itself in.
For the default connection type (a connection only usable on the local host
between processes run by the same person), a private file (or the registry
on ms-windows) is used to hold the name registration information.
For connections using socket ports to communicate between hosts,
an auxiliary process will
automatically be started on each machine, if it isn't running already, that
handles this, allowing the server to register and the client to send a query
behind the scenes. This @i{GNUstep Distributed Objects Name Server} runs as
@ -539,9 +616,10 @@ int main(int argc, char **argv)
* is '*', we can connect to any server on the local network.
*/
server = (id<GameServer>)[NSConnection
rootProxyForConnectionWithRegisteredName:
@@"JoinGame" host: @@"*"];
if(server == nil)
rootProxyForConnectionWithRegisteredName: @@"JoinGame"
host: @@"*"
usingNameServer: [NSSocketPortNameServer sharedInstance]];
if (server == nil)
@{
printf("\n** No Connection to GameServer **\n");
result = 1;
@ -738,7 +816,7 @@ player information).
[client clientMessage: aMessage];
reply = [client clientReply];
if(reply == 'y' || reply == 'Y')
if (reply == 'y' || reply == 'Y')
[hasWon setObject: @@"YES" forKey: name]; // They win.
else [hasWon setObject: @@"NO" forKey: name]; // They loose.
return 0;
@ -807,12 +885,15 @@ int main(int argc, char** argv)
@{
CREATE_AUTORELEASE_POOL(pool);
GameServer *server;
NSSocketPort *port;
NSConnection *connXion;
server = AUTORELEASE([GameServer new]);
connXion = [NSConnection defaultConnection];
port = [NSSocketPort port];
connXion = [NSConnection connectionWithReceivePort: port sendPort: port];
[connXion setRootObject: server];
[connXion registerName: @@"JoinGame"];
[connXion registerName: @@"JoinGame"
withNameServer: [NSSocketPortNameServer sharedInstance]];
[[NSRunLoop currentRunLoop] run];
RELEASE(pool);
return 0;

View file

@ -11,6 +11,15 @@ The currently released version of the library is
See the @url{ReleaseNotes.html} document for more information.
@end ifclear
@section Noteworthy changes in version @samp{1.14.0}
Many portability (particularly for ms-windows) and MacOS-X compatibility fixes.
New MacOS-X classes and incorporation of NSAffineTransform and NSSpellServer
which were formerly in the gui library.
Improved performance of amssively multithreaded programs.
@ifclear ANNOUNCE-ONLY
@section Noteworthy changes in version @samp{1.13.1}
Various minor bugs and MacOS-X incompatibilities fixed.
@ -20,8 +29,6 @@ One fix for a serious (crash) bug when initialising the bundles
system in an application which has a lot of frameworks linked to it.
See the release notes for more details.
@ifclear ANNOUNCE-ONLY
@section Noteworthy changes in version @samp{1.13.0}
Several sets of classes have been added for dealing with urls and

View file

@ -19,10 +19,20 @@
#
# You should have received a copy of the GNU General Public
# License along with this library; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02111 USA.
#
ifeq ($(GNUSTEP_MAKEFILES),)
GNUSTEP_MAKEFILES := $(shell gnustep-config --variable=GNUSTEP_MAKEFILES 2>/dev/null)
endif
ifeq ($(GNUSTEP_MAKEFILES),)
$(error You need to set GNUSTEP_MAKEFILES before compiling!)
endif
GNUSTEP_LOCAL_ADDITIONAL_MAKEFILES = ../base.make
include $(GNUSTEP_MAKEFILES)/common.make
# The tools to be created

View file

@ -23,19 +23,21 @@
# Boston, MA 02111 USA
#
# This usually happens when you source GNUstep.sh, then run ./configure,
# then log out, then log in again and try to compile
ifeq ($(GNUSTEP_MAKEFILES),)
$(error You need to run the GNUstep configuration script before compiling!)
GNUSTEP_MAKEFILES := $(shell gnustep-config --variable=GNUSTEP_MAKEFILES 2>/dev/null)
endif
ifeq ($(GNUSTEP_MAKEFILES),)
$(error You need to set GNUSTEP_MAKEFILES before compiling!)
endif
# Install into the system root by default
GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT)
# FIXME: would it work if you want to install it into local
GNUSTEP_INSTALLATION_DOMAIN = SYSTEM
RPM_DISABLE_RELOCATABLE=YES
PACKAGE_NEEDS_CONFIGURE = YES
CVS_MODULE_NAME = base
SVN_MODULE_NAME = base
SVN_BASE_URL = svn+ssh://svn.gna.org/svn/gnustep/libs
@ -55,14 +57,12 @@ PACKAGE_NAME = gnustep-base
#
SUBPROJECTS = Source
ifneq ($(GNUSTEP_TARGET_OS), mingw32)
SUBPROJECTS += SSL
SUBPROJECTS += SSL
endif
SUBPROJECTS += Tools NSTimeZones Resources
-include Makefile.preamble
-include GNUmakefile.local
include $(GNUSTEP_MAKEFILES)/aggregate.make
-include Makefile.postamble

View file

@ -18,7 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __DistributedObjects_h

View file

@ -19,7 +19,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: Additions/GCObject.m
AutogsdocSource: Additions/GCArray.m
@ -39,6 +40,10 @@
#include <Foundation/Foundation.h>
#endif
#if defined(__cplusplus)
extern "C" {
#endif
@class GCObject;
@ -110,4 +115,8 @@ typedef struct {
}
@end
#if defined(__cplusplus)
}
#endif
#endif /* __INCLUDED_GCOBJECT_H */

View file

@ -18,7 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#ifndef __GNUSTEP_GNUSTEP_H_INCLUDED_
@ -74,6 +75,9 @@ NSAutoreleasePool *(X) = [NSAutoreleasePool new]
#define NSLocalizedStaticString(X, Y) X
#include <GNUstepBase/GSVersionMacros.h>
#endif /* GNUSTEP */
#endif /* __GNUSTEP_GNUSTEP_H_INCLUDED_ */

View file

@ -28,6 +28,7 @@
#ifndef INCLUDED_GS_CATEGORIES_H
#define INCLUDED_GS_CATEGORIES_H
#include "GNUstepBase/GSVersionMacros.h"
/* The following ifndef prevents the categories declared in this file being
* seen in GNUstep code. This is necessary because those category
@ -49,6 +50,12 @@
#include "GNUstepBase/GSObjCRuntime.h"
#include "GNUstepBase/GNUstep.h"
#if defined(__cplusplus)
extern "C" {
#endif
#if OS_API_VERSION(GS_API_NONE,GS_API_LATEST)
@class NSMutableSet;
@ -103,6 +110,20 @@
#define NSDebugMLog(format, args...)
#endif /* DEBUG */
#define GSOnceFLog(format, args...) \
do { static BOOL beenHere = NO; if (beenHere == NO) {\
NSString *fmt = GSDebugFunctionMsg( \
__PRETTY_FUNCTION__, __FILE__, __LINE__, format); \
beenHere = YES; \
NSLog(fmt , ## args); }} while (0)
#define GSOnceMLog(format, args...) \
do { static BOOL beenHere = NO; if (beenHere == NO) {\
NSString *fmt = GSDebugMethodMsg( \
self, _cmd, __FILE__, __LINE__, format); \
beenHere = YES; \
NSLog(fmt , ## args); }} while (0)
#ifdef GSWARN
#define NSWarnLog(format, args...) \
do { if (GSDebugSet(@"NoWarn") == NO) { \
@ -331,9 +352,6 @@ GS_EXPORT void NSDecimalFromComponents(NSDecimal *result,
GS_EXPORT BOOL GSDebugSet(NSString *level);
GS_EXPORT NSString *GetEncodingName(NSStringEncoding availableEncodingValue);
GS_EXPORT NSString *GSEncodingName(NSStringEncoding availableEncodingValue);
GS_EXPORT NSThread *GSCurrentThread(void);
GS_EXPORT NSMutableDictionary *GSCurrentThreadDictionary(void);
@ -342,6 +360,12 @@ GS_EXPORT NSString *GSDebugMethodMsg(id obj, SEL sel, const char *file,
GS_EXPORT NSString *GSDebugFunctionMsg(const char *func, const char *file,
int line, NSString *fmt);
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */
#if defined(__cplusplus)
}
#endif
#endif /* GNUSTEP */
#endif /* INCLUDED_GS_CATEGORIES_H */

View file

@ -22,7 +22,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef included_GSConfig_h

View file

@ -18,7 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __GSFileHandle_h_GNUSTEP_BASE_INCLUDE
@ -29,7 +30,7 @@
#include <Foundation/NSDictionary.h>
#include <Foundation/NSRunLoop.h>
#include <GSConfig.h>
#include <GNUstepBase/GSConfig.h>
#if USE_ZLIB
#include <zlib.h>

View file

@ -18,26 +18,39 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: Additions/GSFunctions.m
*/
#ifndef __GSFunctions_h_GNUSTEP_BASE_INCLUDE
#define __GSFunctions_h_GNUSTEP_BASE_INCLUDE
#include "GNUstepBase/GSVersionMacros.h"
#include "GNUstepBase/preface.h"
#include "GNUstepBase/GSObjCRuntime.h"
#include "GNUstepBase/GNUstep.h"
#warning "deprecated header ... will be removed in a later release"
#if defined(__cplusplus)
extern "C" {
#endif
#if GS_API_VERSION(GS_API_NONE,011500)
@class NSArray;
@class NSString;
/**
* Try to locate file/directory (aName).(anExtension) in paths.
* Will return the first found or nil if nothing is found.
*/
GS_EXPORT NSString *GSFindNamedFile(NSArray *paths, NSString *aName,
NSString *anExtension);
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSPathUtilities_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,11 +18,20 @@
*
* 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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA. */
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02111 USA. */
#import <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(GS_API_NONE,GS_API_LATEST)
#include <Foundation/NSObject.h>
#include <Foundation/NSZone.h>
#if defined(__cplusplus)
extern "C" {
#endif
/* To easily un-inline functions for debugging */
#ifndef INLINE
#define INLINE inline
@ -96,6 +105,8 @@
#define GSI_ARRAY_TYPES GSUNION_ALL
#endif
#ifndef GSIArrayItem
/*
* Set up the name of the union to store array elements.
*/
@ -128,6 +139,8 @@
*/
#include <GNUstepBase/GSUnion.h>
#endif /* #ifndef GSIArrayItem */
struct _GSIArray {
GSIArrayItem *ptr;
unsigned count;
@ -286,7 +299,7 @@ GSIArrayAddItemNoRetain(GSIArray array, GSIArrayItem item)
* if it is greater, and NSOrderedSame if it is equal.
*/
static INLINE unsigned
GSIArrayInsertionPosition(GSIArray array, GSIArrayItem item,
GSIArraySearch(GSIArray array, GSIArrayItem item,
NSComparisonResult (*sorter)(GSIArrayItem, GSIArrayItem))
{
unsigned int upper = array->count;
@ -295,6 +308,7 @@ GSIArrayInsertionPosition(GSIArray array, GSIArrayItem item,
/*
* Binary search for an item equal to the one to be inserted.
* Only for sorted array !
*/
for (index = upper/2; upper != lower; index = (upper+lower)/2)
{
@ -314,6 +328,16 @@ GSIArrayInsertionPosition(GSIArray array, GSIArrayItem item,
break;
}
}
return index;
}
static INLINE unsigned
GSIArrayInsertionPosition(GSIArray array, GSIArrayItem item,
NSComparisonResult (*sorter)(GSIArrayItem, GSIArrayItem))
{
unsigned int index;
index = GSIArraySearch(array,item,sorter);
/*
* Now skip past any equal items so the insertion point is AFTER any
* items that are equal to the new one.
@ -544,3 +568,10 @@ GSIArrayCopyWithZone(GSIArray array, NSZone *zone)
}
return new;
}
#if defined(__cplusplus)
}
#endif
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */

View file

@ -20,11 +20,20 @@
*
* 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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA. */
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02111 USA. */
#import <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(GS_API_NONE,GS_API_LATEST)
#include <Foundation/NSObject.h>
#include <Foundation/NSZone.h>
#if defined(__cplusplus)
extern "C" {
#endif
/* To easily un-inline functions for debugging */
#ifndef INLINE
#define INLINE inline
@ -919,3 +928,9 @@ GSIMapInitWithZoneAndCapacity(GSIMapTable map, NSZone *zone, size_t capacity)
GSIMapMoreNodes(map, capacity);
}
#if defined(__cplusplus)
}
#endif
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */

View file

@ -19,7 +19,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __GSLocale_H_
@ -32,6 +33,10 @@
#endif
#include "GSObjCRuntime.h"
#if defined(__cplusplus)
extern "C" {
#endif
@class NSDictionary;
GS_EXPORT const char *GSSetLocaleC(int category, const char *loc);
@ -41,5 +46,9 @@ GS_EXPORT NSDictionary *GSDomainFromDefaultLocale(void);
GS_EXPORT NSString *GSLanguageFromLocale(NSString *locale);
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -18,7 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: Additions/GSLock.m
@ -33,6 +34,10 @@
#include <Foundation/Foundation.h>
#endif
#if defined(__cplusplus)
extern "C" {
#endif
@class NSNotification;
@interface GSLazyLock : NSLock
@ -49,6 +54,8 @@
- (void) _becomeThreaded: (NSNotification*)n;
@end
#if defined(__cplusplus)
}
#endif
#endif /* INCLUDED_GS_LOCK_H */

View file

@ -26,8 +26,11 @@
AutogsdocSource: Additions/GSMime.m
*/
#ifndef __GSMIME_H__
#define __GSMIME_H__
#ifndef __GSMime_h_GNUSTEP_BASE_INCLUDE
#define __GSMime_h_GNUSTEP_BASE_INCLUDE
#include <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(GS_API_NONE,GS_API_LATEST)
#ifdef NeXT_Foundation_LIBRARY
#include <Foundation/Foundation.h>
@ -36,6 +39,10 @@
#include <Foundation/NSString.h>
#endif
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray;
@class NSMutableArray;
@class NSData;
@ -225,4 +232,10 @@
- (void) setIsHttp;
@end
#if defined(__cplusplus)
}
#endif
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */
#endif /* __GSMime_h_GNUSTEP_BASE_INCLUDE */

View file

@ -20,7 +20,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: Additions/GSObjCRuntime.m
@ -28,6 +29,7 @@
#ifndef __GSObjCRuntime_h_GNUSTEP_BASE_INCLUDE
#define __GSObjCRuntime_h_GNUSTEP_BASE_INCLUDE
#include <GNUstepBase/GSVersionMacros.h>
#include <objc/objc.h>
#include <objc/objc-api.h>
@ -672,11 +674,6 @@ GSAutoreleasedBuffer(unsigned size);
GS_EXPORT void
GSAllocateMutexAt(objc_mutex_t *request);
/** Returns a system error message on a variety of systems
*/
GS_EXPORT const char *
GSLastErrorStr(long error_id);
/**
* <p>Prints a message to fptr using the format string provided and any
* additional arguments. The format string is interpreted as by
@ -696,107 +693,18 @@ GSPrintf (FILE *fptr, NSString *format, ...);
#ifndef NO_DEPRECATED
GS_EXPORT BOOL
GSFindInstanceVariable(id obj, const char *name,
const char **type,
unsigned int *size,
int *offset) GS_ATTRIB_DEPRECATED;
GS_EXPORT void
GSGetVariable(id obj, int offset, unsigned int size,
void *data) GS_ATTRIB_DEPRECATED;
GS_EXPORT void
GSSetVariable(id obj, int offset, unsigned int size,
const void *data) GS_ATTRIB_DEPRECATED;
GS_EXPORT id
GSGetValue(NSObject *self, NSString *key, SEL sel,
const char *type,
unsigned size,
int offset) GS_ATTRIB_DEPRECATED;
GS_EXPORT void
GSSetValue(NSObject *self, NSString *key, id val, SEL sel,
const char *type,
unsigned size,
int offset) GS_ATTRIB_DEPRECATED;
GS_EXPORT NSArray *
GSObjCAllSubclassesOfClass(Class cls);
GS_EXPORT NSArray *
GSObjCDirectSubclassesOfClass(Class cls);
/** ## deprecated ##
*/
GS_STATIC_INLINE const char*
GSObjCName(Class cls) GS_ATTRIB_DEPRECATED;
GS_STATIC_INLINE const char*
GSObjCName(Class cls)
{
return class_get_class_name(cls);
}
#if GS_API_VERSION(GS_API_ANY,011500)
/** ## deprecated ##
*/
GS_STATIC_INLINE const char*
GSObjCSelectorName(SEL sel) GS_ATTRIB_DEPRECATED;
GS_STATIC_INLINE const char*
GSObjCSelectorName(SEL sel)
{
if (sel == 0)
return 0;
return sel_get_name(sel);
}
GS_EXPORT const char *
GSLastErrorStr(long error_id) GS_ATTRIB_DEPRECATED;
/** ## deprecated ##
*/
GS_STATIC_INLINE const char*
GSObjCSelectorTypes(SEL sel) GS_ATTRIB_DEPRECATED;
GS_STATIC_INLINE const char*
GSObjCSelectorTypes(SEL sel)
{
return sel_get_type(sel);
}
GS_STATIC_INLINE GSMethod
GSGetInstanceMethod(Class cls, SEL sel) GS_ATTRIB_DEPRECATED;
GS_STATIC_INLINE GSMethod
GSGetInstanceMethod(Class cls, SEL sel)
{
return GSGetMethod(cls, sel, YES, YES);
}
GS_STATIC_INLINE GSMethod
GSGetClassMethod(Class cls, SEL sel) GS_ATTRIB_DEPRECATED;
GS_STATIC_INLINE GSMethod
GSGetClassMethod(Class cls, SEL sel)
{
return GSGetMethod(cls, sel, NO, YES);
}
GS_STATIC_INLINE GSMethod
GSGetInstanceMethodNotInherited(Class cls,
SEL sel) GS_ATTRIB_DEPRECATED;
GS_STATIC_INLINE GSMethod
GSGetInstanceMethodNotInherited(Class cls, SEL sel)
{
return GSGetMethod(cls, sel, YES, NO);
}
GS_STATIC_INLINE GSMethod
GSGetClassMethodNotInherited(Class cls, SEL sel) GS_ATTRIB_DEPRECATED;
GS_STATIC_INLINE GSMethod
GSGetClassMethodNotInherited(Class cls, SEL sel)
{
return GSGetMethod(cls, sel, NO, NO);
}
#endif /* NO_DEPRECATED */
#endif

View file

@ -20,7 +20,8 @@
*
* 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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA. */
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02111 USA. */
/*
* Definitions for bitmap mask of types of element in union.

View file

@ -0,0 +1,175 @@
/* GSVersionMacros.h - macros for managing API versioning
Copyright (C) 2006 Free Software Foundation, Inc.
Written by: Richard Frith-Macdonald <rfm@gnu.org>
Date: Oct, October 2006
This file is part of GNUstep.
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., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#ifndef __GNUSTEP_GSVERSIONMACROS_H_INCLUDED_
#define __GNUSTEP_GSVERSIONMACROS_H_INCLUDED_
/*
* Check consistency of definitions for system compatibility.
*/
#if defined(STRICT_OPENSTEP)
#define GS_OPENSTEP_V 010000
#define NO_GNUSTEP 1
#elif defined(STRICT_MACOS_X)
#define GS_OPENSTEP_V 100000
#define NO_GNUSTEP 1
#else
#undef NO_GNUSTEP
#endif
/*
* For MacOS-X compatibility, we define the MacOS-X version constants and
* we allow MAC_OS_X_VERSION_MAX_ALLOWED instead of GS_OPENSTEP_V
*/
#ifndef MAC_OS_X_VERSION_10_2
#define MAC_OS_X_VERSION_10_2 100200
#define MAC_OS_X_VERSION_10_3 100300
#define MAC_OS_X_VERSION_10_4 100400
#endif /* MAC_OS_X_VERSION_10_2 */
#ifndef GS_OPENSTEP_V
#ifdef MAC_OS_X_VERSION_MAX_ALLOWED
#define GS_OPENSTEP_V MAC_OS_X_VERSION_MAX_ALLOWED
#endif /* MAC_OS_X_VERSION_MAX_ALLOWED */
#endif /* GS_OPENSTEP_V */
/*
* NB. The version values below must be integers ... by convention these are
* made up of two digits each for major, minor and subminor version numbers
* (ie each is in the range 00 to 99 though a leading zero in the major
* number is not permitted).
* So for a MacOS-X 10.3.9 release the version number would be 100309
*
* You may define GS_GNUSTEP_V or GS_OPENSTEP_V to ensure that your
* program only 'sees' the specified varsion of the API.
*/
/**
* <p>Macro to check a defined GNUstep version number (GS_GNUSTEP_V) against
* the supplied arguments. Returns true if no GNUstep version is specified,
* or if ADD &lt;= version &lt; REM, where ADD is the version
* number at which a feature guarded by the macro was introduced and
* REM is the version number at which it was removed.
* </p>
* <p>The version number arguments are six digit integers where the first
* two digits are the major version number, the second two are the minor
* version number and the last two are the subminor number (all left padded
* with a zero where necessary). However, for convenience you can also
* use any of several predefined constants ...
* <ref type="macro" id="GS_API_NONE">GS_API_NONE</ref>,
* <ref type="macro" id="GS_API_LATEST">GS_API_LATEST</ref>,
* <ref type="macro" id="GS_API_OSSPEC">GS_API_OSSPEC</ref>,
* <ref type="macro" id="GS_API_OPENSTEP">GS_API_OPENSTEP</ref>,
* <ref type="macro" id="GS_API_MACOSX">GS_API_MACOSX</ref>
* </p>
* <p>Also see <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* </p>
* <p>NB. If you are changing the API (eg adding a new feature) you need
* to control the visibility io the new header file code using<br />
* <code>#if GS_API_VERSION(ADD,GS_API_LATEST)</code><br />
* where <code>ADD</code> is the version number of the next minor
* release after the most recent one.<br />
* As a general principle you should <em>not</em> change the API with
* changing subminor version numbers ... as that tends to confuse
* people (though Apple has sometimes done it).
* </p>
*/
#define GS_API_VERSION(ADD,REM) \
(!defined(GS_GNUSTEP_V) || (GS_GNUSTEP_V >= ADD && GS_GNUSTEP_V < REM))
/**
* <p>Macro to check a defined OpenStep/OPENSTEP/MacOS-X version against the
* supplied arguments. Returns true if no version is specified, or if
* ADD &lt;= version &lt; REM, where ADD is the version
* number at which a feature guarded by the macro was introduced and
* REM is the version number at which it was removed.
* </p>
* <p>The version number arguments are six digit integers where the first
* two digits are the major version number, the second two are the minor
* version number and the last two are the subminor number (all left padded
* with a zero where necessary). However, for convenience you can also
* use any of several predefined constants ...
* <ref type="macro" id="GS_API_NONE">GS_API_NONE</ref>,
* <ref type="macro" id="GS_API_LATEST">GS_API_LATEST</ref>,
* <ref type="macro" id="GS_API_OSSPEC">GS_API_OSSPEC</ref>,
* <ref type="macro" id="GS_API_OPENSTEP">GS_API_OPENSTEP</ref>,
* <ref type="macro" id="GS_API_MACOSX">GS_API_MACOSX</ref>
* </p>
* <p>Also see <ref type="macro" id="GS_API_VERSION">GS_API_VERSION</ref>
* </p>
*/
#define OS_API_VERSION(ADD,REM) \
(!defined(GS_OPENSTEP_V) || (GS_OPENSTEP_V >= ADD && GS_OPENSTEP_V < REM))
/**
* A constant which is the lowest possible version number (0) so that
* when used as the removal version (second argument of the GS_API_VERSION
* or OS_API_VERSION macro) represents a feature which is not present in
* any version.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_NONE, GS_API_NONE)<br />
* denotes code not present in OpenStep/OPENSTEP/MacOS-X
*/
#define GS_API_NONE 0
/**
* A constant to represent a feature which is still present in the latest
* version. This is the highest possible version number.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_MACOSX, GS_API_LATEST)<br />
* denotes code present from the initial MacOS-X version onwards.
*/
#define GS_API_LATEST 999999
/**
* The version number of the initial OpenStep specification.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_OSSPEC, GS_API_LATEST)<br />
* denotes code present from the OpenStep specification onwards.
*/
#define GS_API_OSSPEC 10000
/**
* The version number of the first OPENSTEP implementation.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_OPENSTEP, GS_API_LATEST)<br />
* denotes code present from the initial OPENSTEP version onwards.
*/
#define GS_API_OPENSTEP 40000
/**
* The version number of the first MacOS-X implementation.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_MACOSX, GS_API_LATEST)<br />
* denotes code present from the initial MacOS-X version onwards.
*/
#define GS_API_MACOSX 100000
#endif /* __GNUSTEP_GSVERSIONMACROS_H_INCLUDED_ */

View file

@ -25,14 +25,18 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: Additions/GSXML.m
*/
#ifndef __GSXML_H__
#define __GSXML_H__
#ifndef __GSXML_h_GNUSTEP_BASE_INCLUDE
#define __GSXML_h_GNUSTEP_BASE_INCLUDE
#include <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(GS_API_NONE,GS_API_LATEST)
#ifndef NeXT_Foundation_LIBRARY
#include <Foundation/NSObject.h>
@ -42,8 +46,9 @@
#include <Foundation/Foundation.h>
#endif
#ifndef STRICT_MACOS_X
#ifndef STRICT_OPENSTEP
#if defined(__cplusplus)
extern "C" {
#endif
@class GSXMLAttribute;
@class GSXMLDocument;
@ -739,9 +744,11 @@
- (void) completedXMLRPC: (GSXMLRPC*)sender;
@end
#if defined(__cplusplus)
}
#endif
#endif /* STRICT_MACOS_X */
#endif /* STRICT_OPENSTEP */
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */
#endif /* __GSXML_H__ */
#endif /* __GSXML_h_GNUSTEP_BASE_INCLUDE */

View file

@ -31,28 +31,31 @@
#ifndef __Unicode_h_OBJECTS_INCLUDE
#define __Unicode_h_OBJECTS_INCLUDE
#include <GNUstepBase/GSVersionMacros.h>
#include <GNUstepBase/GSObjCRuntime.h>
#include <Foundation/NSString.h> /* For string encodings */
#import <Foundation/NSString.h> /* For standard string encodings */
/*
* Private API used internally by NSString etc.
*/
#ifndef NO_GNUSTEP
#include "GSObjCRuntime.h"
#if OS_API_VERSION(GS_API_NONE,GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
GS_EXPORT NSStringEncoding *GetAvailableEncodings(void);
GS_EXPORT NSStringEncoding GetDefEncoding(void);
#if GS_API_VERSION(GS_API_NONE,011500)
/* Deprecated functions */
GS_EXPORT NSStringEncoding GSEncodingFromLocale(const char *clocale);
GS_EXPORT NSStringEncoding GSEncodingForRegistry(NSString *registry,
NSString *encoding);
GS_EXPORT NSString* GSEncodingName(NSStringEncoding encoding);
GS_EXPORT unichar uni_tolower(unichar ch);
GS_EXPORT unichar uni_toupper(unichar ch);
GS_EXPORT unsigned char uni_cop(unichar u);
GS_EXPORT BOOL uni_isnonsp(unichar u);
GS_EXPORT unichar *uni_is_decomp(unichar u);
GS_EXPORT unsigned GSUnicode(const unichar *chars, unsigned length,
BOOL *isASCII, BOOL *isLatin1);
#endif
/*
@ -64,8 +67,6 @@ GS_EXPORT unichar *uni_is_decomp(unichar u);
#define GSUniBOM 0x08
#define GSUniShortOk 0x10
GS_EXPORT unsigned GSUnicode(const unichar *chars, unsigned length,
BOOL *isASCII, BOOL *isLatin1);
GS_EXPORT BOOL GSFromUnicode(unsigned char **dst, unsigned int *size,
const unichar *src, unsigned int slen, NSStringEncoding enc, NSZone *zone,
unsigned int options);
@ -73,22 +74,10 @@ GS_EXPORT BOOL GSToUnicode(unichar **dst, unsigned int *size,
const unsigned char *src, unsigned int slen, NSStringEncoding enc,
NSZone *zone, unsigned int options);
/*
* The next functions are deprecated and will be removed in a future
* release. Use GSFromUnicode() and GSToUnicode() instead.
*/
GS_EXPORT NSString* GetEncodingName(NSStringEncoding encoding);
GS_EXPORT unichar chartouni(unsigned char c);
GS_EXPORT unsigned char unitochar(unichar u);
GS_EXPORT unichar encode_chartouni(unsigned char c, NSStringEncoding enc);
GS_EXPORT unsigned char encode_unitochar(unichar u, NSStringEncoding enc);
GS_EXPORT unsigned encode_unitochar_strict(unichar u, NSStringEncoding enc);
GS_EXPORT int encode_ustrtocstr(char *dst, int dl, const unichar *src, int sl,
NSStringEncoding enc, BOOL strict);
GS_EXPORT int encode_cstrtoustr(unichar *dst, int dl, const char *src, int sl,
NSStringEncoding enc);
#if defined(__cplusplus)
}
#endif
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */
#endif /* __Unicode_h_OBJECTS_INCLUDE */

View file

@ -18,7 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: Additions/behavior.m
@ -26,9 +27,16 @@
#ifndef __behavior_h_GNUSTEP_BASE_INCLUDE
#define __behavior_h_GNUSTEP_BASE_INCLUDE
#include <GNUstepBase/GSVersionMacros.h>
#include <GNUstepBase/GSObjCRuntime.h>
#if defined(__cplusplus)
extern "C" {
#endif
#if OS_API_VERSION(GS_API_NONE,GS_API_LATEST)
/* Call this method from CLASS's +initialize method to add a behavior
to CLASS. A "behavior" is like a protocol with an implementation.
@ -56,4 +64,10 @@ GS_EXPORT void behavior_class_add_methods (Class class,
/* Set to non-zero if you want debugging messages on stderr. */
GS_EXPORT void behavior_set_debug(int i);
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */
#if defined(__cplusplus)
}
#endif
#endif /* __behavior_h_GNUSTEP_BASE_INCLUDE */

View file

@ -15,14 +15,116 @@
/* Built in default value for GNUstep config file */
#undef GNUSTEP_TARGET_CONFIG_FILE
/* Built in default value for GNUstep local root */
#undef GNUSTEP_TARGET_LOCAL_ROOT
/* Built in default value for GNUstep local apps */
#undef GNUSTEP_TARGET_LOCAL_ADMIN_APPS
/* Built in default value for GNUstep network root */
#undef GNUSTEP_TARGET_NETWORK_ROOT
/* Built in default value for GNUstep local tools */
#undef GNUSTEP_TARGET_LOCAL_ADMIN_TOOLS
/* Built in default value for GNUstep system root */
#undef GNUSTEP_TARGET_SYSTEM_ROOT
/* Built in default value for GNUstep local apps */
#undef GNUSTEP_TARGET_LOCAL_APPS
/* Built in default value for GNUstep local documentation */
#undef GNUSTEP_TARGET_LOCAL_DOC
/* Built in default value for GNUstep local info documentation */
#undef GNUSTEP_TARGET_LOCAL_DOC_INFO
/* Built in default value for GNUstep local manpages documentation */
#undef GNUSTEP_TARGET_LOCAL_DOC_MAN
/* Built in default value for GNUstep local headers */
#undef GNUSTEP_TARGET_LOCAL_HEADERS
/* Built in default value for GNUstep local libraries */
#undef GNUSTEP_TARGET_LOCAL_LIBRARIES
/* Built in default value for GNUstep local library */
#undef GNUSTEP_TARGET_LOCAL_LIBRARY
/* Built in default value for GNUstep local tools */
#undef GNUSTEP_TARGET_LOCAL_TOOLS
/* Built in default value for GNUstep Local Users directory */
#undef GNUSTEP_TARGET_LOCAL_USERS_DIR
/* Built in default value for GNUstep local web apps */
#undef GNUSTEP_TARGET_LOCAL_WEB_APPS
/* Built in default value for GNUstep Makefiles */
#undef GNUSTEP_TARGET_MAKEFILES
/* Built in default value for GNUstep network apps */
#undef GNUSTEP_TARGET_NETWORK_ADMIN_APPS
/* Built in default value for GNUstep system tools */
#undef GNUSTEP_TARGET_NETWORK_ADMIN_TOOLS
/* Built in default value for GNUstep network apps */
#undef GNUSTEP_TARGET_NETWORK_APPS
/* Built in default value for GNUstep network documentation */
#undef GNUSTEP_TARGET_NETWORK_DOC
/* Built in default value for GNUstep network info documentation */
#undef GNUSTEP_TARGET_NETWORK_DOC_INFO
/* Built in default value for GNUstep network manpages documentation */
#undef GNUSTEP_TARGET_NETWORK_DOC_MAN
/* Built in default value for GNUstep network headers */
#undef GNUSTEP_TARGET_NETWORK_HEADERS
/* Built in default value for GNUstep network libraries */
#undef GNUSTEP_TARGET_NETWORK_LIBRARIES
/* Built in default value for GNUstep network library */
#undef GNUSTEP_TARGET_NETWORK_LIBRARY
/* Built in default value for GNUstep network tools */
#undef GNUSTEP_TARGET_NETWORK_TOOLS
/* Built in default value for GNUstep Network Users directory */
#undef GNUSTEP_TARGET_NETWORK_USERS_DIR
/* Built in default value for GNUstep network web apps */
#undef GNUSTEP_TARGET_NETWORK_WEB_APPS
/* Built in default value for GNUstep system apps */
#undef GNUSTEP_TARGET_SYSTEM_ADMIN_APPS
/* Built in default value for GNUstep system tools */
#undef GNUSTEP_TARGET_SYSTEM_ADMIN_TOOLS
/* Built in default value for GNUstep system apps */
#undef GNUSTEP_TARGET_SYSTEM_APPS
/* Built in default value for GNUstep system documentation */
#undef GNUSTEP_TARGET_SYSTEM_DOC
/* Built in default value for GNUstep system info documentation */
#undef GNUSTEP_TARGET_SYSTEM_DOC_INFO
/* Built in default value for GNUstep system manpages documentation */
#undef GNUSTEP_TARGET_SYSTEM_DOC_MAN
/* Built in default value for GNUstep system headers */
#undef GNUSTEP_TARGET_SYSTEM_HEADERS
/* Built in default value for GNUstep system libraries */
#undef GNUSTEP_TARGET_SYSTEM_LIBRARIES
/* Built in default value for GNUstep system library */
#undef GNUSTEP_TARGET_SYSTEM_LIBRARY
/* Built in default value for GNUstep system tools */
#undef GNUSTEP_TARGET_SYSTEM_TOOLS
/* Built in default value for GNUstep System Users directory */
#undef GNUSTEP_TARGET_SYSTEM_USERS_DIR
/* Built in default value for GNUstep web apps */
#undef GNUSTEP_TARGET_SYSTEM_WEB_APPS
/* Built in default value for GNUstep user config file */
#undef GNUSTEP_TARGET_USER_CONFIG_FILE
@ -33,6 +135,39 @@
/* Built in default value for GNUstep user directory */
#undef GNUSTEP_TARGET_USER_DIR
/* Built in default value for GNUstep user_dir admin apps */
#undef GNUSTEP_TARGET_USER_DIR_ADMIN_APPS
/* Built in default value for GNUstep user_dir tools */
#undef GNUSTEP_TARGET_USER_DIR_ADMIN_TOOLS
/* Built in default value for GNUstep user_dir apps */
#undef GNUSTEP_TARGET_USER_DIR_APPS
/* Built in default value for GNUstep user_dir documentation */
#undef GNUSTEP_TARGET_USER_DIR_DOC
/* Built in default value for GNUstep user_dir info documentation */
#undef GNUSTEP_TARGET_USER_DIR_DOC_INFO
/* Built in default value for GNUstep user_dir manpages documentation */
#undef GNUSTEP_TARGET_USER_DIR_DOC_MAN
/* Built in default value for GNUstep user_dir headers */
#undef GNUSTEP_TARGET_USER_DIR_HEADERS
/* Built in default value for GNUstep user_dir libraries */
#undef GNUSTEP_TARGET_USER_DIR_LIBRARIES
/* Built in default value for GNUstep user_dir library */
#undef GNUSTEP_TARGET_USER_DIR_LIBRARY
/* Built in default value for GNUstep user_dir tools */
#undef GNUSTEP_TARGET_USER_DIR_TOOLS
/* Built in default value for GNUstep user_dir web apps */
#undef GNUSTEP_TARGET_USER_DIR_WEB_APPS
/* Define if this constant is defined */
#undef HANDLE_LLONG_MAX
@ -55,6 +190,9 @@
/* Define if you have the dladdr function in the dl library */
#undef HAVE_DLADDR
/* Define to 1 if you have the <dns_sd.h> header file. */
#undef HAVE_DNS_SD_H
/* Define to 1 if you have the <float.h> header file. */
#undef HAVE_FLOAT_H
@ -330,6 +468,9 @@
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <sys/utsname.h> header file. */
#undef HAVE_SYS_UTSNAME_H
/* Define to 1 if you have the <sys/vfs.h> header file. */
#undef HAVE_SYS_VFS_H
@ -375,6 +516,9 @@
/* Define to 1 if you have the `vasprintf' function. */
#undef HAVE_VASPRINTF
/* Says whether the visibility attribute works */
#undef HAVE_VISIBILITY_ATTRIBUTE
/* Define to 1 if you have the `vsprintf' function. */
#undef HAVE_VSPRINTF

View file

@ -28,6 +28,10 @@
#ifndef __objc_gnu2next_h_GNUSTEP_BASE_INCLUDE
#define __objc_gnu2next_h_GNUSTEP_BASE_INCLUDE
#if defined(__cplusplus)
extern "C" {
#endif
#if NeXT_RUNTIME
#include <objc/objc-class.h>
@ -283,4 +287,8 @@ objc_error_handler objc_set_error_handler(objc_error_handler func);
#endif /* NeXT_RUNTIME */
#if defined(__cplusplus)
}
#endif
#endif /* __objc_gnu2next_h_GNUSTEP_BASE_INCLUDE */

View file

@ -98,14 +98,6 @@
#define GNUSTEP_BASE_SUBMINOR_VERSION @SUBMINOR_VERSION@
#define GNUSTEP_BASE_GCC_VERSION @GCC_VERSION@
#if 0
extern const char o_version[];
extern const char o_gcc_version[];
#if NeXT_cc
extern const char o_NeXT_cc_version[];
#endif
#endif
#define OBJC_MALLOC(VAR, TYPE, NUM) \
((VAR) = (TYPE *) objc_malloc ((unsigned)(NUM)*sizeof(TYPE)))
#define OBJC_VALLOC(VAR, TYPE, NUM) \

View file

@ -27,93 +27,100 @@
#ifndef __Foundation_h_GNUSTEP_BASE_INCLUDE
#define __Foundation_h_GNUSTEP_BASE_INCLUDE
#include <Foundation/NSObjCRuntime.h>
#include <GSConfig.h>
#include <Foundation/NSDebug.h>
#include <Foundation/NSObject.h>
#import <GNUstepBase/GSVersionMacros.h>
#import <objc/objc.h>
#include <Foundation/NSArchiver.h>
#include <Foundation/NSArray.h>
#include <Foundation/NSAttributedString.h>
#include <Foundation/NSAutoreleasePool.h>
#include <Foundation/NSBundle.h>
#include <Foundation/NSByteOrder.h>
#include <Foundation/NSCalendarDate.h>
#include <Foundation/NSCharacterSet.h>
#include <Foundation/NSClassDescription.h>
#include <Foundation/NSCoder.h>
#include <Foundation/NSComparisonPredicate.h>
#include <Foundation/NSCompoundPredicate.h>
#include <Foundation/NSConnection.h>
#include <Foundation/NSData.h>
#include <Foundation/NSDateFormatter.h>
#include <Foundation/NSDate.h>
#include <Foundation/NSDecimalNumber.h>
#include <Foundation/NSDictionary.h>
#include <Foundation/NSDistantObject.h>
#include <Foundation/NSDistributedLock.h>
#include <Foundation/NSDistributedNotificationCenter.h>
#include <Foundation/NSEnumerator.h>
#include <Foundation/NSError.h>
#include <Foundation/NSException.h>
#include <Foundation/NSExpression.h>
#include <Foundation/NSFileHandle.h>
#include <Foundation/NSFileManager.h>
#include <Foundation/NSFormatter.h>
#include <Foundation/NSGeometry.h>
#include <Foundation/NSHashTable.h>
#include <Foundation/NSHost.h>
#include <Foundation/NSHTTPCookie.h>
#include <Foundation/NSHTTPCookieStorage.h>
#include <Foundation/NSIndexPath.h>
#include <Foundation/NSIndexSet.h>
#include <Foundation/NSInvocation.h>
#include <Foundation/NSKeyedArchiver.h>
#include <Foundation/NSKeyValueCoding.h>
#include <Foundation/NSLock.h>
#include <Foundation/NSMapTable.h>
#include <Foundation/NSMethodSignature.h>
#include <Foundation/NSNotification.h>
#include <Foundation/NSNotificationQueue.h>
#include <Foundation/NSNull.h>
#include <Foundation/NSNumberFormatter.h>
#include <Foundation/NSPathUtilities.h>
#include <Foundation/NSPortCoder.h>
#include <Foundation/NSPortMessage.h>
#include <Foundation/NSPortNameServer.h>
#include <Foundation/NSPredicate.h>
#include <Foundation/NSProcessInfo.h>
#include <Foundation/NSProtocolChecker.h>
#include <Foundation/NSProxy.h>
#include <Foundation/NSRange.h>
#include <Foundation/NSRunLoop.h>
#include <Foundation/NSScanner.h>
#include <Foundation/NSSerialization.h>
#include <Foundation/NSSet.h>
#include <Foundation/NSSortDescriptor.h>
#include <Foundation/NSStream.h>
#include <Foundation/NSString.h>
#include <Foundation/NSTask.h>
#include <Foundation/NSThread.h>
#include <Foundation/NSTimer.h>
#include <Foundation/NSTimeZone.h>
#include <Foundation/NSUndoManager.h>
#include <Foundation/NSURLAuthenticationChallenge.h>
#include <Foundation/NSURLCache.h>
#include <Foundation/NSURLConnection.h>
#include <Foundation/NSURLCredential.h>
#include <Foundation/NSURLCredentialStorage.h>
#include <Foundation/NSURLDownload.h>
#include <Foundation/NSURLError.h>
#include <Foundation/NSURL.h>
#include <Foundation/NSURLHandle.h>
#include <Foundation/NSURLProtectionSpace.h>
#include <Foundation/NSURLProtocol.h>
#include <Foundation/NSURLRequest.h>
#include <Foundation/NSURLResponse.h>
#include <Foundation/NSUserDefaults.h>
#include <Foundation/NSValue.h>
#include <Foundation/NSXMLParser.h>
#include <Foundation/NSZone.h>
#import <Foundation/NSObjCRuntime.h>
#import <GNUstepBase/GSConfig.h>
#import <Foundation/NSDebug.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSAffineTransform.h>
#import <Foundation/NSArchiver.h>
#import <Foundation/NSArray.h>
#import <Foundation/NSAttributedString.h>
#import <Foundation/NSAutoreleasePool.h>
#import <Foundation/NSBundle.h>
#import <Foundation/NSByteOrder.h>
#import <Foundation/NSCalendarDate.h>
#import <Foundation/NSCharacterSet.h>
#import <Foundation/NSClassDescription.h>
#import <Foundation/NSCoder.h>
#import <Foundation/NSComparisonPredicate.h>
#import <Foundation/NSCompoundPredicate.h>
#import <Foundation/NSConnection.h>
#import <Foundation/NSData.h>
#import <Foundation/NSDateFormatter.h>
#import <Foundation/NSDate.h>
#import <Foundation/NSDecimalNumber.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSDistantObject.h>
#import <Foundation/NSDistributedLock.h>
#import <Foundation/NSDistributedNotificationCenter.h>
#import <Foundation/NSEnumerator.h>
#import <Foundation/NSError.h>
#import <Foundation/NSException.h>
#import <Foundation/NSExpression.h>
#import <Foundation/NSFileHandle.h>
#import <Foundation/NSFileManager.h>
#import <Foundation/NSFormatter.h>
#import <Foundation/NSGeometry.h>
#import <Foundation/NSHashTable.h>
#import <Foundation/NSHost.h>
#import <Foundation/NSHTTPCookie.h>
#import <Foundation/NSHTTPCookieStorage.h>
#import <Foundation/NSIndexPath.h>
#import <Foundation/NSIndexSet.h>
#import <Foundation/NSInvocation.h>
#import <Foundation/NSKeyedArchiver.h>
#import <Foundation/NSKeyValueCoding.h>
#import <Foundation/NSLock.h>
#import <Foundation/NSMapTable.h>
#import <Foundation/NSMethodSignature.h>
#import <Foundation/NSNotification.h>
#import <Foundation/NSNotificationQueue.h>
#import <Foundation/NSNetServices.h>
#import <Foundation/NSNull.h>
#import <Foundation/NSNumberFormatter.h>
#import <Foundation/NSPathUtilities.h>
#import <Foundation/NSPortCoder.h>
#import <Foundation/NSPortMessage.h>
#import <Foundation/NSPortNameServer.h>
#import <Foundation/NSPredicate.h>
#import <Foundation/NSProcessInfo.h>
#import <Foundation/NSProtocolChecker.h>
#import <Foundation/NSProxy.h>
#import <Foundation/NSRange.h>
#import <Foundation/NSRunLoop.h>
#import <Foundation/NSScanner.h>
#import <Foundation/NSSerialization.h>
#import <Foundation/NSSet.h>
#import <Foundation/NSSortDescriptor.h>
#import <Foundation/NSSpellServer.h>
#import <Foundation/NSStream.h>
#import <Foundation/NSString.h>
#import <Foundation/NSTask.h>
#import <Foundation/NSThread.h>
#import <Foundation/NSTimer.h>
#import <Foundation/NSTimeZone.h>
#import <Foundation/NSUndoManager.h>
#import <Foundation/NSURLAuthenticationChallenge.h>
#import <Foundation/NSURLCache.h>
#import <Foundation/NSURLConnection.h>
#import <Foundation/NSURLCredential.h>
#import <Foundation/NSURLCredentialStorage.h>
#import <Foundation/NSURLDownload.h>
#import <Foundation/NSURLError.h>
#import <Foundation/NSURL.h>
#import <Foundation/NSURLHandle.h>
#import <Foundation/NSURLProtectionSpace.h>
#import <Foundation/NSURLProtocol.h>
#import <Foundation/NSURLRequest.h>
#import <Foundation/NSURLResponse.h>
#import <Foundation/NSUserDefaults.h>
#import <Foundation/NSValue.h>
#import <Foundation/NSValueTransformer.h>
#import <Foundation/NSXMLParser.h>
#import <Foundation/NSZone.h>
#endif /* __Foundation_h_GNUSTEP_BASE_INCLUDE */

View file

@ -0,0 +1,70 @@
/*
NSAffineTransform.h
Copyright (C) 1996 Free Software Foundation, Inc.
Author: Ovidiu Predescu <ovidiu@net-community.com>
Date: August 1997
Rewrite for MacOS-X compatibility: Richard Frith-Macdonald, 1999
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., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSAffineTransform_h_GNUSTEP_BASE_INCLUDE
#define __NSAffineTransform_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSGeometry.h>
typedef struct {
float m11;
float m12;
float m21;
float m22;
float tX;
float tY;
} NSAffineTransformStruct;
@interface NSAffineTransform : NSObject <NSCopying, NSCoding>
{
@private
NSAffineTransformStruct _matrix;
BOOL _isIdentity; // special case: A=D=1 and B=C=0
BOOL _isFlipY; // special case: A=1 D=-1 and B=C=0
BOOL _pad1;
BOOL _pad2;
}
+ (NSAffineTransform*) transform;
- (void) appendTransform: (NSAffineTransform*)aTransform;
- (id) initWithTransform: (NSAffineTransform*)aTransform;
- (void) invert;
- (void) prependTransform: (NSAffineTransform*)aTransform;
- (void) rotateByDegrees: (float)angle;
- (void) rotateByRadians: (float)angleRad;
- (void) scaleBy: (float)scale;
- (void) scaleXBy: (float)scaleX yBy: (float)scaleY;
- (void) setTransformStruct: (NSAffineTransformStruct)val;
- (NSPoint) transformPoint: (NSPoint)aPoint;
- (NSSize) transformSize: (NSSize)aSize;
- (NSAffineTransformStruct) transformStruct;
- (void) translateXBy: (float)tranX yBy: (float)tranY;
@end
#endif /* __NSAffineTransform_h_GNUSTEP_BASE_INCLUDE */

View file

@ -19,7 +19,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource:NSUnarchiver.m
AutogsdocSource:NSArchiver.m
@ -27,8 +28,13 @@
#ifndef __NSArchiver_h_GNUSTEP_BASE_INCLUDE
#define __NSArchiver_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSCoder.h>
#import <Foundation/NSCoder.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSMutableArray, NSMutableDictionary, NSMutableData, NSData, NSString;
@ -222,4 +228,8 @@ GS_EXPORT NSString * const NSInconsistentArchiveException;
#endif /* OS_API_VERSION */
#if defined(__cplusplus)
}
#endif
#endif /* __NSArchiver_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,14 +18,20 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSArray_h_GNUSTEP_BASE_INCLUDE
#define __NSArray_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSRange.h>
#include <Foundation/NSUtilities.h>
#import <Foundation/NSRange.h>
#import <Foundation/NSUtilities.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSString;
@class NSURL;
@ -35,7 +41,7 @@
+ (id) array;
+ (id) arrayWithArray: (NSArray*)array;
+ (id) arrayWithContentsOfFile: (NSString*)file;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
+ (id) arrayWithContentsOfURL: (NSURL*)aURL;
#endif
+ (id) arrayWithObject: (id)anObject;
@ -54,11 +60,11 @@
- (unsigned) indexOfObjectIdenticalTo: (id)anObject inRange: (NSRange)aRange;
- (id) init;
- (id) initWithArray: (NSArray*)array;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (id) initWithArray: (NSArray*)array copyItems: (BOOL)shouldCopy;
#endif
- (id) initWithContentsOfFile: (NSString*)file;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (id) initWithContentsOfURL: (NSURL*)aURL;
#endif
- (id) initWithObjects: firstObject, ...;
@ -70,11 +76,11 @@
- (id) firstObjectCommonWithArray: (NSArray*)otherArray;
- (BOOL) isEqualToArray: (NSArray*)otherArray;
#ifndef STRICT_MACOS_X
#if OS_API_VERSION(GS_API_OPENSTEP, GS_API_MACOSX)
- (void) makeObjectsPerform: (SEL)aSelector;
- (void) makeObjectsPerform: (SEL)aSelector withObject: (id)argument;
#endif
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (void) makeObjectsPerformSelector: (SEL)aSelector;
- (void) makeObjectsPerformSelector: (SEL)aSelector withObject: (id)arg;
#endif
@ -100,7 +106,7 @@
indent: (unsigned int)level;
- (BOOL) writeToFile: (NSString*)path atomically: (BOOL)useAuxiliaryFile;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (BOOL) writeToURL: (NSURL*)url atomically: (BOOL)useAuxiliaryFile;
- (id) valueForKey: (NSString*)key;
#endif
@ -113,7 +119,7 @@
- (void) addObject: (id)anObject; // Primitive
- (void) addObjectsFromArray: (NSArray*)otherArray;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (void) exchangeObjectAtIndex: (unsigned int)i1
withObjectAtIndex: (unsigned int)i2;
#endif
@ -144,7 +150,7 @@
context: (void*)context;
- (void) sortUsingSelector: (SEL)comparator;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (void) setValue: (id)value forKey: (NSString*)key;
#endif
@ -173,4 +179,8 @@
usingSelector: (SEL)comp;
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSArray_h_GNUSTEP_BASE_INCLUDE */

View file

@ -27,7 +27,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
/* Warning - [-initWithString:attributes:] is the designated initialiser,
@ -44,14 +45,21 @@
*/
#ifndef _NSXKit_H_NSAttributedString
#define _NSXKit_H_NSAttributedString
#ifndef __NSAttributedString_h_GNUSTEP_BASE_INCLUDE
#define __NSAttributedString_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#include <Foundation/NSString.h>
#include <Foundation/NSDictionary.h>
#include <Foundation/NSArray.h>
#include <Foundation/NSCoder.h>
#if defined(__cplusplus)
extern "C" {
#endif
#import <Foundation/NSObject.h>
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#import <Foundation/NSString.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSArray.h>
#import <Foundation/NSCoder.h>
@interface NSAttributedString : NSObject <NSCoding, NSCopying, NSMutableCopying>
{
@ -120,7 +128,7 @@
@end //NSMutableAttributedString
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
@interface NSAttributedString (GSCategories)
/**
* Dep[recated synonym for attributedSubstringFromRange:
@ -130,7 +138,11 @@
@end
#endif
#endif //STRICT_OPENSTEP
#endif /* GS_API_MACOSX */
#endif //_NSXKit_H_NSAttributedString
#if defined(__cplusplus)
}
#endif
#endif /* __NSAttributedString_h_GNUSTEP_BASE_INCLUDE */

View file

@ -24,8 +24,13 @@
#ifndef __NSAutoreleasePool_h_GNUSTEP_BASE_INCLUDE
#define __NSAutoreleasePool_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSAutoreleasePool;
@class NSThread;
@ -223,7 +228,7 @@ typedef struct autorelease_array_list
*/
- (id) retain;
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* <p>
* Counts the number of times that the specified object occurs
@ -298,4 +303,8 @@ typedef struct autorelease_array_list
#endif
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSAutoreleasePool_h_GNUSTEP_BASE_INCLUDE */

View file

@ -21,14 +21,20 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSBundle_h_GNUSTEP_BASE_INCLUDE
#define __NSBundle_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSString.h>
#if defined(__cplusplus)
extern "C" {
#endif
#import <Foundation/NSObject.h>
#import <Foundation/NSString.h>
@class NSString;
@class NSArray;
@ -301,7 +307,7 @@ GS_EXPORT NSString* const NSLoadedClasses;
/** Set the bundle version */
- (void) setBundleVersion: (unsigned)version;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Returns subarray of given array containing those localizations that are
* used to locate resources given environment and user preferences.
@ -322,16 +328,20 @@ GS_EXPORT NSString* const NSLoadedClasses;
- (BOOL) isLoaded;
/**
This method returns the same information as
-pathsForResourcesOfType:inDirectory: except that only non-localized
resources and resources that match the localization localizationName
are returned.
* This method returns the same information as
* -pathsForResourcesOfType:inDirectory: except that only non-localized
* resources and resources that match the localization localizationName
* are returned.<br />
* The GNUstep implementation places localised resources in the array
* before any non-localised resources.
*/
- (NSArray*) pathsForResourcesOfType: (NSString*)extension
inDirectory: (NSString*)subPath
forLocalization: (NSString*)localizationName;
/**
* Not implemented.
* This is like -pathForResource:ofType:inDirectory: but returns only
* resources matching localizationName (preferentially), or non-localized
* resources.
*/
- (NSString*) pathForResource: (NSString*)name
ofType: (NSString*)ext
@ -342,18 +352,19 @@ GS_EXPORT NSString* const NSLoadedClasses;
- (NSDictionary*) infoDictionary;
/** Returns a localized info property list based on the preferred
localization or the most appropriate localization if the preferred
one cannot be found.
*/
- (NSDictionary *)localizedInfoDictionary;
* localization or the most appropriate localization if the preferred
* one cannot be found.
*/
- (NSDictionary*) localizedInfoDictionary;
/** Returns all the localizations in the bundle. */
- (NSArray *)localizations;
- (NSArray*) localizations;
/** Returns the list of localizations that the bundle uses to search
for information. This is based on the user's preferences.
*/
- (NSArray *)preferredLocalizations;
/**
* Returns the list of localizations that the bundle uses to search
* for information. This is based on the user's preferences.
*/
- (NSArray*) preferredLocalizations;
/** Loads any executable code contained in the bundle into the
application. Load will be called implicitly if any information
@ -363,26 +374,57 @@ GS_EXPORT NSString* const NSLoadedClasses;
- (BOOL) load;
/** Returns the path to the executable code in the bundle */
- (NSString *)executablePath;
- (NSString *) executablePath;
#endif
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* Augments [NSBundle], including methods for handling libraries in the GNUstep
* fashion, for rapid localization, and other purposes.
*/
@interface NSBundle (GNUstep)
/** This method is an experimental GNUstep extension, and
* might change. At the moment, search on the standard GNUstep
* directories (starting from GNUSTEP_USER_ROOT, and going on to
* GNUSTEP_SYSTEM_ROOT) for a directory
* Libraries/Resources/'libraryName'/.
/** This method is an experimental GNUstep extension, and might change.
* <p>Return a bundle to access the resources for the (static or shared) library
* libraryName, with interface version interfaceVersion.
* </p>
* <p>Resources for shared libraries are stored into
* GNUSTEP_LIBRARY/Libraries/libraryName/Versions/interfaceVersion/Resources/;
* this method will search for the first such existing directory and return it.
*</p>
* <p>libraryName should be the name of a library without the
* <em>lib</em> prefix or any extensions; interfaceVersion is the
* interface version of the library (eg, it's 1.13 in libgnustep-base.so.1.13;
* see library.make on how to control it).
* </p>
* <p>This method exists to provide resource bundles for libraries and has no
* particular relationship to the library code itsself. The named library
* could be a dynamic library linked in to the running program, a static
* library (whose code may not even exist on the host machine except where
* it is linked in to the program), or even a library which is not linked
* into the program at all (eg. where you want to share resources provided
* for a library you do not actually use).
* </p>
* <p>The bundle for the library <em>gnustep-base</em> is a special case ...
* for this bundle the -principalClass method returns [NSObject] and the
* -executablePath method returns the path to the gnustep-base dynamic
* library (if it can be found). As a general rule, library bundles are
* not guaranteed to return values for these methods as the library may
* not exist on disk.
* </p>
*/
+ (NSBundle *) bundleForLibrary: (NSString *)libraryName
version: (NSString *)interfaceVersion;
/** This method is a equivalent to bundleForLibrary:version: with a nil
* version.
*/
+ (NSBundle *) bundleForLibrary: (NSString *)libraryName;
/** Find a resource in the "Library" directory. */
+ (NSString*) pathForLibraryResource: (NSString*)name
ofType: (NSString*)ext
@ -390,13 +432,6 @@ GS_EXPORT NSString* const NSLoadedClasses;
@end
/** Warning - do not use this. */
#define GSLocalizedString(key, comment) \
[[NSBundle gnustepBundle] localizedStringForKey:(key) value:@"" table:nil]
/** Warning - do not use this. */
#define GSLocalizedStringFromTable(key, tbl, comment) \
[[NSBundle gnustepBundle] localizedStringForKey:(key) value:@"" table:(tbl)]
#endif /* GNUSTEP */
/**
@ -494,14 +529,14 @@ GS_EXPORT NSString* const NSLoadedClasses;
#define NSLocalizedStringFromTableInBundle(key, tbl, bundle, comment) \
[bundle localizedStringForKey:(key) value:@"" table:(tbl)]
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
#define NSLocalizedStringFromTableInFramework(key, tbl, fpth, comment) \
[[NSBundle mainBundle] localizedStringForKey:(key) value:@"" \
table: [bundle pathForGNUstepResource:(tbl) ofType: nil inDirectory: (fpth)]
#endif /* GNUSTEP */
/* Now Support for Quick Localization */
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/* The quickest possible way to localize a string:
@ -644,6 +679,10 @@ GS_EXPORT NSString* const NSLoadedClasses;
*/
#define NSLocalizedStaticString(key, comment) key
#endif /* NO_GNUSTEP */
#endif /* GS_API_NONE */
#if defined(__cplusplus)
}
#endif
#endif /* __NSBundle_h_GNUSTEP_BASE_INCLUDE */

View file

@ -24,8 +24,13 @@
#ifndef __NSByteOrder_h_GNUSTEP_BASE_INCLUDE
#define __NSByteOrder_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <GSConfig.h>
#include <GNUstepBase/GSConfig.h>
#if defined(__cplusplus)
extern "C" {
#endif
/*
* OPENSTEP type definitions for Byte ordering.
@ -887,5 +892,8 @@ NSSwapHostShortToLittle(unsigned short num)
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSByteOrder_h_GNUSTEP_BASE_INCLUDE */

View file

@ -15,13 +15,19 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSCalendarDate_h_GNUSTEP_BASE_INCLUDE
#define __NSCalendarDate_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSDate.h>
#import <Foundation/NSDate.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSTimeZone;
@class NSTimeZoneDetail;
@ -63,7 +69,7 @@
second: (unsigned int)second
timeZone: (NSTimeZone*)aTimeZone;
// Retreiving Date Elements
// Retrieving Date Elements
- (int) dayOfCommonEra;
- (int) dayOfMonth;
- (int) dayOfWeek;
@ -95,16 +101,16 @@
// Getting and Setting Time Zones
- (void) setTimeZone: (NSTimeZone*)aTimeZone;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (NSTimeZone*) timeZone;
#endif
#ifndef STRICT_MACOS_X
#if OS_API_VERSION(GS_API_OPENSTEP, GS_API_MACOSX)
- (NSTimeZoneDetail*) timeZoneDetail;
#endif
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* Adds <code>-weekOfYear</code> method.
@ -136,7 +142,7 @@
#endif
#ifndef STRICT_MACOS_X
#if OS_API_VERSION(GS_API_OPENSTEP, GS_API_MACOSX)
@interface NSCalendarDate (OPENSTEP)
- (NSCalendarDate*) dateByAddingYears: (int)years
@ -156,4 +162,8 @@
@end
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSCalendarDate_h_GNUSTEP_BASE_INCLUDE*/

View file

@ -24,8 +24,14 @@
#ifndef __NSCharacterSet_h_GNUSTEP_BASE_INCLUDE
#define __NSCharacterSet_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSString.h>
#import <Foundation/NSRange.h>
#import <Foundation/NSString.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSData;
@ -42,7 +48,7 @@
*/
+ (NSCharacterSet*) alphanumericCharacterSet;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Returns a character set containing letters in the unicode
* Titlecase category.
@ -97,7 +103,7 @@
*/
+ (NSCharacterSet*) punctuationCharacterSet;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Returns a character set containing mathematical symbols, etc..
*/
@ -140,7 +146,7 @@
*/
+ (NSCharacterSet*) characterSetWithRange: (NSRange)aRange;
#ifndef STRICT_MACOS_X
#if OS_API_VERSION(GS_API_OPENSTEP, GS_API_MACOSX)
/**
* Initializes from a bitmap (8192 bytes representing 65536 values).<br />
* Each bit set in the bitmap represents the fact that a character at
@ -164,7 +170,7 @@
*/
- (BOOL) characterIsMember: (unichar)aCharacter;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Returns YES if the receiver contains at least one character in the
* specified unicode plane.
@ -178,7 +184,7 @@
*/
- (NSCharacterSet*) invertedSet;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Returns YES is all the characters in aSet are present in the receiver.
*/
@ -235,4 +241,8 @@
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSCharacterSet_h_GNUSTEP_BASE_INCLUDE*/

View file

@ -24,11 +24,16 @@
#ifndef __NSClassDescription_h_GNUSTEP_BASE_INCLUDE
#define __NSClassDescription_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSException.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSException.h>
#ifndef STRICT_OPENSTEP
#if defined(__cplusplus)
extern "C" {
#endif
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
@class NSArray;
@class NSDictionary;
@ -68,5 +73,9 @@ GS_EXPORT NSString* const NSClassDescriptionNeededForClassNotification;
#endif
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -18,16 +18,21 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSCoder_h_GNUSTEP_BASE_INCLUDE
#define __NSCoder_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSGeometry.h>
#include <Foundation/NSZone.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSGeometry.h>
#import <Foundation/NSZone.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSMutableData, NSData, NSString;
@ -219,11 +224,11 @@
*/
- (unsigned int) versionForClassName: (NSString*)className;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/*
* Include GSConfig.h for typedefs/defines of uint8_t, int32_t int64_t
*/
#include <GSConfig.h>
#include <GNUstepBase/GSConfig.h>
/** <override-subclass />
@ -349,44 +354,8 @@
#endif
@end
#ifndef NO_GNUSTEP
/**
* GNUstep extensions to [NSCoder], supporting compatibility with libObjects.
* DEPRECATED
*/
@interface NSCoder (GNUstep)
/* Compatibility with libObjects */
- (void) decodeArrayOfObjCType: (const char*)type
count: (unsigned)count
at: (void*)buf
withName: (id*)name;
/** <override-dummy /> decodes indentation */
- (void) decodeIndent;
- (void) decodeObjectAt: (id*)anObject
withName: (id*)name;
- (void) decodeValueOfCType: (const char*)type
at: (void*)buf
withName: (id*)name;
- (void) decodeValueOfObjCType: (const char*)type
at: (void*)buf
withName: (id*)name;
- (void) encodeArrayOfObjCType: (const char*)type
count: (unsigned)count
at: (const void*)buf
withName: (id)name;
/** <override-dummy /> encodes indentation */
- (void) encodeIndent;
- (void) encodeObjectAt: (id*)anObject
withName: (id)name;
- (void) encodeValueOfCType: (const char*)type
at: (const void*)buf
withName: (id)name;
- (void) encodeValueOfObjCType: (const char*)type
at: (const void*)buf
withName: (id)name;
@end
#endif /* NO_GNUSTEP */
#if defined(__cplusplus)
}
#endif
#endif /* __NSCoder_h_GNUSTEP_BASE_INCLUDE */

View file

@ -24,9 +24,16 @@
#ifndef __NSComparisonPredicate_h_GNUSTEP_BASE_INCLUDE
#define __NSComparisonPredicate_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSExpression.h>
#include <Foundation/NSPredicate.h>
#if OS_API_VERSION(100400, GS_API_LATEST)
#import <Foundation/NSExpression.h>
#import <Foundation/NSPredicate.h>
#if defined(__cplusplus)
extern "C" {
#endif
typedef enum _NSComparisonPredicateModifier
{
@ -94,4 +101,9 @@ typedef enum _NSPredicateOperatorType
@end
#if defined(__cplusplus)
}
#endif
#endif /* 100400 */
#endif

View file

@ -24,8 +24,15 @@
#ifndef __NSCompoundPredicate_h_GNUSTEP_BASE_INCLUDE
#define __NSCompoundPredicate_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSPredicate.h>
#if OS_API_VERSION(100400, GS_API_LATEST)
#import <Foundation/NSPredicate.h>
#if defined(__cplusplus)
extern "C" {
#endif
typedef enum _NSCompoundPredicateType
{
@ -46,5 +53,11 @@ typedef enum _NSCompoundPredicateType
- (NSArray *) subpredicates;
@end
#if defined(__cplusplus)
}
#endif
#endif /* 100400 */
#endif

View file

@ -19,19 +19,24 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSConnection_h_GNUSTEP_BASE_INCLUDE
#define __NSConnection_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSDictionary.h>
#include <Foundation/NSString.h>
#include <Foundation/NSTimer.h>
#include <Foundation/NSRunLoop.h>
#include <Foundation/NSMapTable.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSString.h>
#import <Foundation/NSTimer.h>
#import <Foundation/NSRunLoop.h>
#import <Foundation/NSMapTable.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSDistantObject;
@class NSPort;
@ -295,4 +300,8 @@ GS_EXPORT NSString * const NSConnectionDidInitializeNotification; /* OPENSTEP */
*/
GS_EXPORT NSString * const NSFailedAuthenticationException; /* MacOS-X */
#if defined(__cplusplus)
}
#endif
#endif /* __NSConnection_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,18 +18,23 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSData_h_GNUSTEP_BASE_INCLUDE
#define __NSData_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSRange.h>
#include <Foundation/NSSerialization.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSRange.h>
#import <Foundation/NSSerialization.h>
#ifndef STRICT_OPENSTEP
#if defined(__cplusplus)
extern "C" {
#endif
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
@class NSURL;
#endif
@ -42,14 +47,14 @@
length: (unsigned int)length;
+ (id) dataWithBytesNoCopy: (void*)bytes
length: (unsigned int)length;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
+ (id) dataWithBytesNoCopy: (void*)aBuffer
length: (unsigned int)bufferSize
freeWhenDone: (BOOL)shouldFree;
#endif
+ (id) dataWithContentsOfFile: (NSString*)path;
+ (id) dataWithContentsOfMappedFile: (NSString*)path;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
+ (id) dataWithContentsOfURL: (NSURL*)url;
#endif
+ (id) dataWithData: (NSData*)data;
@ -57,14 +62,14 @@
length: (unsigned int)bufferSize;
- (id) initWithBytesNoCopy: (void*)aBuffer
length: (unsigned int)bufferSize;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (id) initWithBytesNoCopy: (void*)aBuffer
length: (unsigned int)bufferSize
freeWhenDone: (BOOL)shouldFree;
#endif
- (id) initWithContentsOfFile: (NSString*)path;
- (id) initWithContentsOfMappedFile: (NSString*)path;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (id) initWithContentsOfURL: (NSURL*)url;
#endif
- (id) initWithData: (NSData*)data;
@ -90,7 +95,7 @@
- (BOOL) writeToFile: (NSString*)path
atomically: (BOOL)useAuxiliaryFile;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (BOOL) writeToURL: (NSURL*)anURL atomically: (BOOL)flag;
#endif
@ -115,7 +120,7 @@
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* Extension methods for the NSData class- mainly conversion utilities.
@ -294,7 +299,7 @@
- (void) replaceBytesInRange: (NSRange)aRange
withBytes: (const void*)bytes;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (void) replaceBytesInRange: (NSRange)aRange
withBytes: (const void*)bytes
length: (unsigned int)length;
@ -319,7 +324,7 @@
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
@interface NSMutableData (GNUstepExtensions)
/*
@ -344,10 +349,8 @@
@end
#endif
/*
Local Variables:
mode: ObjC
End:
*/
#if defined(__cplusplus)
}
#endif
#endif /* __NSData_h_GNUSTEP_BASE_INCLUDE */

View file

@ -15,14 +15,19 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDate_h_GNUSTEP_BASE_INCLUDE
#define __NSDate_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObjCRuntime.h>
#import <Foundation/NSObjCRuntime.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
* Time interval difference between two dates, in seconds.
@ -39,7 +44,7 @@ typedef double NSTimeInterval;
*/
GS_EXPORT const NSTimeInterval NSTimeIntervalSince1970;
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
@class NSArray;
@class NSCalendarDate;
@ -102,7 +107,7 @@ GS_EXPORT const NSTimeInterval NSTimeIntervalSince1970;
- (BOOL) isEqualToDate: (NSDate*)other;
- (NSDate*) laterDate: (NSDate*)otherDate;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
+ (id) dateWithNaturalLanguageString: (NSString*)string;
+ (id) dateWithNaturalLanguageString: (NSString*)string
locale: (NSDictionary*)locale;
@ -111,4 +116,8 @@ GS_EXPORT const NSTimeInterval NSTimeIntervalSince1970;
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSDate_h_GNUSTEP_BASE_INCLUDE*/

View file

@ -19,16 +19,21 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDateFormatter_h_GNUSTEP_BASE_INCLUDE
#define __NSDateFormatter_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#include <Foundation/NSFormatter.h>
#import <Foundation/NSFormatter.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
* <p>Class for generating text representations of [NSDate]s and
@ -135,4 +140,8 @@
#endif
#if defined(__cplusplus)
}
#endif
#endif /* _NSDateFormatter_h_GNUSTEP_BASE_INCLUDE */

View file

@ -20,17 +20,22 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDebug_h_GNUSTEP_BASE_INCLUDE
#define __NSDebug_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <errno.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
/*
* Functions for debugging object allocation/deallocation
*
@ -207,8 +212,8 @@ GS_EXPORT BOOL NSDeallocateZombies;
#ifdef GSDIAGNOSE
#include <Foundation/NSObjCRuntime.h>
#include <Foundation/NSProcessInfo.h>
#import <Foundation/NSObjCRuntime.h>
#import <Foundation/NSProcessInfo.h>
/**
<p>NSDebugLLog() is the basic debug logging macro used to display
@ -380,7 +385,7 @@ GS_EXPORT BOOL NSDeallocateZombies;
#ifdef GSWARN
#include <Foundation/NSObjCRuntime.h>
#import <Foundation/NSObjCRuntime.h>
/**
<p>NSWarnLog() is the basic debug logging macro used to display
@ -462,4 +467,8 @@ GS_EXPORT void *NSReturnAddress(int offset);
*/
GS_EXPORT unsigned NSCountFrames(void);
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -18,23 +18,29 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDecimal_h_GNUSTEP_BASE_INCLUDE
#define __NSDecimal_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#include <GNUstepBase/GSConfig.h>
#include <GSConfig.h>
#import <Foundation/NSObject.h>
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#if USE_GMP
#include <gmp.h>
#endif
#include <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
* Enumerated type for specifying decimal rounding behavior. Can be one of
@ -45,9 +51,9 @@
* [(NSDecimalNumberBehaviors)] protocol.
*/
typedef enum {
NSRoundPlain, /* Round .5 up */
NSRoundDown,
NSRoundUp,
NSRoundPlain, /* Round .5 up */
NSRoundBankers /* Make last digit even */
} NSRoundingMode;
@ -69,9 +75,9 @@ typedef enum {
*/
typedef enum {
NSCalculationNoError = 0,
NSCalculationLossOfPrecision,
NSCalculationUnderflow, /* result became zero */
NSCalculationOverflow,
NSCalculationLossOfPrecision,
NSCalculationDivideByZero
} NSCalculationError;
@ -245,6 +251,10 @@ GS_EXPORT void
NSDecimalFromString(NSDecimal *result, NSString *numberValue,
NSDictionary *locale);
#if defined(__cplusplus)
}
#endif
#endif
#endif

View file

@ -18,19 +18,23 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDecimalNumber_h_GNUSTEP_BASE_INCLUDE
#define __NSDecimalNumber_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#ifndef STRICT_OPENSTEP
#import <Foundation/NSObject.h>
#import <Foundation/NSDecimal.h>
#import <Foundation/NSValue.h>
#include <Foundation/NSDecimal.h>
#include <Foundation/NSValue.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSDecimalNumber;
@ -404,5 +408,9 @@
- (NSDecimal) decimalValue;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif

View file

@ -18,21 +18,26 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef _NSDictionary_h_GNUSTEP_BASE_INCLUDE
#define _NSDictionary_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray, NSString, NSEnumerator, NSURL;
@interface NSDictionary : NSObject <NSCoding, NSCopying, NSMutableCopying>
+ (id) dictionary;
+ (id) dictionaryWithContentsOfFile: (NSString*)path;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
+ (id) dictionaryWithContentsOfURL: (NSURL*)aURL;
#endif
+ (id) dictionaryWithDictionary: (NSDictionary*)otherDictionary;
@ -55,7 +60,7 @@
- (id) init;
- (id) initWithContentsOfFile: (NSString*)path;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (id) initWithContentsOfURL: (NSURL*)aURL;
#endif
- (id) initWithDictionary: (NSDictionary*)otherDictionary;
@ -74,7 +79,7 @@
- (NSArray*) objectsForKeys: (NSArray*)keys notFoundMarker: (id)marker;
- (BOOL) writeToFile: (NSString*)path atomically: (BOOL)useAuxiliaryFile;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (id) valueForKey: (NSString*)key;
- (BOOL) writeToURL: (NSURL*)url atomically: (BOOL)useAuxiliaryFile;
#endif
@ -91,11 +96,15 @@
- (void) removeObjectsForKeys: (NSArray*)keyArray;
- (void) setObject: (id)anObject forKey: (id)aKey; // Primitive
- (void) setDictionary: (NSDictionary*)otherDictionary;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (void) takeStoredValue: (id)value forKey: (NSString*)key;
- (void) takeValue: (id)value forKey: (NSString*)key;
- (void) setValue: (id)value forKey: (NSString*)key;
#endif
@end
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -19,14 +19,19 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDistantObject_h_GNUSTEP_BASE_INCLUDE
#define __NSDistantObject_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSProxy.h>
#import <Foundation/NSProxy.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSConnection;
@ -60,4 +65,8 @@
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSDistantObject_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,16 +18,21 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDistributedLock_h_GNUSTEP_BASE_INCLUDE
#define __NSDistributedLock_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSString.h>
#include <Foundation/NSDate.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSString.h>
#import <Foundation/NSDate.h>
#if defined(__cplusplus)
extern "C" {
#endif
@interface NSDistributedLock : NSObject
{
@ -45,4 +50,8 @@
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSDistributedLock_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,18 +18,23 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSDistributedNotificationCenter_h_GNUSTEP_BASE_INCLUDE
#define __NSDistributedNotificationCenter_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#include <Foundation/NSObject.h>
#include <Foundation/NSLock.h>
#include <Foundation/NSNotification.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSLock.h>
#import <Foundation/NSNotification.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
@ -46,10 +51,10 @@
</example>
*/
typedef enum {
NSNotificationSuspensionBehaviorDrop,
NSNotificationSuspensionBehaviorCoalesce,
NSNotificationSuspensionBehaviorHold,
NSNotificationSuspensionBehaviorDeliverImmediately
NSNotificationSuspensionBehaviorDrop = 1,
NSNotificationSuspensionBehaviorCoalesce = 2,
NSNotificationSuspensionBehaviorHold = 3,
NSNotificationSuspensionBehaviorDeliverImmediately = 4
} NSNotificationSuspensionBehavior;
/**
@ -57,7 +62,7 @@ typedef enum {
* localhost current user broadcast only. This is the only type on OS X.
*/
GS_EXPORT NSString* const NSLocalNotificationCenterType;
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* Type of [NSDistributedNotificationCenter+notificationCenterForType:] -
@ -109,6 +114,10 @@ GS_EXPORT NSString* const GSNetworkNotificationCenterType;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif

View file

@ -20,18 +20,27 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSEnumerator_h_GNUSTEP_BASE_INCLUDE
#define __NSEnumerator_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@interface NSEnumerator : NSObject
- (NSArray *) allObjects;
- (id) nextObject;
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSEnumerator_h_GNUSTEP_BASE_INCLUDE */

View file

@ -1,5 +1,5 @@
/** Interface for NSError for GNUStep
Copyright (C) 2004 Free Software Foundation, Inc.
Copyright (C) 2004,2006 Free Software Foundation, Inc.
Written by: Richard Frith-Macdonald <rfm@gnu.org>
Date: May 2004
@ -18,20 +18,25 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSError.m
*/
#ifndef __NSError_h_GNUSTEP_BASE_INCLUDE
#define __NSError_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#import <Foundation/NSObject.h>
#include <Foundation/NSObject.h>
#if OS_API_VERSION(100300,GS_API_LATEST)
@class NSDictionary, NSString;
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray, NSDictionary, NSString;
/**
* Key for user info dictionary component which describes the error in
@ -45,6 +50,42 @@ GS_EXPORT NSString* const NSLocalizedDescriptionKey;
*/
GS_EXPORT NSString* const NSUnderlyingErrorKey;
#if OS_API_VERSION(100400,GS_API_LATEST)
/**
* This key can be used to store the file path of a resource involved
* in the error (eg unreadable file).
*/
GS_EXPORT NSString* const NSFilePathErrorKey;
/**
* Key for an [NSNumber] containing an NSStringEncoding value.
*/
GS_EXPORT NSString* const NSStringEncodingErrorKey;
/**
* This can be used to store the URLK involved in the error.
*/
GS_EXPORT NSString* const NSURLErrorKey;
/**
* Key to store a string describing what caused the error to occur.
*/
GS_EXPORT NSString* const NSLocalizedFailureReasonErrorKey;
/**
* Key to store an [NSArray] of strings suitable for use as the
* titles of buttons in an alert panel used to attempt error
* recovery in a GUI application.
*/
GS_EXPORT NSString* const NSLocalizedRecoveryOptionsErrorKey;
/**
* Key to store a string providing a hint on how to use the buttons
* in an alert panel.
*/
GS_EXPORT NSString* const NSLocalizedRecoverySuggestionErrorKey;
/**
* Key to store an object which can be used to attempt to recover from
* the error.
*/
GS_EXPORT NSString* const NSRecoveryAttempterErrorKey;
#endif
/**
* Domain for system errors (on MACH).
*/
@ -57,11 +98,21 @@ GS_EXPORT NSString* const NSOSStatusErrorDomain;
* Domain for system and system library errors.
*/
GS_EXPORT NSString* const NSPOSIXErrorDomain;
#if OS_API_VERSION(100400,GS_API_LATEST)
/**
* Domain for Foundation and AppKit (base and gui) errors.
*/
GS_EXPORT NSString* const NSCocoaErrorDomain;
#endif
/**
* Error information class.
* Error information class.<br />
* NSError instances are used to pass information about runtime errors
* from lower levels to higher levels of the program.<br />
* These should be used instead of exceptions where an error is caused
* by external factors (such as a resource file not being present)
* rather than a programming error (where NSException should be used).
*/
// TODO: document what this is for, especially since it's not in OS X
@interface NSError : NSObject <NSCopying, NSCoding>
{
@private
@ -97,13 +148,49 @@ GS_EXPORT NSString* const NSPOSIXErrorDomain;
code: (int)aCode
userInfo: (NSDictionary*)aDictionary;
/** <override-subclass />
/**
* Return a human readable description for the error.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it generates a generic one from domain
* and code.
*/
- (NSString *)localizedDescription;
- (NSString *) localizedDescription;
#if OS_API_VERSION(100400,GS_API_LATEST)
/**
* Return a human readable explanation of the reason for the error
* (if known). This should normally be a more discursive explanation
* then the short one provided by the -localizedDescription method.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (NSString *) localizedFailureReason;
/**
* Returns an array of strings to be used as titles of buttons in an
* alert panel when offering the user optionbs to try to recover from
* the error.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (NSArray *) localizedRecoveryOptions;
/**
* Returns a string used as the secondary text in an alert panel,
* suggesting how the user might select an option to attempt to
* recover from the error.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (NSString *) localizedRecoverySuggestion;
/**
* Not yet useful in GNUstep.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (id) recoveryAttempter;
#endif
/**
* Return the user info for this instance (or nil if none is set)<br />
@ -116,5 +203,10 @@ GS_EXPORT NSString* const NSPOSIXErrorDomain;
- (NSDictionary*) userInfo;
@end
#endif /* STRICT_OPENSTEP */
#if defined(__cplusplus)
}
#endif
#endif
#endif /* __NSError_h_GNUSTEP_BASE_INCLUDE*/

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
<title>NSException and NSAssertionHandler class reference</title>
@ -30,11 +30,16 @@
#ifndef __NSException_h_GNUSTEP_BASE_INCLUDE
#define __NSException_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSString.h>
#import <Foundation/NSString.h>
#include <setjmp.h>
#include <stdarg.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSDictionary;
/**
@ -84,37 +89,37 @@
}
/**
Create an an exception object with a name, reason and a dictionary
userInfo which can be used to provide additional information or
access to objects needed to handle the exception. After the
exception is created you must -raise it.
*/
* Create an an exception object with a name, reason and a dictionary
* userInfo which can be used to provide additional information or
* access to objects needed to handle the exception. After the
* exception is created you must -raise it.
*/
+ (NSException*) exceptionWithName: (NSString*)name
reason: (NSString*)reason
userInfo: (NSDictionary*)userInfo;
/**
Creates an exception with a name and a reason using the
format string and any additional arguments. The exception is then
<em>raised</em> using the -raise method.
* Creates an exception with a name and a reason using the
* format string and any additional arguments. The exception is then
* <em>raised</em> using the -raise method.
*/
+ (void) raise: (NSString*)name
format: (NSString*)format,...;
/**
Creates an exception with a name and a reason string using the
format string and additional arguments specified as a variable
argument list argList. The exception is then <em>raised</em>
using the -raise method.
* Creates an exception with a name and a reason string using the
* format string and additional arguments specified as a variable
* argument list argList. The exception is then <em>raised</em>
* using the -raise method.
*/
+ (void) raise: (NSString*)name
format: (NSString*)format
arguments: (va_list)argList;
/**
<init/>Initializes a newly allocated NSException object with a
name, reason and a dictionary userInfo.
*/
* <init/>Initializes a newly allocated NSException object with a
* name, reason and a dictionary userInfo.
*/
- (id) initWithName: (NSString*)name
reason: (NSString*)reason
userInfo: (NSDictionary*)userInfo;
@ -123,25 +128,31 @@
- (NSString*) name;
/**
Raises the exception. All code following the raise will not be
executed and program control will be transfered to the closest
calling method which encapsulates the exception code in an
NS_DURING macro.<br />
If the exception was not caught in a macro, the currently set
uncaught exception handler is called to perform final logging
and the program is then terminated.<br />
If the uncaught exception handler fails to terminate the program,
then the default behavior is to terminate the program as soon as
the uncaught exception handler function returns.<br />
NB. all other exception raising methods call this one, so if you
want to set a breakpoint when debugging, set it in this method.
*/
* Raises the exception. All code following the raise will not be
* executed and program control will be transfered to the closest
* calling method which encapsulates the exception code in an
* NS_DURING macro.<br />
* If the exception was not caught in a macro, the currently set
* uncaught exception handler is called to perform final logging
* and the program is then terminated.<br />
* If the uncaught exception handler fails to terminate the program,
* then the default behavior is to terminate the program as soon as
* the uncaught exception handler function returns.<br />
* NB. all other exception raising methods call this one, so if you
* want to set a breakpoint when debugging, set it in this method.
*/
- (void) raise;
/** Returns the exception reason. */
- (NSString*) reason;
/** Returns the exception userInfo dictionary. */
/** Returns the exception userInfo dictionary.<br />
* There is a GNUstep extension, enabled when the GNUSTEP_STACK_TRACE
* environment variable is set to YES, which causes a stack trace to
* be placed in this dictionary (keyed on GSStackTraceKey) at the point
* when the exception is raised. This can be useful for determining
* where an exception ocurred.
*/
- (NSDictionary*) userInfo;
@end
@ -178,7 +189,13 @@ GS_EXPORT NSString* const NSRangeException;
*/
GS_EXPORT NSString* const NSCharacterConversionException;
#ifndef STRICT_OPENSTEP
/**
* An exception when a remote object is sent a message from a thread
* unable to access the object.
*/
GS_EXPORT NSString* const NSObjectInaccessibleException;
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* An exception used when some form of parsing fails.
*/
@ -331,7 +348,7 @@ GS_EXPORT void _NSRemoveHandler( NSHandler *handler );
[[NSAssertionHandler currentHandler] \
handleFailureInMethod: _cmd \
object: self \
file: [NSString stringWithCString: __FILE__] \
file: [NSString stringWithUTF8String: __FILE__] \
lineNumber: __LINE__ \
description: (desc) , ## args]; \
} \
@ -341,8 +358,8 @@ GS_EXPORT void _NSRemoveHandler( NSHandler *handler );
do { \
if (!(condition)) { \
[[NSAssertionHandler currentHandler] \
handleFailureInFunction: [NSString stringWithCString: __PRETTY_FUNCTION__] \
file: [NSString stringWithCString: __FILE__] \
handleFailureInFunction: [NSString stringWithUTF8String: __PRETTY_FUNCTION__] \
file: [NSString stringWithUTF8String: __FILE__] \
lineNumber: __LINE__ \
description: (desc) , ## args]; \
} \
@ -444,4 +461,8 @@ GS_EXPORT void _NSRemoveHandler( NSHandler *handler );
#define NSCParameterAssert(condition) \
_NSCAssertArgs((condition), @"Invalid parameter not satisfying: %s", #condition)
#if defined(__cplusplus)
}
#endif
#endif /* __NSException_h_GNUSTEP_BASE_INCLUDE */

View file

@ -24,8 +24,15 @@
#ifndef __NSExpression_h_GNUSTEP_BASE_INCLUDE
#define __NSExpression_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSPredicate.h>
#if OS_API_VERSION(100400, GS_API_LATEST)
#import <Foundation/NSPredicate.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSMutableDictionary;
@ -59,5 +66,12 @@ typedef enum _NSExpressionType
- (NSString *) variable;
@end
#if defined(__cplusplus)
}
#endif
#endif /* 100400 */
#endif /* __NSExpression_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSFileHandle.m
AutogsdocSource: NSPipe.m
@ -27,10 +27,17 @@
#ifndef __NSFileHandle_h_GNUSTEP_BASE_INCLUDE
#define __NSFileHandle_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSString.h>
#include <Foundation/NSData.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSRange.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSData;
@class NSString;
@interface NSFileHandle : NSObject
@ -160,7 +167,7 @@ GS_EXPORT NSString * const NSFileHandleOperationException;
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
// GNUstep class extensions
@ -237,4 +244,8 @@ GS_EXPORT NSString * const GSFileHandleWriteCompletionNotification;
GS_EXPORT NSString * const GSFileHandleNotificationError;
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSFileHandle_h_GNUSTEP_BASE_INCLUDE */

View file

@ -21,7 +21,8 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
<chapter>
@ -167,12 +168,17 @@
#ifndef __NSFileManager_h_GNUSTEP_BASE_INCLUDE
#define __NSFileManager_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#ifndef STRICT_OPENSTEP
#include <Foundation/NSUtilities.h>
#include <Foundation/NSDictionary.h>
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#import <Foundation/NSUtilities.h>
#import <Foundation/NSDictionary.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSNumber;
@class NSString;
@ -459,5 +465,9 @@ GS_EXPORT NSString* const NSFileSystemFreeNodes;
- (unsigned long) fileSystemFileNumber;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif /* __NSFileManager_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,17 +18,23 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSFormatter_h_GNUSTEP_BASE_INCLUDE
#define __NSFormatter_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSGeometry.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSGeometry.h>
#import <Foundation/NSRange.h>
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@class NSString, NSAttributedString, NSDictionary;
@ -117,6 +123,10 @@
- (NSString*) stringForObjectValue: (id)anObject;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif

View file

@ -18,17 +18,20 @@
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02111 USA. */
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02111 USA.
*/
#ifndef __NSGeometry_h_GNUSTEP_BASE_INCLUDE
#define __NSGeometry_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
/**** Included Headers *******************************************************/
#import <objc/objc.h>
#include <objc/objc.h>
#ifdef __OBJC__
#include <Foundation/NSString.h>
#import <Foundation/NSString.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**** Type, Constant, and Macro Definitions **********************************/
@ -60,7 +63,7 @@ struct _NSPoint
float y;
};
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/** Array of NSPoint structs. */
typedef NSPoint *NSPointArray;
/** Pointer to NSPoint struct. */
@ -80,7 +83,7 @@ struct _NSSize
float height;
};
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/** Array of NSSize structs. */
typedef NSSize *NSSizeArray;
/** Pointer to NSSize struct. */
@ -101,7 +104,7 @@ struct _NSRect
NSSize size;
};
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/** Array of NSRect structs. */
typedef NSRect *NSRectArray;
/** Pointer to NSRect struct. */
@ -120,10 +123,10 @@ typedef NSRect *NSRectPointer;
*/
typedef enum _NSRectEdge
{
NSMinXEdge,
NSMinYEdge,
NSMaxXEdge,
NSMaxYEdge
NSMinXEdge = 0,
NSMinYEdge = 1,
NSMaxXEdge = 2,
NSMaxYEdge = 3
} NSRectEdge;
/** Point at 0,0 */
@ -500,7 +503,7 @@ NSContainsRect(NSRect aRect, NSRect bRect)
&& (NSMaxY(aRect) >= NSMaxY(bRect))) ? YES : NO;
}
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
GS_GEOM_SCOPE BOOL
NSIntersectsRect(NSRect aRect, NSRect bRect) GS_GEOM_ATTR;
@ -561,4 +564,9 @@ GS_EXPORT NSRect NSRectFromString(NSString* string);
#undef GS_DEFINED_MIN
#undef MIN
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSGeometry_h_GNUSTEP_BASE_INCLUDE */

View file

@ -24,11 +24,16 @@
#ifndef __NSHTTPCookie_h_GNUSTEP_BASE_INCLUDE
#define __NSHTTPCookie_h_GNUSTEP_BASE_INCLUDE
#include <Foundation/NSObject.h>
#import <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(100200,GS_API_LATEST) && GS_API_VERSION(011300,GS_API_LATEST)
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray;
@class NSDate;
@class NSDictionary;
@ -242,5 +247,10 @@ extern NSString * const NSHTTPCookieVersion; /** Obtain cookie version */
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif /* 100200 */
#endif /* __NSHTTPCookie_h_GNUSTEP_BASE_INCLUDE */

View file

@ -24,11 +24,16 @@
#ifndef __NSHTTPCookieStorage_h_GNUSTEP_BASE_INCLUDE
#define __NSHTTPCookieStorage_h_GNUSTEP_BASE_INCLUDE
#include <Foundation/NSObject.h>
#import <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(100200,GS_API_LATEST) && GS_API_VERSION(011300,GS_API_LATEST)
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray;
@class NSHTTPCookie;
@class NSURL;
@ -114,5 +119,10 @@ extern NSString * const NSHTTPCookieManagerCookiesChangedNotification;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif /* 100200 */
#endif /* __NSHTTPCookieStorage_h_GNUSTEP_BASE_INCLUDE */

View file

@ -21,18 +21,23 @@
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02111 USA.
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, 02111 USA.
*/
#ifndef __NSHashTable_h_GNUSTEP_BASE_INCLUDE
#define __NSHashTable_h_GNUSTEP_BASE_INCLUDE 1
#import <GNUstepBase/GSVersionMacros.h>
/**** Included Headers *******************************************************/
#include <Foundation/NSObject.h>
#include <Foundation/NSString.h>
#include <Foundation/NSArray.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSString.h>
#import <Foundation/NSArray.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**** Type, Constant, and Macro Definitions **********************************/
@ -138,4 +143,8 @@ NSHashRemove(NSHashTable *table, const void *element);
GS_EXPORT NSString *
NSStringFromHashTable(NSHashTable *table);
#if defined(__cplusplus)
}
#endif
#endif /* __NSHashTable_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,13 +18,18 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSHost_h_GNUSTEP_BASE_INCLUDE
#define __NSHost_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSString, NSArray, NSSet;
@ -118,5 +123,9 @@
+ (NSHost*) localHost; /* All local IP addresses */
@end
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street,
Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSIndexPath.m
@ -27,8 +27,13 @@
#ifndef _NSIndexPath_h_GNUSTEP_BASE_INCLUDE
#define _NSIndexPath_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
#if OS_API_VERSION(100400,GS_API_LATEST) && GS_API_VERSION(010200,GS_API_LATEST)
@ -105,4 +110,8 @@
#endif
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSIndexSet.m
@ -27,11 +27,16 @@
#ifndef _NSIndexSet_h_GNUSTEP_BASE_INCLUDE
#define _NSIndexSet_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#include <Foundation/NSObject.h>
#include <Foundation/NSRange.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSRange.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
* Instances of this class are collections of unsigned integers in the
@ -212,5 +217,9 @@
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif

View file

@ -19,15 +19,19 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSInvocation_h_GNUSTEP_BASE_INCLUDE
#define __NSInvocation_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSMethodSignature.h>
#import <Foundation/NSMethodSignature.h>
#if defined(__cplusplus)
extern "C" {
#endif
@interface NSInvocation : NSObject
{
@ -37,7 +41,7 @@
id _target;
SEL _selector;
unsigned int _numArgs;
#ifndef STRICT_MACOS_X
#if OS_API_VERSION(GS_API_OPENSTEP, GS_API_MACOSX)
NSArgumentInfo *_info;
#else
void *_dummy;
@ -91,7 +95,7 @@
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
@interface NSInvocation (GNUstep)
/**
* Returns the status of the flag set by -setSendsToSuper:
@ -145,5 +149,8 @@
[NSInvocation _returnInvocationAndDestroyProxy: __proxy]; \
})
#endif /* __NSInvocation_h_GNUSTEP_BASE_INCLUDE */
#if defined(__cplusplus)
}
#endif
#endif /* __NSInvocation_h_GNUSTEP_BASE_INCLUDE */

View file

@ -19,14 +19,21 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSKeyValueCoding_h_GNUSTEP_BASE_INCLUDE
#define __NSKeyValueCoding_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray;
@class NSMutableArray;
@ -34,8 +41,6 @@
@class NSError;
@class NSString;
#ifndef STRICT_OPENSTEP
/** An exception for an unknown key in [NSObject(NSKeyValueCoding)]. */
GS_EXPORT NSString* const NSUndefinedKeyException;
@ -353,6 +358,11 @@ GS_EXPORT NSString* const NSUndefinedKeyException;
@end
#endif
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif

View file

@ -18,19 +18,23 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSKeyValueObserving_h_GNUSTEP_BASE_INCLUDE
#define __NSKeyValueObserving_h_GNUSTEP_BASE_INCLUDE
#include <Foundation/NSObject.h>
#include <Foundation/NSArray.h>
#import <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(100300,GS_API_LATEST) && GS_API_VERSION(010200,GS_API_LATEST)
@class NSArray;
#import <Foundation/NSObject.h>
#import <Foundation/NSArray.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSIndexSet;
@class NSSet;
@class NSString;
@ -221,6 +225,11 @@ triggerChangeNotificationsForDependentKey: (NSString*)dependentKey;
@end
#if defined(__cplusplus)
}
#endif
#endif /* 100300 */
#endif /* __NSKeyValueObserving_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSKeyedArchiver.m
AutogsdocSource: NSKeyedUnarchiver.m
@ -28,12 +28,17 @@
#ifndef __NSKeyedArchiver_h_GNUSTEP_BASE_INCLUDE
#define __NSKeyedArchiver_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#include <Foundation/NSCoder.h>
#include <Foundation/NSMapTable.h>
#include <Foundation/NSPropertyList.h>
#if defined(__cplusplus)
extern "C" {
#endif
#import <Foundation/NSCoder.h>
#import <Foundation/NSMapTable.h>
#import <Foundation/NSPropertyList.h>
@class NSMutableDictionary, NSMutableData, NSData, NSString;
@ -560,5 +565,10 @@ willReplaceObject: (id)anObject
- (NSSize) decodeSizeForKey: (NSString*)aKey;
@end
#endif /* STRICT_OPENSTEP */
#endif /* __NSKeyedArchiver_h_GNUSTEP_BASE_INCLUDE*/
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* __NSKeyedArchiver_h_GNUSTEP_BASE_INCLUDE */

View file

@ -25,13 +25,19 @@
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., 51 Franklin Street, Fifth Floor, Boston, MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef _GNUstep_H_NSLock
#define _GNUstep_H_NSLock
#ifndef __NSLock_h_GNUSTEP_BASE_INCLUDE
#define __NSLock_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
* Protocol defining lock and unlock operations.
@ -196,7 +202,7 @@
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* Returns IDENT which will be initialized
@ -284,6 +290,11 @@
+ (id) newLockAt: (id *)location;
@end
#endif /* NO_GNUSTEP */
#endif /* GS_API_NONE */
#if defined(__cplusplus)
}
#endif
#endif /* __NSLock_h_GNUSTEP_BASE_INCLUDE */
#endif /* _GNUstep_H_NSLock*/

View file

@ -21,17 +21,23 @@
*
* 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02111 USA. */
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02111 USA.
*/
#ifndef __NSMapTable_h_GNUSTEP_BASE_INCLUDE
#define __NSMapTable_h_GNUSTEP_BASE_INCLUDE 1
#import <GNUstepBase/GSVersionMacros.h>
/**** Included Headers *******************************************************/
#include <Foundation/NSObject.h>
#include <Foundation/NSString.h>
#include <Foundation/NSArray.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSString.h>
#import <Foundation/NSArray.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**** Type, Constant, and Macro Definitions **********************************/
@ -205,4 +211,8 @@ NSMapRemove(NSMapTable *table, const void *key);
GS_EXPORT NSString *NSStringFromMapTable (NSMapTable *table);
#if defined(__cplusplus)
}
#endif
#endif /* __NSMapTable_h_GNUSTEP_BASE_INCLUDE */

View file

@ -20,16 +20,21 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSMethodSignature_h_GNUSTEP_BASE_INCLUDE
#define __NSMethodSignature_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#ifndef STRICT_MACOS_X
#if defined(__cplusplus)
extern "C" {
#endif
#if OS_API_VERSION(GS_API_NONE, GS_API_MACOSX)
/**
* <p>Info about layout of arguments.
* Extended from the original OpenStep version to let us know if the
@ -41,9 +46,9 @@ typedef struct {
int offset;
unsigned size;
const char *type;
unsigned align; // extension, available only ifndef NO_GNUSTEP
unsigned qual; // extension, available only ifndef NO_GNUSTEP
BOOL isReg; // extension, available only ifndef NO_GNUSTEP
unsigned align; // extension, available only in GNUSTEP
unsigned qual; // extension, available only in GNUSTEP
BOOL isReg; // extension, available only in GNUSTEP
} NSArgumentInfo;
</example>
* <p>NB. The offset and register information may not always be reliable.
@ -55,7 +60,7 @@ typedef struct {
int offset;
unsigned size;
const char *type;
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
unsigned align;
unsigned qual;
BOOL isReg;
@ -85,10 +90,10 @@ typedef struct {
const char *_methodTypes;
unsigned _argFrameLength;
unsigned _numArgs;
#ifdef STRICT_MACOS_X
void *_info;
#else
#if OS_API_VERSION(GS_API_NONE, GS_API_MACOSX)
NSArgumentInfo *_info;
#else
void *_info;
#endif
}
@ -98,7 +103,7 @@ typedef struct {
*/
+ (NSMethodSignature*) signatureWithObjCTypes: (const char*)t;
#ifndef STRICT_MACOS_X
#if OS_API_VERSION(GS_API_OPENSTEP, GS_API_MACOSX)
/**
* Returns full information on given argument. Indices start at 0. Provide
* -1 to get info on return value.
@ -148,7 +153,7 @@ typedef struct {
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* Declares a convenience method for getting the entire array of raw type and
* size information.
@ -168,4 +173,8 @@ typedef struct {
@end
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSMethodSignature_h_GNUSTEP_BASE_INCLUDE */

View file

@ -0,0 +1,438 @@
/* Interface for NSNetServices for GNUstep
Copyright (C) 2006 Free Software Foundation, Inc.
Written by: Chris B. Vetter
Date: 2006
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., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSNetServices_h_GNUSTEP_BASE_INCLUDE
#define __NSNetServices_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSRange.h>
#if defined(__cplusplus)
extern "C" {
#endif
typedef enum
{
/**
* <list>
* <item>
* <strong>NSNetServicesUnknownError</strong><br />
* An unknown error occurred.
* <br /><br />
* </item>
* <item>
* <strong>NSNetServicesCollisionError</strong><br />
* The given registration has had a name collision. Registration should
* be cancelled and tried again with a different name.
* <br /><br />
* </item>
* <item>
* <strong>NSNetServicesNotFoundError</strong><br />
* The service could not be found.
* <br /><br />
* </item>
* <item>
* <strong>NSNetServicesActivityInProgress</strong><br />
* A request is already in progress.
* <br /><br />
* </item>
* <item>
* <strong>NSNetServicesBadArgumentError</strong><br />
* An invalid argument was used to create the object.
* <br /><br />
* </item>
* <item>
* <strong>NSNetServicesCancelledError</strong><br />
* The request has been cancelled.
* <br /><br />
* </item>
* <item>
* <strong>NSNetServicesInvalidError</strong><br />
* The service was improperly configured.
* <br /><br />
* </item>
* <item>
* <strong>NSNetServicesTimeoutError</strong><br />
* The request has timed out before a successful resolution.
* <br /><br />
* </item>
* </list>
*/
NSNetServicesUnknownError = -72000L,
NSNetServicesCollisionError = -72001L,
NSNetServicesNotFoundError = -72002L,
NSNetServicesActivityInProgress = -72003L,
NSNetServicesBadArgumentError = -72004L,
NSNetServicesCancelledError = -72005L,
NSNetServicesInvalidError = -72006L,
NSNetServicesTimeoutError = -72007L
} NSNetServicesError;
GS_EXPORT NSString * const NSNetServicesErrorCode;
GS_EXPORT NSString * const NSNetServicesErrorDomain;
@class NSInputStream;
@class NSOutputStream;
@class NSRunLoop;
/**
* <unit>
* <heading>
* NSNetService class description
* </heading>
* <p>
* <!-- Foreword -->
* </p>
* <unit />
* <p>
* <!-- Afterword -->
* </p>
* </unit>
* <p>
* [NSNetService] lets you publish a network service in a domain using
* multicast DNS. Additionally, it lets you resolve a network service that
* was discovered by [NSNetServiceBrowser].
* </p>
*/
@interface NSNetService : NSObject
{
@private
void * _netService;
id _delegate;
void * _reserved;
}
+ (NSData *) dataFromTXTRecordDictionary: (NSDictionary *) txtDictionary;
+ (NSDictionary *) dictionaryFromTXTRecordData: (NSData *) txtData;
- (id) initWithDomain: (NSString *) domain
type: (NSString *) type
name: (NSString *) name;
- (id) initWithDomain: (NSString *) domain
type: (NSString *) type
name: (NSString *) name
port: (int) port;
- (void) removeFromRunLoop: (NSRunLoop *) aRunLoop
forMode: (NSString *) mode;
- (void) scheduleInRunLoop: (NSRunLoop *) aRunLoop
forMode: (NSString *) mode;
- (void) publish;
- (void) resolve;
- (void) resolveWithTimeout: (NSTimeInterval) timeout;
- (void) stop;
- (void) startMonitoring;
- (void) stopMonitoring;
- (id) delegate;
- (void) setDelegate: (id) delegate;
- (NSArray *) addresses;
- (NSString *) domain;
- (NSString *) hostName;
- (NSString *) name;
- (NSString *) type;
- (NSString *) protocolSpecificInformation;
- (void) setProtocolSpecificInformation: (NSString *) specificInformation;
- (NSData *) TXTRecordData;
- (BOOL) setTXTRecordData: (NSData *) recordData;
- (BOOL) getInputStream: (NSInputStream **) inputStream
outputStream: (NSOutputStream **) outputStream;
@end
/**
* <unit>
* <heading>
* NSNetServiceBrowser class description
* </heading>
* <p>
* <!-- Foreword -->
* </p>
* <unit />
* <p>
* <!-- Afterword -->
* </p>
* </unit>
* <p>
* [NSNetServiceBrowser] asynchronously lets you discover network domains
* and, additionally, search for a type of network service. It sends its
* delegate a message whenever it discovers a new network service, and
* whenever a network service goes away.
* </p>
* <p>
* Each [NSNetServiceBrowser] performs one search at a time. So in order
* to perform multiple searches simultaneously, create multiple instances.
* </p>
*/
@interface NSNetServiceBrowser : NSObject
{
@private
void * _netServiceBrowser;
id _delegate;
void * _reserved;
}
- (id) init;
- (void) removeFromRunLoop: (NSRunLoop *) aRunLoop
forMode: (NSString *) mode;
- (void) scheduleInRunLoop: (NSRunLoop *) aRunLoop
forMode: (NSString *) mode;
- (void) searchForAllDomains;
- (void) searchForBrowsableDomains;
- (void) searchForRegistrationDomains;
- (void) searchForServicesOfType: (NSString *) serviceType
inDomain: (NSString *) domainName;
- (void) stop;
- (id) delegate;
- (void) setDelegate: (id) delegate;
@end
/**
* <unit>
* <heading>
* NSObject (NSNetServiceDelegateMethods) class description
* </heading>
* <p>
* <!-- Foreword -->
* </p>
* <unit />
* <p>
* <!-- Afterword -->
* </p>
* </unit>
* <p>
* This informal protocol must be adopted by any class wishing to implement
* an [NSNetService] delegate.
* </p>
*/
@interface NSObject (NSNetServiceDelegateMethods)
/**
* Notifies the delegate that the network is ready to publish the service.
*
* <p><strong>See also:</strong><br />
* [NSNetService-publish]<br />
* </p>
*/
- (void) netServiceWillPublish: (NSNetService *) sender;
/**
* Notifies the delegate that the service was successfully published.
*
* <p><strong>See also:</strong><br />
* [NSNetService-publish]<br />
* </p>
*/
- (void) netServiceDidPublish: (NSNetService *) sender;
/**
* Notifies the delegate that the service could not get published.
*
* <p><strong>See also:</strong><br />
* [NSNetService-publish]<br />
* </p>
*/
- (void) netService: (NSNetService *) sender
didNotPublish: (NSDictionary *) errorDict;
/**
* Notifies the delegate that the network is ready to resolve the service.
*
* <p><strong>See also:</strong><br />
* [NSNetService-resolveWithTimeout:]<br />
* </p>
*/
- (void) netServiceWillResolve: (NSNetService *) sender;
/**
* Notifies the delegate that the service was resolved.
*
* <p><strong>See also:</strong><br />
* [NSNetService-resolveWithTimeout:]<br />
* </p>
*/
- (void) netServiceDidResolveAddress: (NSNetService *) sender;
/**
* Notifies the delegate that the service could not get resolved.
*
* <p><strong>See also:</strong><br />
* [NSNetService-resolveWithTimeout:]<br />
* </p>
*/
- (void) netService: (NSNetService *) sender
didNotResolve: (NSDictionary *) errorDict;
/**
* Notifies the delegate that the request was stopped.
*
* <p><strong>See also:</strong><br />
* [NSNetService-stop]<br />
* </p>
*/
- (void) netServiceDidStop: (NSNetService *) sender;
/**
* Notifies the delegate that the TXT record has been updated.
*
* <p><strong>See also:</strong><br />
* [NSNetService-startMonitoring]<br />
* [NSNetService-stopMonitoring]
* </p>
*/
- (void) netService: (NSNetService *) sender
didUpdateTXTRecordData: (NSData *) data;
@end
/**
* <unit>
* <heading>
* NSObject (NSNetServiceBrowserDelegateMethods) class description
* </heading>
* <p>
* <!-- Foreword -->
* </p>
* <unit />
* <p>
* <!-- Afterword -->
* </p>
* </unit>
* <p>
* This informal protocol must be adopted by any class wishing to implement
* an [NSNetServiceBrowser] delegate.
* </p>
*/
@interface NSObject (NSNetServiceBrowserDelegateMethods)
/**
* Notifies the delegate that the search is about to begin.
*
* <p><strong>See also:</strong><br />
* [NSNetServiceBrowser-netServiceBrowser:didNotSearch:]<br />
* </p>
*/
- (void) netServiceBrowserWillSearch: (NSNetServiceBrowser *)aNetServiceBrowser;
/**
* Notifies the delegate that the search was unsuccessful.
*
* <p><strong>See also:</strong><br />
* [NSNetServiceBrowser-netServiceBrowserWillSearch:]<br />
* </p>
*/
- (void) netServiceBrowser: (NSNetServiceBrowser *) aNetServiceBrowser
didNotSearch: (NSDictionary *) errorDict;
/**
* Notifies the delegate that the search was stopped.
*
* <p><strong>See also:</strong><br />
* [NSNetServiceBrowser-stop]<br />
* </p>
*/
- (void) netServiceBrowserDidStopSearch:
(NSNetServiceBrowser *)aNetServiceBrowser;
/**
* Notifies the delegate that a domain was found.
*
* <p><strong>See also:</strong><br />
* [NSNetServiceBrowser-searchForBrowsableDomains]<br />
* [NSNetServiceBrowser-searchForRegistrationDomains]<br />
* </p>
*/
- (void) netServiceBrowser: (NSNetServiceBrowser *) aNetServiceBrowser
didFindDomain: (NSString *) domainString
moreComing: (BOOL) moreComing;
/**
* Notifies the delegate that a domain has become unavailable.
*
* <p><strong>See also:</strong><br />
* <br />
* </p>
*/
- (void) netServiceBrowser: (NSNetServiceBrowser *) aNetServiceBrowser
didRemoveDomain: (NSString *) domainString
moreComing: (BOOL) moreComing;
/**
* Notifies the delegate that a service was found.
*
* <p><strong>See also:</strong><br />
* [NSNetServiceBrowser-searchForServicesOfType:inDomain:]<br />
* </p>
*/
- (void) netServiceBrowser: (NSNetServiceBrowser *) aNetServiceBrowser
didFindService: (NSNetService *) aNetService
moreComing: (BOOL) moreComing;
/**
* Notifies the delegate that a service has become unavailable.
*
* <p><strong>See also:</strong><br />
* <br />
* </p>
*/
- (void) netServiceBrowser: (NSNetServiceBrowser *) aNetServiceBrowser
didRemoveService: (NSNetService *) aNetService
moreComing: (BOOL) moreComing;
@end
#endif /* __NSNetServices_h_GNUSTEP_BASE_INCLUDE */

View file

@ -19,8 +19,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSNotification.m
AutogsdocSource: NSNotificationCenter.m
@ -28,9 +28,14 @@
#ifndef __NSNotification_h_GNUSTEP_BASE_INCLUDE
#define __NSNotification_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSMapTable.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSMapTable.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSString;
@class NSDictionary;
@ -84,16 +89,8 @@
@end
#ifndef NO_GNUSTEP
@interface NSNotificationCenter (GNUstep)
/**
* You can disable locking in a multi-threaded program if you KNOW that only
* one thread will ever use the notification center.<br />
* DEPRECATED
*/
- (BOOL) setLockingDisabled: (BOOL)flag;
@end
#if defined(__cplusplus)
}
#endif
#endif /*__NSNotification_h_GNUSTEP_BASE_INCLUDE */

View file

@ -44,12 +44,19 @@
Boston, MA 02111 USA.
*/
#ifndef __NSNotificationQueue_h__
#define __NSNotificationQueue_h__
#ifndef __NSNotificationQueue_h_GNUSTEP_BASE_INCLUDE
#define __NSNotificationQueue_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSNotification.h>
#import <Foundation/NSObject.h>
@class NSMutableArray;
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray;
@class NSNotification;
@class NSNotificationCenter;
/*
* Posting styles into notification queue
@ -67,9 +74,9 @@
</example>
*/
typedef enum {
NSPostWhenIdle,
NSPostASAP,
NSPostNow
NSPostWhenIdle = 1,
NSPostASAP = 2,
NSPostNow = 3
} NSPostingStyle;
/**
@ -126,4 +133,8 @@ struct _NSNotificationQueueList;
@end
#endif /* __NSNotificationQueue_h__ */
#if defined(__cplusplus)
}
#endif
#endif /* __NSNotificationQueue_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,23 +18,33 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSNull_h_GNUSTEP_BASE_INCLUDE
#define __NSNull_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
/*
* An object to use as a placeholder - in collections for instance.
*/
#ifndef NO_MACOS_X
#include <Foundation/NSObject.h>
@interface NSNull : NSObject <NSCoding, NSCopying>
+ (NSNull*) null;
@end
#if defined(__cplusplus)
}
#endif
#endif /* GS_API_MACOSX */
#endif /* __NSNull_h_GNUSTEP_BASE_INCLUDE */

View file

@ -19,18 +19,23 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef _NSNumberFormatter_h__
#define _NSNumberFormatter_h__
#ifndef _NSNumberFormatter_h_GNUSTEP_BASE_INCLUDE
#define _NSNumberFormatter_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
#include <Foundation/NSObject.h>
#include <Foundation/NSFormatter.h>
#include <Foundation/NSDecimalNumber.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSFormatter.h>
#import <Foundation/NSDecimalNumber.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSString, NSAttributedString, NSDictionary;
@ -295,5 +300,11 @@
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif /* GS_API_MACOSX */
#endif /* _NSNumberFormatter_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSObjCRuntime.m
AutogsdocSource: NSLog.m
@ -28,8 +28,13 @@
#ifndef __NSObjCRuntime_h_GNUSTEP_BASE_INCLUDE
#define __NSObjCRuntime_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <GNUstepBase/GSObjCRuntime.h>
#import <GNUstepBase/GSObjCRuntime.h>
#if defined(__cplusplus)
extern "C" {
#endif
GS_EXPORT NSString *NSStringFromSelector(SEL aSelector);
GS_EXPORT SEL NSSelectorFromString(NSString *aSelectorName);
@ -38,7 +43,7 @@ GS_EXPORT NSString *NSStringFromClass(Class aClass);
GS_EXPORT const char *NSGetSizeAndAlignment(const char *typePtr,
unsigned int *sizep, unsigned int *alignp);
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/* Logging */
/**
* OpenStep spec states that log messages go to stderr, but just in case
@ -65,4 +70,8 @@ GS_EXPORT void NSLogv (NSString *format, va_list args);
#define nil 0
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSObjCRuntime_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSObject.m
AutogsdocSource: Additions/GSCategories.m
@ -27,141 +27,18 @@
#ifndef __NSObject_h_GNUSTEP_BASE_INCLUDE
#define __NSObject_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
/*
* Check consistency of definitions for system compatibility.
*/
#if defined(STRICT_OPENSTEP)
#define OS_API_VERSION 10000
#define NO_GNUSTEP 1
#elif defined(STRICT_MACOS_X)
#define OS_API_VERSION 100000
#define NO_GNUSTEP 1
#else
#undef NO_GNUSTEP
#endif
/*
* NB. The version values below must be integers ... by convention these are
* made up of two digits each for major, minor and subminor version numbers
* (ie each is in the range 00 to 99 though a leading zero in the major
* number is not permitted).
* So for a MacOS-X 10.3.9 release the version number would be 100309
*
* You may define GS_GNUSTEP_V or GS_OPENSTEP_V to ensure that your
* program only 'sees' the specified varsion of the API.
*/
/**
* <p>Macro to check a defined GNUstep version number (GS_GNUSTEP_V) against
* the supplied arguments. Returns true if no GNUstep version is specified,
* or if ADD &lt;= version &lt; REM, where ADD is the version
* number at which a feature guarded by the macro was introduced and
* REM is the version number at which it was removed.
* </p>
* <p>The version number arguments are six digit integers where the first
* two digits are the major version number, the second two are the minor
* version number and the last two are the subminor number (all left padded
* with a zero where necessary). However, for convenience you can also
* use any of several predefined constants ...
* <ref type="macro" id="GS_API_NONE">GS_API_NONE</ref>,
* <ref type="macro" id="GS_API_LATEST">GS_API_LATEST</ref>,
* <ref type="macro" id="GS_API_OSSPEC">GS_API_OSSPEC</ref>,
* <ref type="macro" id="GS_API_OPENSTEP">GS_API_OPENSTEP</ref>,
* <ref type="macro" id="GS_API_MACOSX">GS_API_MACOSX</ref>
* </p>
* <p>Also see <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* </p>
* <p>NB. If you are changing the API (eg adding a new feature) you need
* to control the visibility io the new header file code using<br />
* <code>#if GS_API_VERSION(ADD,GS_API_LATEST)</code><br />
* where <code>ADD</code> is the version number of the next minor
* release after the most recent one.<br />
* As a general principle you should <em>not</em> change the API with
* changing subminor version numbers ... as that tends to confuse
* people (though Apple has sometimes done it).
* </p>
*/
#define GS_API_VERSION(ADD,REM) \
(!defined(GS_GNUSTEP_V) || (GS_GNUSTEP_V >= ADD && GS_GNUSTEP_V < REM))
/**
* <p>Macro to check a defined OpenStep/OPENSTEP/MacOS-X version against the
* supplied arguments. Returns true if no version is specified, or if
* ADD &lt;= version &lt; REM, where ADD is the version
* number at which a feature guarded by the macro was introduced and
* REM is the version number at which it was removed.
* </p>
* <p>The version number arguments are six digit integers where the first
* two digits are the major version number, the second two are the minor
* version number and the last two are the subminor number (all left padded
* with a zero where necessary). However, for convenience you can also
* use any of several predefined constants ...
* <ref type="macro" id="GS_API_NONE">GS_API_NONE</ref>,
* <ref type="macro" id="GS_API_LATEST">GS_API_LATEST</ref>,
* <ref type="macro" id="GS_API_OSSPEC">GS_API_OSSPEC</ref>,
* <ref type="macro" id="GS_API_OPENSTEP">GS_API_OPENSTEP</ref>,
* <ref type="macro" id="GS_API_MACOSX">GS_API_MACOSX</ref>
* </p>
* <p>Also see <ref type="macro" id="GS_API_VERSION">GS_API_VERSION</ref>
* </p>
*/
#define OS_API_VERSION(ADD,REM) \
(!defined(GS_OPENSTEP_V) || (GS_OPENSTEP_V >= ADD && GS_OPENSTEP_V < REM))
/**
* A constant to represent a feature which is not present in any version.
* Use this to say a feature is not present in an API.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_NONE, GS_API_NONE)<br />
* denotes code not present in OpenStep/OPENSTEP/MacOS-X
*/
#define GS_API_NONE 0
/**
* A constant to represent a feature which is still present in the latest
* version. This is the highest possible version number.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_MACOSX, GS_API_LATEST)<br />
* denotes code present from the initial MacOS-X version onwards.
*/
#define GS_API_LATEST 999999
/**
* The version number of the initial OpenStep specification.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_OSSPEC, GS_API_LATEST)<br />
* denotes code present from the OpenStep specification onwards.
*/
#define GS_API_OSSPEC 10000
/**
* The version number of the first OPENSTEP implementation.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_OPENSTEP, GS_API_LATEST)<br />
* denotes code present from the initial OPENSTEP version onwards.
*/
#define GS_API_OPENSTEP 40000
/**
* The version number of the first MacOS-X implementation.<br />
* eg.<br />
* #if <ref type="macro" id="OS_API_VERSION">OS_API_VERSION</ref>
* (GS_API_MACOSX, GS_API_LATEST)<br />
* denotes code present from the initial MacOS-X version onwards.
*/
#define GS_API_MACOSX 100000
#include <Foundation/NSObjCRuntime.h>
#include <GNUstepBase/preface.h>
#include <GSConfig.h>
#import <Foundation/NSObjCRuntime.h>
#import <GNUstepBase/preface.h>
#include <GNUstepBase/GSConfig.h>
#include <objc/objc.h>
#include <objc/typedstream.h>
#include <Foundation/NSZone.h>
#import <Foundation/NSZone.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArchiver;
@class NSArray;
@ -291,13 +168,13 @@
Class isa;
}
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
#if GS_WITH_GC
+ (BOOL) requiresTypedMemory;
#endif
#endif
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
- (NSString*) className;
#endif
@ -412,7 +289,7 @@ NSComparisonResult;
enum {NSNotFound = 0x7fffffff};
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
@interface NSObject (NEXTSTEP)
- error:(const char *)aString, ...;
@ -494,7 +371,7 @@ GS_EXPORT NSRecursiveLock *gnustep_global_lock;
- (void) gcFinalize;
@end
#include <Foundation/NSDate.h>
#import <Foundation/NSDate.h>
/**
* Declares some methods for sending messages to self after a fixed delay.
* (These methods <em>are</em> in OpenStep and OS X.)
@ -719,4 +596,8 @@ if (__value != __object) \
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSObject_h_GNUSTEP_BASE_INCLUDE */

View file

@ -26,12 +26,20 @@
#ifndef __NSPathUtilities_h_GNUSTEP_BASE_INCLUDE
#define __NSPathUtilities_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSString.h>
#import <GNUstepBase/GSObjCRuntime.h>
#if defined(__cplusplus)
extern "C" {
#endif
#ifndef NO_GNUSTEP
@class NSDictionary;
@class NSMutableDictionary;
@class NSString;
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
/**
* This extension permits a change of username from that specified in the
* LOGNAME environment variable. Using it will almost certainly cause
@ -98,12 +106,14 @@ GS_EXPORT NSString *NSUserName(void);
GS_EXPORT NSString *NSHomeDirectory(void);
GS_EXPORT NSString *NSHomeDirectoryForUser(NSString *loginName);
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Enumeration of possible requested directory type specifiers for
* NSSearchPathForDirectoriesInDomains() function. These correspond to the
* subdirectories that may be found under, e.g., $GNUSTEP_SYSTEM_ROOT, such
* as "Library" and "Applications".
* NSSearchPathForDirectoriesInDomains() function. On a traditional
* GNUstep filesystem layout these correspond to the subdirectories
* that may be found in the various domains, such as "Library"
* and "Applications". In a different filesystem layout these
* directories might be located anywhere on disk.
<example>
{
NSApplicationDirectory,
@ -114,42 +124,57 @@ GS_EXPORT NSString *NSHomeDirectoryForUser(NSString *loginName);
NSDeveloperDirectory,
NSUserDirectory,
NSDocumentationDirectory,
NSDocumentDirectory,
NSCoreServiceDirectory,
NSDesktopDirectory,
NSCachesDirectory,
NSApplicationSupportDirectory
NSAllApplicationsDirectory,
NSAllLibrariesDirectory,
GSLibrariesDirectory,
GSToolsDirectory,
GSApplicationSupportDirectory
GSAdminToolsDirectory,
GSFontsDirectory,
GSFrameworksDirectory,
GSWebApplicationsDirectory
}
</example>
*/
typedef enum
{
NSApplicationDirectory,
NSDemoApplicationDirectory,
NSDeveloperApplicationDirectory,
NSAdminApplicationDirectory,
NSLibraryDirectory,
NSDeveloperDirectory,
NSUserDirectory,
NSDocumentationDirectory,
NSApplicationDirectory = 1, /** Applications */
NSDemoApplicationDirectory, /** Demos */
NSDeveloperApplicationDirectory, /** Developer/Applications */
NSAdminApplicationDirectory, /** Administration */
NSLibraryDirectory, /** Library */
NSDeveloperDirectory, /** Developer */
NSUserDirectory, /** user home directories */
NSDocumentationDirectory, /** Documentation */
#if OS_API_VERSION(100200, GS_API_LATEST)
NSDocumentDirectory, /** Documents */
#endif
#if OS_API_VERSION(100300, GS_API_LATEST)
NSCoreServicesDirectory, /** CoreServices */
#endif
#if OS_API_VERSION(100400, GS_API_LATEST)
NSDesktopDirectory = 12, /** location of users desktop */
NSCachesDirectory = 13, /** location of users cache files */
NSApplicationSupportDirectory = 14, /** location of app support files */
#endif
/* Apple Reserved Directory Identifiers */
NSAllApplicationsDirectory = 100, /** all app directories */
NSAllLibrariesDirectory = 101, /** all library resources */
NSAllApplicationsDirectory,
NSAllLibrariesDirectory,
/* GNUstep Directory Identifiers */
//GSApplicationSupportDirectory = 150,
//GSFontsDirectory,
//GSFrameworksDirectory,
GSLibrariesDirectory,
GSToolsDirectory,
GSApplicationSupportDirectory,
GSPreferencesDirectory,
GSFontsDirectory,
GSFrameworksDirectory
#define GSApplicationSupportDirectory NSApplicationSupportDirectory
/* GNUstep Directory Identifiers
* Start at 1000, we hope Apple will never overlap.
*/
GSLibrariesDirectory = 1000, /** libraries (binary code) */
GSToolsDirectory, /** non-gui programs */
GSFontsDirectory, /** font storage */
GSFrameworksDirectory, /** frameworks */
GSWebApplicationsDirectory, /** web applications (GSWeb or SOPE) */
GSAdminToolsDirectory /** admin non-gui programs */
} NSSearchPathDirectory;
/**
@ -159,19 +184,72 @@ typedef enum
*/
typedef enum
{
NSUserDomainMask = 1,
NSLocalDomainMask = 2,
NSNetworkDomainMask = 4,
NSSystemDomainMask = 8,
NSAllDomainsMask = 0xffffffff,
NSUserDomainMask = 1, /** The user's personal items */
NSLocalDomainMask = 2, /** Local for all users on the machine */
NSNetworkDomainMask = 4, /** Public for all users on network */
NSSystemDomainMask = 8, /** Standard GNUstep items */
NSAllDomainsMask = 0x0ffff, /** all domains */
} NSSearchPathDomainMask;
/**
* Returns an array of search paths to look at for resources.<br/ >
* The paths are returned in domain order:
* USER, LOCAL, NETWORK then SYSTEM.<br />
* The presence of a path in this list does <em>not</em> mean that the
* path actually exists in the filesystem.<br />
* If you are wanting to locate an existing resource, you should normally
* call this function with NSAllDomainsMask, but if you wish to find the
* path in which you should create a new file, you would generally
* specify a particular domain, and then create the path in the file
* system if it does not already exist.
*/
GS_EXPORT NSArray *NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory directoryKey, NSSearchPathDomainMask domainMask, BOOL expandTilde);
/**
* Returns the full username of the current user.
* If unable to determine this, returns the standard user name.
*/
GS_EXPORT NSString *NSFullUserName(void);
/**
* Returns the standard paths in which applications are stored and
* should be searched for. Calls NSSearchPathForDirectoriesInDomains()<br/ >
* Refer to the GNUstep File System Hierarchy documentation for more info.
*/
GS_EXPORT NSArray *NSStandardApplicationPaths(void);
/**
* Returns the standard paths in which resources are stored and
* should be searched for. Calls NSSearchPathForDirectoriesInDomains()<br/ >
* Refer to the GNUstep File System Hierarchy documentation for more info.
*/
GS_EXPORT NSArray *NSStandardLibraryPaths(void);
/**
* Returns the name of a directory in which temporary files can be stored.
* Under GNUstep this is a location which is not readable by other users.
* <br />
* If a suitable directory can't be found or created, this function raises an
* NSGenericException.
*/
GS_EXPORT NSString *NSTemporaryDirectory(void);
/**
* Returns the location of the <em>root</em> directory of the file
* hierarchy. This lets you build paths in a system independent manner
* (for instance the root on unix is '/' but on windows it is 'C:\')
* by appending path components to the root.<br />
* Don't assume that /System, /Network etc exist in this path (generally
* they don't)! Use other path utility functions such as
* NSSearchPathForDirectoriesInDomains() to find standard locations
* for libraries, applications etc.<br />
* Refer to the GNUstep File System Hierarchy documentation for more info.
*/
GS_EXPORT NSString *NSOpenStepRootDirectory(void);
#endif /* !STRICT_OPENSTEP */
#endif /* GS_API_MACOSX */
#if defined(__cplusplus)
}
#endif
#endif /* __NSPathUtilities_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSPort.m
AutogsdocSource: NSSocketPort.m
@ -28,9 +28,10 @@
#ifndef __NSPort_h_GNUSTEP_BASE_INCLUDE
#define __NSPort_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSMapTable.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSMapTable.h>
#if defined(__MINGW32__)
#include <winsock2.h>
@ -40,6 +41,10 @@
#define SOCKET int
#endif
#if defined(__cplusplus)
extern "C" {
#endif
@class NSMutableArray;
@class NSConnection;
@class NSDate;
@ -133,7 +138,7 @@ GS_EXPORT NSString * const NSPortTimeoutException; /* OPENSTEP */
*/
- (BOOL) isValid;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Adds to run loop as input source to be notified for input in given mode.
* This method is for use by subclasses.
@ -183,7 +188,7 @@ GS_EXPORT NSString* const NSPortDidBecomeInvalidNotification;
#define PortBecameInvalidNotification NSPortDidBecomeInvalidNotification
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
/**
* Native socket type.
@ -312,6 +317,10 @@ typedef SOCKET NSSocketNativeHandle;
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSPort_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,14 +18,19 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSPortCoder_h
#define __NSPortCoder_h
#ifndef __NSPortCoder_h_GNUSTEP_BASE_INCLUDE
#define __NSPortCoder_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSCoder.h>
#import <Foundation/NSCoder.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSMutableArray;
@class NSMutableDictionary;
@ -173,4 +178,9 @@
@end
#endif /* __NSPortCoder_h */
#if defined(__cplusplus)
}
#endif
#endif /* __NSPortCoder_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,15 +18,20 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSPortMessage_h_GNUSTEP_BASE_INCLUDE
#define __NSPortMessage_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSArray.h>
#include <Foundation/NSPort.h>
#import <Foundation/NSArray.h>
#import <Foundation/NSPort.h>
#if defined(__cplusplus)
extern "C" {
#endif
/**
* <p>The data transported for distributed objects communications is sent over
@ -100,5 +105,9 @@
- (unsigned) msgid;
@end
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
<title>NSPortNameServer class reference</title>
@ -31,9 +31,16 @@
#ifndef __NSPortNameServer_h_GNUSTEP_BASE_INCLUDE
#define __NSPortNameServer_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSMapTable.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSMapTable.h>
#if OS_API_VERSION(GS_API_MACOSX,HS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@class NSPort, NSString, NSMutableArray;
@ -65,7 +72,25 @@
@interface NSMessagePortNameServer : NSPortNameServer
+ (id) sharedInstance;
/** Returns the [NSMessagePort] instance registered for the specified name
* if it exists on the local host.
*/
- (NSPort*) portForName: (NSString*)name;
/** Returns the port registered for the specified name (if it exists).<br />
* The host must be an empty string or nil, since [NSMessagePort] instances
* on other hosts are inaccessible from the current host.
*/
- (NSPort*) portForName: (NSString*)name
onHost: (NSString*)host;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif

View file

@ -24,9 +24,16 @@
#ifndef __NSPredicate_h_GNUSTEP_BASE_INCLUDE
#define __NSPredicate_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSArray.h>
#if OS_API_VERSION(100400, GS_API_LATEST)
#import <Foundation/NSObject.h>
#import <Foundation/NSArray.h>
#if defined(__cplusplus)
extern "C" {
#endif
@interface NSPredicate : NSObject <NSCoding, NSCopying>
@ -47,4 +54,9 @@
- (NSArray *) filteredArrayUsingPredicate: (NSPredicate *)predicate;
@end
#if defined(__cplusplus)
}
#endif
#endif /* 100400 */
#endif /* __NSPredicate_h_GNUSTEP_BASE_INCLUDE */

View file

@ -20,14 +20,19 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSProcessInfo_h_GNUSTEP_BASE_INCLUDE
#define __NSProcessInfo_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray;
@class NSMutableArray;
@ -35,12 +40,14 @@
@class NSData;
@class NSMutableSet;
#ifndef STRICT_OPENSTEP
/*
* Constants returned by -operatingSystem
#if OS_API_VERSION(GS_API_MACOSX,GS_API_LATEST)
/**
* Constants returned by the -operatingSystem method.
* NB. The presence of a constant in this list does *NOT* imply that
* the named operating system is supported. Some values are provided
* for MacOS-X compatibility only.
* for MacOS-X compatibility or are obsolete and provided for
* backward compatibility.
*/
enum {
NSWindowsNTOperatingSystem = 1,
@ -50,51 +57,203 @@ enum {
NSMACHOperatingSystem,
NSSunOSOperatingSystem,
NSOSF1OperatingSystem,
NSGNULinuxOperatingSystem = 100,
NSBSDOperatingSystem,
NSBeOperatingSystem,
NSCygwinOperatingSystem
#if OS_API_VERSION(GS_API_NONE,GS_API_NONE)
GSGNULinuxOperatingSystem = 100,
GSBSDOperatingSystem,
GSBeOperatingSystem,
GSCygwinOperatingSystem
#if GS_API_VERSION(0,011500)
// Defines of deprecated constants for backward compatibility
#define NSGNULinuxOperatingSystem GSGNULinuxOperatingSystem
#define NSBSDOperatingSystem GSBSDOperatingSystem
#define NSBeOperatingSystem GSBeOperatingSystem
#define NSCygwinOperatingSystem GSCygwinOperatingSystem
#endif /* GS_API_VERSION(0,011500) */
#endif /* OS_API_VERSION(GS_API_NONE,GS_API_NONE) */
};
#endif
#endif /* OS_API_VERSION(GS_API_MACOSX,GS_API_LATEST) */
@interface NSProcessInfo: NSObject
/**
* Returns the shared NSProcessInfo object for the current process.
*/
+ (NSProcessInfo*) processInfo;
/**
* Returns an array containing the arguments supplied to start this
* process.<br />
* NB. In GNUstep, any arguments of the form --GNU-Debug=...
* are <em>not</em> included in this array ... they are part of the
* debug mechanism, and are hidden so that setting debug variables
* will not effect the normal operation of the program.<br />
* Please note, the special <code>--GNU-Debug=...</code> syntax differs from
* that which is used to specify values for the [NSUserDefaults] system.<br />
* User defaults are set on the command line by specifying the default name
* (with a leading hyphen) as one argument, and the default value as the
* following argument. The arguments used to set user defaults are
* present in the array returned by this method.
*/
- (NSArray*) arguments;
/**
* Returns a dictionary giving the environment variables which were
* provided for the process to use.
*/
- (NSDictionary*) environment;
/**
* Returns a string which may be used as a globally unique identifier.<br />
* The string contains the host name, the process ID, a timestamp and a
* counter.<br />
* The first three values identify the process in which the string is
* generated, while the fourth ensures that multiple strings generated
* within the same process are unique.
*/
- (NSString*) globallyUniqueString;
/**
* Returns the name of the machine on which this process is running.
*/
- (NSString*) hostName;
#ifndef STRICT_OPENSTEP
#if OS_API_VERSION(GS_API_MACOSX,GS_API_LATEST)
/**
* Return a number representing the operating system type.<br />
* The known types are listed in the header file, but not all of the
* listed types are actually implemented ... some are present for
* MacOS-X compatibility only.<br />
* <list>
* <item>NSWindowsNTOperatingSystem - used for Windows NT, and later</item>
* <item>NSWindows95OperatingSystem - probably never to be implemented</item>
* <item>NSSolarisOperatingSystem - used for Sun Solaris</item>
* <item>NSHPUXOperatingSystem - used for HP/UX</item>
* <item>NSMACHOperatingSystem - MacOSX and perhaps Hurd in future?</item>
* <item>NSSunOSOperatingSystem - Used for Sun Sun/OS</item>
* <item>NSOSF1OperatingSystem - Used for OSF/1 (probably obsolete)</item>
* <item>GSGNULinuxOperatingSystem - the GNUstep 'standard'</item>
* <item>GSBSDOperatingSystem - BSD derived operating systems</item>
* <item>GSBeperatingSystem - Used for Be-OS (probably obsolete)</item>
* <item>GSCygwinOperatingSystem - cygwin unix-like environment</item>
* </list>
*/
- (unsigned int) operatingSystem;
/**
* Return a human readable string representing the operating system type.<br />
* The supported types are -
* <list>
* <item>NSWindowsNTOperatingSystem - used for Windows NT, and later</item>
* <item>NSWindows95OperatingSystem - probably never to be implemented</item>
* <item>NSSolarisOperatingSystem - used for Sun Solaris</item>
* <item>NSHPUXOperatingSystem - used for HP/UX</item>
* <item>NSMACHOperatingSystem - MacOSX and perhaps Hurd in future?</item>
* <item>NSSunOSOperatingSystem - Used for Sun Sun/OS</item>
* <item>NSOSF1OperatingSystem - Used for OSF/1 (probably obsolete)</item>
* <item>GSGNULinuxOperatingSystem - the GNUstep 'standard'</item>
* <item>GSBSDOperatingSystem - BSD derived operating systems</item>
* <item>GSBeperatingSystem - Used for Be-OS (probably obsolete)</item>
* <item>GSCygwinOperatingSystem - cygwin unix-like environment</item>
* </list>
*/
- (NSString*) operatingSystemName;
/**
* Returns a human readable version string for the current operating system
* version.
*/
#if OS_API_VERSION(100200,GS_API_LATEST)
- (NSString *) operatingSystemVersionString;
#endif
/**
* Returns the process identifier number which uniquely identifies
* this process on this machine.
*/
- (int) processIdentifier;
#endif
/**
* Returns the process name for this process. This may have been set using
* the -setProcessName: method, or may be the default process name (the
* file name of the binary being executed).
*/
- (NSString*) processName;
/**
* Change the name of the current process to newName.
*/
- (void) setProcessName: (NSString*)newName;
@end
#ifndef NO_GNUSTEP
#if OS_API_VERSION(GS_API_NONE,GS_API_NONE)
/**
* Provides GNUstep-specific methods for controlled debug logging (a GNUstep
* facility) and an internal/developer-related method.
*/
@interface NSProcessInfo (GNUstep)
/**
* Returns a indication of whether debug logging is enabled.
* This returns YES unless a call to -setDebugLoggingEnabled: has
* been used to turn logging off.
*/
- (BOOL) debugLoggingEnabled;
/**
* This method returns a set of debug levels set using the
* --GNU-Debug=... command line option and/or the GNU-Debug
* user default.<br />
* You can modify this set to change the debug logging under
* your programs control ... but such modifications are not
* thread-safe.
*/
- (NSMutableSet*) debugSet;
/**
* This method permits you to turn all debug logging on or off
* without modifying the set of debug levels in use.
*/
- (void) setDebugLoggingEnabled: (BOOL)flag;
/**
* Set the file to which NSLog output should be directed.<br />
* Returns YES on success, NO on failure.<br />
* By default logging goes to standard error.
*/
- (BOOL) setLogFile: (NSString*)path;
/**
* Fallback/override method. The developer must call this method to initialize
* the NSProcessInfo system if none of the system-specific hacks to
* auto-initialize it are working.<br />
* It is also safe to call this method to override the effects
* of the automatic initialisation, which some applications may need
* to do when using GNUstep libraries embeddedm within other frameworks.
*/
+ (void) initializeWithArguments: (char**)argv
count: (int)argc
environment: (char**)env;
@end
/*
* This function determines if the specified debug level is present in the
* set of active debug levels.
/**
* Function for rapid testing to see if a debug level is set.<br />
* This is used by the debugging macros.<br />
* If debug logging has been turned off, this returns NO even if
* the specified level exists in the set of debug levels.
*/
GS_EXPORT BOOL GSDebugSet(NSString *level);
#endif /* GS_API_NONE */
#if defined(__cplusplus)
}
#endif
#endif /* __NSProcessInfo_h_GNUSTEP_BASE_INCLUDE */

View file

@ -18,8 +18,8 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSPropertyList.m
@ -27,10 +27,15 @@
#ifndef __NSPropertyList_h_GNUSTEP_BASE_INCLUDE
#define __NSPropertyList_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#ifndef STRICT_OPENSTEP
#import <Foundation/NSObject.h>
#include <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
@class NSData, NSString;
@ -39,7 +44,7 @@
* deserialisation of a property list.
*/
typedef enum {
NSPropertyListImmutable,
NSPropertyListImmutable = 0,
/** <strong>NSPropertyListImmutable</strong>
* all objects in created list are immutable
*/
@ -57,19 +62,22 @@ typedef enum {
* Specifies the serialisation format for a serialised property list.
*/
typedef enum {
NSPropertyListGNUstepFormat,
NSPropertyListOpenStepFormat = 1,
/** <strong>NSPropertyListOpenStepFormat</strong>
* the most human-readable format */
NSPropertyListXMLFormat_v1_0 = 100,
/** <strong>NSPropertyListXMLFormat_v1_0</strong>
* portable and readable */
NSPropertyListBinaryFormat_v1_0 = 200,
/** <strong>NSPropertyListBinaryFormat_v1_0</strong>
* the standard format on macos-x */
NSPropertyListGNUstepFormat = 1000,
/** <strong>NSPropertyListGNUstepFormat</strong>
* extension of OpenStep format */
NSPropertyListGNUstepBinaryFormat,
/** <strong>NSPropertyListGNUstepBinaryFormat</strong>
* efficient, hardware independent */
NSPropertyListOpenStepFormat,
/** <strong>NSPropertyListOpenStepFormat</strong>
* the most human-readable format */
NSPropertyListXMLFormat_v1_0,
/** <strong>NSPropertyListXMLFormat_v1_0</strong>
* portable and readable */
NSPropertyListBinaryFormat_v1_0,
} NSPropertyListFormat;
/**
@ -246,5 +254,10 @@ typedef enum {
@end
#endif /* STRICT_OPENSTEP */
#endif /* GS_API_MACOSX */
#if defined(__cplusplus)
}
#endif
#endif /* __NSPropertyList_h_GNUSTEP_BASE_INCLUDE*/

View file

@ -18,15 +18,20 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSProtocolChecker_h_GNUSTEP_BASE_INCLUDE
#define __NSProtocolChecker_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#include <Foundation/NSProxy.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSProxy.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class Protocol;
@ -54,4 +59,8 @@
@end
#if defined(__cplusplus)
}
#endif
#endif

View file

@ -18,14 +18,19 @@
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., 51 Franklin Street, Fifth Floor, Boston,
MA 02111 USA.
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
*/
#ifndef __NSProxy_h_GNUSTEP_BASE_INCLUDE
#define __NSProxy_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#include <Foundation/NSObject.h>
#import <Foundation/NSObject.h>
#if defined(__cplusplus)
extern "C" {
#endif
@interface NSProxy <NSObject>
{
@ -75,4 +80,8 @@
@end
#if defined(__cplusplus)
}
#endif
#endif /* __NSProxy_h_GNUSTEP_BASE_INCLUDE */

Some files were not shown because too many files have changed in this diff Show more