From 74aba98c7ff47291c8e910e876d1db911f8ccf0f Mon Sep 17 00:00:00 2001 From: Gregory John Casamento Date: Fri, 22 Dec 2023 15:05:43 -0500 Subject: [PATCH] Update to new version of the documentation --- .../Reference/BaseAdditions.html | 160 +- .../Reference/BaseAdditions.igsdoc | 2730 +++ .../BaseAdditions/Reference/ClassesTOC.gsdoc | 13 + .../BaseAdditions/Reference/ClassesTOC.html | 63 +- .../Reference/ConstantsTOC.gsdoc | 13 + .../BaseAdditions/Reference/ConstantsTOC.html | 14 +- .../BaseAdditions/Reference/Functions.gsdoc | 10617 ++++++++++++ .../BaseAdditions/Reference/Functions.html | 13785 ++++++++++++++-- .../Reference/FunctionsTOC.gsdoc | 13 + .../BaseAdditions/Reference/FunctionsTOC.html | 258 +- .../BaseAdditions/Reference/GCObject.gsdoc | 373 + .../BaseAdditions/Reference/GCObject.html | 61 +- .../BaseAdditions/Reference/GSLock.gsdoc | 98 + .../BaseAdditions/Reference/GSLock.html | 7 +- .../BaseAdditions/Reference/GSMime.gsdoc | 2097 +++ .../BaseAdditions/Reference/GSMime.html | 832 +- .../BaseAdditions/Reference/GSTLS.gsdoc | 529 + .../BaseAdditions/Reference/GSTLS.html | 1087 ++ .../BaseAdditions/Reference/GSXML.gsdoc | 2510 +++ .../BaseAdditions/Reference/GSXML.html | 653 +- .../BaseAdditions/Reference/MacrosTOC.gsdoc | 13 + .../BaseAdditions/Reference/MacrosTOC.html | 116 +- .../Reference/NSArray+GNUstepBase.gsdoc | 65 + .../Reference/NSArray+GNUstepBase.html | 9 +- .../NSAttributedString+GNUstepBase.gsdoc | 39 + .../NSAttributedString+GNUstepBase.html | 3 +- .../Reference/NSBundle+GNUstepBase.gsdoc | 40 + .../Reference/NSBundle+GNUstepBase.html | 3 +- .../NSCalendarDate+GNUstepBase.gsdoc | 57 + .../Reference/NSCalendarDate+GNUstepBase.html | 9 +- .../Reference/NSData+GNUstepBase.gsdoc | 193 + .../Reference/NSData+GNUstepBase.html | 39 +- .../Reference/NSFileHandle+GNUstepBase.gsdoc | 46 + .../Reference/NSFileHandle+GNUstepBase.html | 5 +- .../Reference/NSLock+GNUstepBase.gsdoc | 114 + .../Reference/NSLock+GNUstepBase.html | 28 +- .../NSMutableString+GNUstepBase.gsdoc | 77 + .../NSMutableString+GNUstepBase.html | 15 +- .../Reference/NSNumber+GNUstepBase.gsdoc | 45 + .../Reference/NSNumber+GNUstepBase.html | 3 +- .../Reference/NSObject+GNUstepBase.gsdoc | 467 + .../Reference/NSObject+GNUstepBase.html | 310 +- .../Reference/NSProcessInfo+GNUstepBase.gsdoc | 60 + .../Reference/NSProcessInfo+GNUstepBase.html | 9 +- .../Reference/NSString+GNUstepBase.gsdoc | 107 + .../Reference/NSString+GNUstepBase.html | 17 +- .../Reference/NSTask+GNUstepBase.gsdoc | 66 + .../Reference/NSTask+GNUstepBase.html | 9 +- .../Reference/NSThread+GNUstepBase.gsdoc | 29 + .../Reference/NSThread+GNUstepBase.html | 1 + .../Reference/NSURL+GNUstepBase.gsdoc | 97 + .../Reference/NSURL+GNUstepBase.html | 28 +- .../Reference/OrderedSymbolDeclarations.plist | 517 + .../Reference/Reference/BaseAdditions.html | 121 + .../Reference/Reference/ClassesTOC.html | 46 + .../Reference/Reference/ConstantsTOC.html | 19 + .../Reference/Reference/Functions.html | 4005 +++++ .../Reference/Reference/FunctionsTOC.html | 146 + .../Reference/Reference/GCObject.html | 741 + .../{ => Reference}/GSCategories.html | 0 .../Reference/Reference/GSLock.html | 184 + .../Reference/Reference/GSMime.html | 3286 ++++ .../Reference/Reference/GSXML.html | 4344 +++++ .../Reference/Reference/MacrosTOC.html | 60 + .../Reference/Reference/MainIndex.html | 14 + .../Reference/NSArray+GNUstepBase.html | 105 + .../NSAttributedString+GNUstepBase.html | 68 + .../Reference/NSBundle+GNUstepBase.html | 65 + .../Reference/NSCalendarDate+GNUstepBase.html | 95 + .../Reference/NSData+GNUstepBase.html | 301 + .../Reference/NSFileHandle+GNUstepBase.html | 79 + .../Reference/NSLock+GNUstepBase.html | 162 + .../NSMutableString+GNUstepBase.html | 150 + .../Reference/NSNumber+GNUstepBase.html | 74 + .../Reference/NSObject+GNUstepBase.html | 537 + .../Reference/NSProcessInfo+GNUstepBase.html | 106 + .../Reference/NSString+GNUstepBase.html | 185 + .../Reference/NSTask+GNUstepBase.html | 111 + .../Reference/NSThread+GNUstepBase.html | 47 + .../Reference/NSURL+GNUstepBase.html | 144 + .../Reference/TypesAndConstants.html | 418 + .../Reference/Reference/TypesTOC.html | 35 + .../Reference/Reference/VariablesTOC.html | 24 + .../Reference/Reference/index.html | 15 + .../Reference/TypesAndConstants.gsdoc | 313 + .../Reference/TypesAndConstants.html | 277 +- .../BaseAdditions/Reference/TypesTOC.gsdoc | 13 + .../BaseAdditions/Reference/TypesTOC.html | 36 +- .../Reference/VariablesTOC.gsdoc | 13 + .../BaseAdditions/Reference/VariablesTOC.html | 12 +- 90 files changed, 52731 insertions(+), 2169 deletions(-) create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.igsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Functions.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/GCObject.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/GSLock.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/GSMime.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/GSTLS.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/GSTLS.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/GSXML.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/OrderedSymbolDeclarations.plist create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/BaseAdditions.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/ClassesTOC.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/ConstantsTOC.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/Functions.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/FunctionsTOC.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/GCObject.html rename resources/documentation/Developer/BaseAdditions/Reference/{ => Reference}/GSCategories.html (100%) create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/GSLock.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/GSMime.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/GSXML.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/MacrosTOC.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/MainIndex.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSArray+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSAttributedString+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSBundle+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSCalendarDate+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSData+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSFileHandle+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSLock+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSMutableString+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSNumber+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSObject+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSProcessInfo+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSString+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSTask+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSThread+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/NSURL+GNUstepBase.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesAndConstants.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesTOC.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/VariablesTOC.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/Reference/index.html create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.gsdoc create mode 100644 resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.gsdoc diff --git a/resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.html b/resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.html index 9be50bc..7067d3a 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.html @@ -14,8 +14,8 @@

Authors

-

Version: $Revision: 1.42 $

-

Date: $Date: 2015/09/15 14:18:06 $

+

Version: $Revision$

+

Date: $Date$

Copyright: (C) 2005 Free Software Foundation, Inc.

@@ -31,88 +31,96 @@

Base Additions

Title Index
Class Category

diff --git a/resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.igsdoc b/resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.igsdoc new file mode 100644 index 0000000..021f76c --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/BaseAdditions.igsdoc @@ -0,0 +1,2730 @@ +{ + categories = { + GCObject = { + Extra = GCObject; + }; + GSXMLDocument = { + XSLT = GSXML; + }; + GSXMLRPC = { + Delegate = GSXML; + }; + NSArray = { + GNUstepBase = "NSArray+GNUstepBase"; + }; + NSAttributedString = { + GNUstepBase = "NSAttributedString+GNUstepBase"; + }; + NSBundle = { + GNUstepBase = "NSBundle+GNUstepBase"; + }; + NSCalendarDate = { + GNUstepBase = "NSCalendarDate+GNUstepBase"; + }; + NSData = { + GNUstepBase = "NSData+GNUstepBase"; + }; + NSFileHandle = { + GNUstepBase = "NSFileHandle+GNUstepBase"; + }; + NSLock = { + GNUstepBase = "NSLock+GNUstepBase"; + }; + NSMutableString = { + GNUstepBase = "NSMutableString+GNUstepBase"; + }; + NSNumber = { + GNUstepBase = "NSNumber+GNUstepBase"; + }; + NSObject = { + GNUstepBase = "NSObject+GNUstepBase"; + GSAtExit = "NSObject+GNUstepBase"; + GSCleanup = "NSObject+GNUstepBase"; + GSMimeSMTPClient = GSMime; + MemoryFootprint = "NSObject+GNUstepBase"; + }; + NSProcessInfo = { + GNUstepBase = "NSProcessInfo+GNUstepBase"; + }; + NSRecursiveLock = { + GNUstepBase = "NSLock+GNUstepBase"; + }; + NSString = { + GNUstepBase = "NSString+GNUstepBase"; + GSXML = GSXML; + }; + NSTask = { + GNUstepBase = "NSTask+GNUstepBase"; + }; + NSThread = { + GNUstepBase = "NSThread+GNUstepBase"; + }; + NSURL = { + GNUstepBase = "NSURL+GNUstepBase"; + GNUstepBaseAdditions = "NSURL+GNUstepBase"; + }; + }; + category = { + "GCObject(Extra)" = GCObject; + "GSXMLDocument(XSLT)" = GSXML; + "GSXMLRPC(Delegate)" = GSXML; + "NSArray(GNUstepBase)" = "NSArray+GNUstepBase"; + "NSAttributedString(GNUstepBase)" = "NSAttributedString+GNUstepBase"; + "NSBundle(GNUstepBase)" = "NSBundle+GNUstepBase"; + "NSCalendarDate(GNUstepBase)" = "NSCalendarDate+GNUstepBase"; + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + "NSFileHandle(GNUstepBase)" = "NSFileHandle+GNUstepBase"; + "NSLock(GNUstepBase)" = "NSLock+GNUstepBase"; + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + "NSNumber(GNUstepBase)" = "NSNumber+GNUstepBase"; + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + "NSObject(GSAtExit)" = "NSObject+GNUstepBase"; + "NSObject(GSCleanup)" = "NSObject+GNUstepBase"; + "NSObject(GSMimeSMTPClient)" = GSMime; + "NSObject(MemoryFootprint)" = "NSObject+GNUstepBase"; + "NSProcessInfo(GNUstepBase)" = "NSProcessInfo+GNUstepBase"; + "NSRecursiveLock(GNUstepBase)" = "NSLock+GNUstepBase"; + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + "NSString(GSXML)" = GSXML; + "NSTask(GNUstepBase)" = "NSTask+GNUstepBase"; + "NSThread(GNUstepBase)" = "NSThread+GNUstepBase"; + "NSURL(GNUstepBase)" = "NSURL+GNUstepBase"; + "NSURL(GNUstepBaseAdditions)" = "NSURL+GNUstepBase"; + }; + class = { + GCArray = GCObject; + GCDictionary = GCObject; + GCMutableArray = GCObject; + GCMutableDictionary = GCObject; + GCObject = GCObject; + GSHTMLParser = GSXML; + GSHTMLSAXHandler = GSXML; + GSLazyLock = GSLock; + GSLazyRecursiveLock = GSLock; + GSMimeCodingContext = GSMime; + GSMimeDocument = GSMime; + GSMimeHeader = GSMime; + GSMimeParser = GSMime; + GSMimeSMTPClient = GSMime; + GSMimeSerializer = GSMime; + GSSAXHandler = GSXML; + GSTLSCertificateList = GSTLS; + GSTLSCredentials = GSTLS; + GSTLSDHParams = GSTLS; + GSTLSObject = GSTLS; + GSTLSPrivateKey = GSTLS; + GSTLSSession = GSTLS; + GSTreeSAXHandler = GSXML; + GSXMLAttribute = GSXML; + GSXMLDocument = GSXML; + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + GSXMLParser = GSXML; + GSXMLRPC = GSXML; + GSXPathBoolean = GSXML; + GSXPathContext = GSXML; + GSXPathNodeSet = GSXML; + GSXPathNumber = GSXML; + GSXPathObject = GSXML; + GSXPathString = GSXML; + }; + classvars = { + GCArray = { + "_contents" = GCObject; + "_count" = GCObject; + "_isGCObject" = GCObject; + gc = GCObject; + }; + GCDictionary = { + "_map" = GCObject; + gc = GCObject; + }; + GCMutableArray = { + "_contents" = GCObject; + "_count" = GCObject; + "_isGCObject" = GCObject; + "_maxCount" = GCObject; + gc = GCObject; + }; + GCMutableDictionary = { + "_map" = GCObject; + gc = GCObject; + }; + GCObject = { + gc = GCObject; + }; + GSLazyLock = { + locked = GSLock; + }; + GSLazyRecursiveLock = { + counter = GSLock; + }; + GSMimeCodingContext = { + atEnd = GSMime; + }; + GSMimeDocument = { + "_unused" = GSMime; + content = GSMime; + headers = GSMime; + }; + GSMimeHeader = { + lower = GSMime; + name = GSMime; + objects = GSMime; + params = GSMime; + value = GSMime; + }; + GSMimeParser = { + "_defaultEncoding" = GSMime; + "_unused" = GSMime; + boundary = GSMime; + bytes = GSMime; + child = GSMime; + context = GSMime; + data = GSMime; + dataEnd = GSMime; + document = GSMime; + expect = GSMime; + input = GSMime; + lineEnd = GSMime; + lineStart = GSMime; + rawBodyLength = GSMime; + sectionStart = GSMime; + }; + GSMimeSerializer = { + dataEncoding = GSMime; + foldAt = GSMime; + textEncoding = GSMime; + use8bit = GSMime; + }; + GSSAXHandler = { + isHtmlHandler = GSXML; + lib = GSXML; + parser = GSXML; + }; + GSTLSCertificateList = { + count = GSTLS; + crts = GSTLS; + path = GSTLS; + when = GSTLS; + }; + GSTLSCredentials = { + certcred = GSTLS; + dhParams = GSTLS; + freeCred = GSTLS; + key = GSTLS; + list = GSTLS; + name = GSTLS; + trust = GSTLS; + when = GSTLS; + }; + GSTLSDHParams = { + params = GSTLS; + path = GSTLS; + when = GSTLS; + }; + GSTLSPrivateKey = { + key = GSTLS; + password = GSTLS; + path = GSTLS; + when = GSTLS; + }; + GSTLSSession = { + active = GSTLS; + created = GSTLS; + credentials = GSTLS; + debug = GSTLS; + handle = GSTLS; + handshake = GSTLS; + issuer = GSTLS; + opts = GSTLS; + outgoing = GSTLS; + owner = GSTLS; + problem = GSTLS; + session = GSTLS; + setup = GSTLS; + }; + GSXMLDocument = { + "_ownsLib" = GSXML; + "_parent" = GSXML; + lib = GSXML; + }; + GSXMLNamespace = { + "_parent" = GSXML; + lib = GSXML; + }; + GSXMLNode = { + "_parent" = GSXML; + lib = GSXML; + }; + GSXMLParser = { + lib = GSXML; + messages = GSXML; + saxHandler = GSXML; + src = GSXML; + }; + GSXPathContext = { + "_document" = GSXML; + "_lib" = GSXML; + }; + GSXPathObject = { + "_context" = GSXML; + "_lib" = GSXML; + }; + }; + constant = { + GSMimeErrorDomain = TypesAndConstants; + GSTLSCAFile = TypesAndConstants; + GSTLSCertificateFile = TypesAndConstants; + GSTLSCertificateKeyFile = TypesAndConstants; + GSTLSCertificateKeyPassword = TypesAndConstants; + GSTLSDebug = TypesAndConstants; + GSTLSIssuers = TypesAndConstants; + GSTLSOwners = TypesAndConstants; + GSTLSPriority = TypesAndConstants; + GSTLSRemoteHosts = TypesAndConstants; + GSTLSRevokeFile = TypesAndConstants; + GSTLSServerName = TypesAndConstants; + GSTLSVerify = TypesAndConstants; + }; + function = { + GSAutoreleasedBuffer = Functions; + GSCGetInstanceVariableDefinition = Functions; + GSClassFromName = Functions; + GSClassList = Functions; + GSClassNameFromObject = Functions; + GSClassSwizzle = Functions; + GSCurrentThread = Functions; + GSCurrentThreadDictionary = Functions; + GSDebugFunctionMsg = Functions; + GSDebugMethodMsg = Functions; + GSDebugSet = Functions; + GSDefaultLanguageLocale = Functions; + GSDomainFromDefaultLocale = Functions; + GSEncodingForRegistry = Functions; + GSEncodingFromLocale = Functions; + GSFindNamedFile = Functions; + GSFlushMethodCacheForClass = Functions; + GSFromUnicode = Functions; + GSGetMethod = Functions; + GSIArrayAddItem = Functions; + GSIArrayAddItemNoRetain = Functions; + GSIArrayCapacity = Functions; + GSIArrayCheckSort = Functions; + GSIArrayClear = Functions; + GSIArrayCopyWithZone = Functions; + GSIArrayCount = Functions; + GSIArrayEmpty = Functions; + GSIArrayGrow = Functions; + GSIArrayGrowTo = Functions; + GSIArrayInitWithZoneAndCapacity = Functions; + GSIArrayInitWithZoneAndStaticCapacity = Functions; + GSIArrayInsertItem = Functions; + GSIArrayInsertItemNoRetain = Functions; + GSIArrayInsertSorted = Functions; + GSIArrayInsertSortedNoRetain = Functions; + GSIArrayInsertionPosition = Functions; + GSIArrayItemAtIndex = Functions; + GSIArrayItems = Functions; + GSIArrayLastItem = Functions; + GSIArrayRemoveAllItems = Functions; + GSIArrayRemoveItemAtIndex = Functions; + GSIArrayRemoveItemAtIndexNoRelease = Functions; + GSIArrayRemoveItemsFromIndex = Functions; + GSIArrayRemoveLastItem = Functions; + GSIArraySearch = Functions; + GSIArraySetItemAtIndex = Functions; + GSIArraySize = Functions; + GSIMapAddKey = Functions; + GSIMapAddKeyNoRetain = Functions; + GSIMapAddNodeToBucket = Functions; + GSIMapAddNodeToMap = Functions; + GSIMapAddPair = Functions; + GSIMapAddPairNoRetain = Functions; + GSIMapBucketForKey = Functions; + GSIMapCleanMap = Functions; + GSIMapCountByEnumeratingWithStateObjectsCount = Functions; + GSIMapEmptyMap = Functions; + GSIMapEndEnumerator = Functions; + GSIMapEnumeratorBucket = Functions; + GSIMapEnumeratorForMap = Functions; + GSIMapEnumeratorNextNode = Functions; + GSIMapFirstNode = Functions; + GSIMapFreeNode = Functions; + GSIMapInitWithZoneAndCapacity = Functions; + GSIMapLinkNodeIntoBucket = Functions; + GSIMapMoreNodes = Functions; + GSIMapNodeForKey = Functions; + GSIMapNodeForKeyInBucket = Functions; + GSIMapNodeForSimpleKey = Functions; + GSIMapPickBucket = Functions; + GSIMapRemangleBuckets = Functions; + GSIMapRemoveAndFreeNode = Functions; + GSIMapRemoveKey = Functions; + GSIMapRemoveNodeFromBucket = Functions; + GSIMapRemoveNodeFromMap = Functions; + GSIMapRemoveWeak = Functions; + GSIMapResize = Functions; + GSIMapRightSizeMap = Functions; + GSIMapSize = Functions; + GSIMapUnlinkNodeFromBucket = Functions; + GSLanguageFromLocale = Functions; + GSLanguagesFromLocale = Functions; + GSLastErrorStr = Functions; + GSLocaleVariants = Functions; + GSNameFromClass = Functions; + GSNameFromSelector = Functions; + GSObjCAddClassBehavior = Functions; + GSObjCAddClassOverride = Functions; + GSObjCAddClasses = Functions; + GSObjCAddMethods = Functions; + GSObjCAllSubclassesOfClass = Functions; + GSObjCBehaviorDebug = Functions; + GSObjCClass = Functions; + GSObjCDirectSubclassesOfClass = Functions; + GSObjCFindVariable = Functions; + GSObjCGetInstanceVariableDefinition = Functions; + GSObjCGetVal = Functions; + GSObjCGetVariable = Functions; + GSObjCIsClass = Functions; + GSObjCIsInstance = Functions; + GSObjCIsKindOf = Functions; + GSObjCMakeClass = Functions; + GSObjCMethodNames = Functions; + GSObjCSetVal = Functions; + GSObjCSetVariable = Functions; + GSObjCSuper = Functions; + GSObjCVariableNames = Functions; + GSObjCVersion = Functions; + GSPathHandling = Functions; + GSPrintf = Functions; + GSProtocolFromName = Functions; + GSProtocolGetMethodDescriptionRecursive = Functions; + GSRegisterProtocol = Functions; + GSSelectorFromName = Functions; + GSSelectorFromNameAndTypes = Functions; + GSSelectorTypesMatch = Functions; + GSSetLocale = Functions; + GSSetLocaleC = Functions; + GSSkipTypeQualifierAndLayoutInfo = Functions; + GSToUnicode = Functions; + GSTypesFromSelector = Functions; + GSUnicode = Functions; + "_Block_copy" = Functions; + "_Block_release" = Functions; + "gs_consumed" = Functions; + "uni_cop" = Functions; + "uni_is_decomp" = Functions; + "uni_isnonsp" = Functions; + "uni_tolower" = Functions; + "uni_toupper" = Functions; + }; + ivariable = { + "_contents" = { + GCArray = GCObject; + GCMutableArray = GCObject; + }; + "_context" = { + GSXPathObject = GSXML; + }; + "_count" = { + GCArray = GCObject; + GCMutableArray = GCObject; + }; + "_defaultEncoding" = { + GSMimeParser = GSMime; + }; + "_document" = { + GSXPathContext = GSXML; + }; + "_isGCObject" = { + GCArray = GCObject; + GCMutableArray = GCObject; + }; + "_lib" = { + GSXPathContext = GSXML; + GSXPathObject = GSXML; + }; + "_map" = { + GCDictionary = GCObject; + GCMutableDictionary = GCObject; + }; + "_maxCount" = { + GCMutableArray = GCObject; + }; + "_ownsLib" = { + GSXMLDocument = GSXML; + }; + "_parent" = { + GSXMLDocument = GSXML; + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + }; + "_unused" = { + GSMimeDocument = GSMime; + GSMimeParser = GSMime; + }; + active = { + GSTLSSession = GSTLS; + }; + atEnd = { + GSMimeCodingContext = GSMime; + }; + boundary = { + GSMimeParser = GSMime; + }; + bytes = { + GSMimeParser = GSMime; + }; + certcred = { + GSTLSCredentials = GSTLS; + }; + child = { + GSMimeParser = GSMime; + }; + content = { + GSMimeDocument = GSMime; + }; + context = { + GSMimeParser = GSMime; + }; + count = { + GSTLSCertificateList = GSTLS; + }; + counter = { + GSLazyRecursiveLock = GSLock; + }; + created = { + GSTLSSession = GSTLS; + }; + credentials = { + GSTLSSession = GSTLS; + }; + crts = { + GSTLSCertificateList = GSTLS; + }; + data = { + GSMimeParser = GSMime; + }; + dataEncoding = { + GSMimeSerializer = GSMime; + }; + dataEnd = { + GSMimeParser = GSMime; + }; + debug = { + GSTLSSession = GSTLS; + }; + dhParams = { + GSTLSCredentials = GSTLS; + }; + document = { + GSMimeParser = GSMime; + }; + expect = { + GSMimeParser = GSMime; + }; + foldAt = { + GSMimeSerializer = GSMime; + }; + freeCred = { + GSTLSCredentials = GSTLS; + }; + gc = { + GCArray = GCObject; + GCDictionary = GCObject; + GCMutableArray = GCObject; + GCMutableDictionary = GCObject; + GCObject = GCObject; + }; + handle = { + GSTLSSession = GSTLS; + }; + handshake = { + GSTLSSession = GSTLS; + }; + headers = { + GSMimeDocument = GSMime; + }; + input = { + GSMimeParser = GSMime; + }; + isHtmlHandler = { + GSSAXHandler = GSXML; + }; + issuer = { + GSTLSSession = GSTLS; + }; + key = { + GSTLSCredentials = GSTLS; + GSTLSPrivateKey = GSTLS; + }; + lib = { + GSSAXHandler = GSXML; + GSXMLDocument = GSXML; + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + GSXMLParser = GSXML; + }; + lineEnd = { + GSMimeParser = GSMime; + }; + lineStart = { + GSMimeParser = GSMime; + }; + list = { + GSTLSCredentials = GSTLS; + }; + locked = { + GSLazyLock = GSLock; + }; + lower = { + GSMimeHeader = GSMime; + }; + messages = { + GSXMLParser = GSXML; + }; + name = { + GSMimeHeader = GSMime; + GSTLSCredentials = GSTLS; + }; + objects = { + GSMimeHeader = GSMime; + }; + opts = { + GSTLSSession = GSTLS; + }; + outgoing = { + GSTLSSession = GSTLS; + }; + owner = { + GSTLSSession = GSTLS; + }; + params = { + GSMimeHeader = GSMime; + GSTLSDHParams = GSTLS; + }; + parser = { + GSSAXHandler = GSXML; + }; + password = { + GSTLSPrivateKey = GSTLS; + }; + path = { + GSTLSCertificateList = GSTLS; + GSTLSDHParams = GSTLS; + GSTLSPrivateKey = GSTLS; + }; + problem = { + GSTLSSession = GSTLS; + }; + rawBodyLength = { + GSMimeParser = GSMime; + }; + saxHandler = { + GSXMLParser = GSXML; + }; + sectionStart = { + GSMimeParser = GSMime; + }; + session = { + GSTLSSession = GSTLS; + }; + setup = { + GSTLSSession = GSTLS; + }; + src = { + GSXMLParser = GSXML; + }; + textEncoding = { + GSMimeSerializer = GSMime; + }; + trust = { + GSTLSCredentials = GSTLS; + }; + use8bit = { + GSMimeSerializer = GSMime; + }; + value = { + GSMimeHeader = GSMime; + }; + when = { + GSTLSCertificateList = GSTLS; + GSTLSCredentials = GSTLS; + GSTLSDHParams = GSTLS; + GSTLSPrivateKey = GSTLS; + }; + }; + macro = { + ALog = Functions; + ASSIGN = Functions; + ASSIGNCOPY = Functions; + ASSIGNMUTABLECOPY = Functions; + AUTORELEASE = Functions; + "BLOCK_SCOPE" = Functions; + "CALL_BLOCK" = Functions; + "CALL_BLOCK_NO_ARGS" = Functions; + "CALL_BLOCK_RET" = Functions; + "CALL_BLOCK_RET_NO_ARGS" = Functions; + "CALL_NON_NULL_BLOCK" = Functions; + "CALL_NON_NULL_BLOCK_NO_ARGS" = Functions; + "CHECK_INDEX_RANGE_ERROR" = Functions; + "CREATE_AUTORELEASE_POOL" = Functions; + DEALLOC = Functions; + "DEFINE_BLOCK_TYPE" = Functions; + "DEFINE_BLOCK_TYPE_NO_ARGS" = Functions; + DESTROY = Functions; + DLog = Functions; + "ENTER_POOL" = Functions; + GSLocalizedStaticString = Functions; + GSOnceFLog = Functions; + GSOnceMLog = Functions; + "GS_API_LATEST" = Functions; + "GS_API_MACOSX" = Functions; + "GS_API_NONE" = Functions; + "GS_API_OPENSTEP" = Functions; + "GS_API_OSSPEC" = Functions; + "GS_API_VERSION" = Functions; + "GS_CLANG_MINREQ" = Functions; + "GS_DEPRECATED_FUNC" = Functions; + "GS_EXPOSE" = Functions; + "GS_GCC_MINREQ" = Functions; + "GS_INITIALIZED_LOCK" = Functions; + "GS_LOCALISATION_BUNDLE" = Functions; + "GS_MAX_OBJECTS_FROM_STACK" = Functions; + "GS_NORETURN_METHOD" = Functions; + "GS_PART_MAP_ENUMERATOR" = Functions; + "GS_RANGE_CHECK" = Functions; + "GS_UNIMPLEMENTED" = Functions; + "GS_UNUSED_ARG" = Functions; + "GS_UNUSED_FUNC" = Functions; + "GS_UNUSED_IVAR" = Functions; + "GS_USEIDLIST" = Functions; + "GS_USEIDPAIRLIST" = Functions; + "IF_NO_ARC" = Functions; + "IF_NO_GC" = Functions; + "LEAVE_POOL" = Functions; + "MAC_OS_X_VERSION_MAX_ALLOWED" = Functions; + NSDebugFLLog = Functions; + NSDebugFLog = Functions; + NSDebugFRLog = Functions; + NSDebugLLog = Functions; + NSDebugLog = Functions; + NSDebugMLLog = Functions; + NSDebugMLog = Functions; + NSDebugMRLog = Functions; + NSWarnFLog = Functions; + NSWarnLog = Functions; + NSWarnMLog = Functions; + "NS_CONSUMED" = Functions; + "NS_CONSUMES_SELF" = Functions; + "NS_RETURNS_NOT_RETAINED" = Functions; + "NS_RETURNS_RETAINED" = Functions; + "OS_API_VERSION" = Functions; + "RECREATE_AUTORELEASE_POOL" = Functions; + RELEASE = Functions; + RETAIN = Functions; + "TEST_AUTORELEASE" = Functions; + "TEST_RELEASE" = Functions; + "TEST_RETAIN" = Functions; + "_" = Functions; + "__" = Functions; + "__has_feature" = Functions; + }; + method = { + "+atExit" = { + "NSObject(GSAtExit)" = "NSObject+GNUstepBase"; + }; + "+binarySerializer" = { + GSMimeSerializer = GSMime; + }; + "+charsetForXml:" = { + GSMimeDocument = GSMime; + }; + "+charsetFromEncoding:" = { + GSMimeDocument = GSMime; + }; + "+contentSizeOf:excluding:" = { + "NSObject(MemoryFootprint)" = "NSObject+GNUstepBase"; + }; + "+credentialsFromCAFile:defaultCAFile:revokeFile:defaultRevokeFile:certificateFile:certificateKeyFile:certificateKeyPassword:asClient:debug:" = { + GSTLSCredentials = GSTLS; + }; + "+current" = { + GSTLSDHParams = GSTLS; + }; + "+dataForTLSFile:" = { + GSTLSObject = GSTLS; + }; + "+dataWithRandomBytesOfLength:" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "+decodeBase64:" = { + GSMimeDocument = GSMime; + }; + "+decodeBase64String:" = { + GSMimeDocument = GSMime; + }; + "+descriptionFromType:" = { + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + }; + "+documentFromData:" = { + GSMimeParser = GSMime; + }; + "+documentWithContent:type:name:" = { + GSMimeDocument = GSMime; + }; + "+documentWithVersion:" = { + GSXMLDocument = GSXML; + }; + "+encodeBase64:" = { + GSMimeDocument = GSMime; + }; + "+encodeBase64String:" = { + GSMimeDocument = GSMime; + }; + "+encodingFromCharset:" = { + GSMimeDocument = GSMime; + }; + "+executableExtensions" = { + "NSTask(GNUstepBase)" = "NSTask+GNUstepBase"; + }; + "+executablePath:" = { + "NSTask(GNUstepBase)" = "NSTask+GNUstepBase"; + }; + "+fileHandleAsServerAtAddress:service:protocol:" = { + "NSFileHandle(GNUstepBase)" = "NSFileHandle+GNUstepBase"; + }; + "+gcCollectGarbage" = { + GCObject = GCObject; + }; + "+gcIsCollecting" = { + GCObject = GCObject; + }; + "+gcObjectWillBeDeallocated:" = { + GCObject = GCObject; + }; + "+generate" = { + GSTLSDHParams = GSTLS; + }; + "+handler" = { + GSSAXHandler = GSXML; + }; + "+headerWithName:value:parameters:" = { + GSMimeHeader = GSMime; + }; + "+keyFromFile:withPassword:" = { + GSTLSPrivateKey = GSTLS; + }; + "+launchPathForTool:" = { + "NSTask(GNUstepBase)" = "NSTask+GNUstepBase"; + }; + "+leak:" = { + "NSObject(GSCleanup)" = "NSObject+GNUstepBase"; + }; + "+leakAt:" = { + "NSObject(GSCleanup)" = "NSObject+GNUstepBase"; + }; + "+listFromFile:" = { + GSTLSCertificateList = GSTLS; + }; + "+loadEntity:at:" = { + GSXMLParser = GSXML; + }; + "+makeQuoted:always:" = { + GSMimeHeader = GSMime; + }; + "+makeToken:" = { + GSMimeHeader = GSMime; + }; + "+makeToken:preservingCase:" = { + GSMimeHeader = GSMime; + }; + "+mimeParser" = { + GSMimeParser = GSMime; + }; + "+newLockAt:" = { + "NSLock(GNUstepBase)" = "NSLock+GNUstepBase"; + "NSRecursiveLock(GNUstepBase)" = "NSLock+GNUstepBase"; + }; + "+paramsFromFile:" = { + GSTLSDHParams = GSTLS; + }; + "+parser" = { + GSXMLParser = GSXML; + }; + "+parserWithContentsOfFile:" = { + GSXMLParser = GSXML; + }; + "+parserWithContentsOfURL:" = { + GSXMLParser = GSXML; + }; + "+parserWithData:" = { + GSXMLParser = GSXML; + }; + "+parserWithSAXHandler:" = { + GSXMLParser = GSXML; + }; + "+parserWithSAXHandler:withContentsOfFile:" = { + GSXMLParser = GSXML; + }; + "+parserWithSAXHandler:withContentsOfURL:" = { + GSXMLParser = GSXML; + }; + "+parserWithSAXHandler:withData:" = { + GSXMLParser = GSXML; + }; + "+pathForLibraryResource:ofType:inDirectory:" = { + "NSBundle(GNUstepBase)" = "NSBundle+GNUstepBase"; + }; + "+registerAtExit" = { + "NSObject(GSCleanup)" = "NSObject+GNUstepBase"; + }; + "+registerAtExit:" = { + "NSObject(GSCleanup)" = "NSObject+GNUstepBase"; + }; + "+selfSigned:" = { + GSTLSCredentials = GSTLS; + }; + "+sessionWithOptions:direction:transport:push:pull:" = { + GSTLSSession = GSTLS; + }; + "+setDTDs:" = { + GSXMLParser = GSXML; + }; + "+setData:forTLSFile:" = { + GSTLSObject = GSTLS; + }; + "+setShouldCleanUp:" = { + "NSObject(GSCleanup)" = "NSObject+GNUstepBase"; + }; + "+shouldCleanUp" = { + "NSObject(GSCleanup)" = "NSObject+GNUstepBase"; + }; + "+smtp7bitSerializer" = { + GSMimeSerializer = GSMime; + }; + "+stringWithFormat:arguments:" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "+typeFromDescription:" = { + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + }; + "+valueFromString:" = { + "NSNumber(GNUstepBase)" = "NSNumber+GNUstepBase"; + }; + "+xmlEncodingStringForStringEncoding:" = { + GSXMLParser = GSXML; + }; + "+xsltTransformFile:stylesheet:" = { + "GSXMLDocument(XSLT)" = GSXML; + }; + "+xsltTransformFile:stylesheet:params:" = { + "GSXMLDocument(XSLT)" = GSXML; + }; + "+xsltTransformXml:stylesheet:" = { + "GSXMLDocument(XSLT)" = GSXML; + }; + "+xsltTransformXml:stylesheet:params:" = { + "GSXMLDocument(XSLT)" = GSXML; + }; + "-URLHandle:resourceDataDidBecomeAvailable:" = { + GSXMLRPC = GSXML; + }; + "-URLHandle:resourceDidFailLoadingWithReason:" = { + GSXMLRPC = GSXML; + }; + "-URLHandleResourceDidBeginLoading:" = { + GSXMLRPC = GSXML; + }; + "-URLHandleResourceDidCancelLoading:" = { + GSXMLRPC = GSXML; + }; + "-URLHandleResourceDidFinishLoading:" = { + GSXMLRPC = GSXML; + }; + "-_becomeThreaded:" = { + GSLazyLock = GSLock; + GSLazyRecursiveLock = GSLock; + }; + "-abort" = { + GSMimeSMTPClient = GSMime; + }; + "-abortParsing" = { + GSXMLParser = GSXML; + }; + "-active" = { + GSTLSSession = GSTLS; + }; + "-addContent:" = { + GSMimeDocument = GSMime; + }; + "-addHeader:" = { + GSMimeDocument = GSMime; + }; + "-addHeader:value:parameters:" = { + GSMimeDocument = GSMime; + }; + "-age" = { + GSTLSSession = GSTLS; + }; + "-allHeaders" = { + GSMimeDocument = GSMime; + }; + "-atEnd" = { + GSMimeCodingContext = GSMime; + }; + "-attribute:value:" = { + GSSAXHandler = GSXML; + }; + "-attributeDecl:name:type:typeDefValue:defaultValue:" = { + GSSAXHandler = GSXML; + }; + "-attributedSubstringWithRange:" = { + "NSAttributedString(GNUstepBase)" = "NSAttributedString+GNUstepBase"; + }; + "-attributes" = { + GSXMLNode = GSXML; + }; + "-booleanValue" = { + GSXPathBoolean = GSXML; + }; + "-buildMethod:params:" = { + GSXMLRPC = GSXML; + }; + "-buildMethodCall:params:" = { + GSXMLRPC = GSXML; + }; + "-buildResponseWithFaultCode:andString:" = { + GSXMLRPC = GSXML; + }; + "-buildResponseWithParams:" = { + GSXMLRPC = GSXML; + }; + "-cacheKey" = { + "NSURL(GNUstepBaseAdditions)" = "NSURL+GNUstepBase"; + }; + "-cdataBlock:" = { + GSSAXHandler = GSXML; + }; + "-certificateList" = { + GSTLSCertificateList = GSTLS; + }; + "-characters:" = { + GSSAXHandler = GSXML; + }; + "-columnNumber" = { + GSXMLParser = GSXML; + }; + "-comment:" = { + GSSAXHandler = GSXML; + }; + "-compact" = { + GSXMLRPC = GSXML; + }; + "-compare:" = { + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + }; + "-completedXMLRPC:" = { + "GSXMLRPC(Delegate)" = GSXML; + }; + "-content" = { + GSMimeDocument = GSMime; + GSXMLNode = GSXML; + }; + "-contentByID:" = { + GSMimeDocument = GSMime; + }; + "-contentByLocation:" = { + GSMimeDocument = GSMime; + }; + "-contentByName:" = { + GSMimeDocument = GSMime; + }; + "-contentFile" = { + GSMimeDocument = GSMime; + }; + "-contentID" = { + GSMimeDocument = GSMime; + }; + "-contentLocation" = { + GSMimeDocument = GSMime; + }; + "-contentName" = { + GSMimeDocument = GSMime; + }; + "-contentSubtype" = { + GSMimeDocument = GSMime; + }; + "-contentType" = { + GSMimeDocument = GSMime; + }; + "-contentsByName:" = { + GSMimeDocument = GSMime; + }; + "-contextFor:" = { + GSMimeParser = GSMime; + }; + "-convertTo7BitSafe" = { + GSMimeDocument = GSMime; + }; + "-convertToBase64" = { + GSMimeDocument = GSMime; + }; + "-convertToBinary" = { + GSMimeDocument = GSMime; + }; + "-convertToData" = { + GSMimeDocument = GSMime; + }; + "-convertToText" = { + GSMimeDocument = GSMime; + }; + "-copyWithZone:" = { + GSMimeDocument = GSMime; + GSMimeHeader = GSMime; + GSMimeSerializer = GSMime; + }; + "-count" = { + GSTLSCertificateList = GSTLS; + GSXPathNodeSet = GSXML; + }; + "-credentials" = { + GSTLSCredentials = GSTLS; + GSTLSSession = GSTLS; + }; + "-data" = { + GSMimeParser = GSMime; + }; + "-dataEncoding" = { + GSMimeSerializer = GSMime; + }; + "-debug" = { + GSTLSSession = GSTLS; + }; + "-debugLoggingEnabled" = { + "NSProcessInfo(GNUstepBase)" = "NSProcessInfo+GNUstepBase"; + }; + "-debugSet" = { + "NSProcessInfo(GNUstepBase)" = "NSProcessInfo+GNUstepBase"; + }; + "-decodeData:fromRange:intoData:withContext:" = { + GSMimeParser = GSMime; + }; + "-decodeData:length:intoData:" = { + GSMimeCodingContext = GSMime; + }; + "-delegate" = { + GSMimeSMTPClient = GSMime; + GSXMLRPC = GSXML; + }; + "-deleteContent:" = { + GSMimeDocument = GSMime; + }; + "-deleteHeader:" = { + GSMimeDocument = GSMime; + }; + "-deleteHeaderNamed:" = { + GSMimeDocument = GSMime; + }; + "-deletePrefix:" = { + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + }; + "-deleteSuffix:" = { + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + }; + "-description" = { + GSXMLDocument = GSXML; + GSXMLNode = GSXML; + }; + "-disconnect:" = { + GSTLSSession = GSTLS; + }; + "-doValidityChecking:" = { + GSXMLParser = GSXML; + }; + "-document" = { + GSXMLNode = GSXML; + GSXMLParser = GSXML; + }; + "-doubleValue" = { + GSXPathNumber = GSXML; + }; + "-elementDecl:type:" = { + GSSAXHandler = GSXML; + }; + "-encodeDocument:" = { + GSMimeSerializer = GSMime; + }; + "-encodePart:to:" = { + GSMimeSerializer = GSMime; + }; + "-encoding" = { + GSXMLDocument = GSXML; + }; + "-endDocument" = { + GSSAXHandler = GSXML; + }; + "-endElement:" = { + GSSAXHandler = GSXML; + }; + "-endElement:prefix:href:" = { + GSSAXHandler = GSXML; + }; + "-entityDecl:type:public:system:content:" = { + GSSAXHandler = GSXML; + }; + "-errNo" = { + GSXMLParser = GSXML; + }; + "-error:" = { + GSSAXHandler = GSXML; + }; + "-error:colNumber:lineNumber:" = { + GSSAXHandler = GSXML; + }; + "-escapedContent" = { + GSXMLNode = GSXML; + }; + "-escapedRepresentation" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-escapedRepresentation:" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-estimatedSize" = { + GSMimeDocument = GSMime; + GSMimeHeader = GSMime; + }; + "-evaluateExpression:" = { + GSXPathContext = GSXML; + }; + "-excess" = { + GSMimeParser = GSMime; + }; + "-expectNoHeaders" = { + GSMimeParser = GSMime; + }; + "-expiresAt" = { + GSTLSCertificateList = GSTLS; + }; + "-expiresAt:" = { + GSTLSCertificateList = GSTLS; + }; + "-externalSubset:externalID:systemID:" = { + GSSAXHandler = GSXML; + }; + "-fatalError:" = { + GSSAXHandler = GSXML; + }; + "-fatalError:colNumber:lineNumber:" = { + GSSAXHandler = GSXML; + }; + "-firstAttribute" = { + GSXMLNode = GSXML; + }; + "-firstChild" = { + GSXMLNode = GSXML; + }; + "-firstChildElement" = { + GSXMLNode = GSXML; + }; + "-flush:" = { + GSMimeSMTPClient = GSMime; + }; + "-foldAt" = { + GSMimeSerializer = GSMime; + }; + "-fullPath" = { + "NSURL(GNUstepBase)" = "NSURL+GNUstepBase"; + }; + "-fullValue" = { + GSMimeHeader = GSMime; + }; + "-gcAlreadyVisited" = { + "GCObject(Extra)" = GCObject; + }; + "-gcDecrementRefCount" = { + GCObject = GCObject; + }; + "-gcDecrementRefCountOfContainedObjects" = { + GCObject = GCObject; + }; + "-gcIncrementRefCount" = { + GCObject = GCObject; + }; + "-gcIncrementRefCountOfContainedObjects" = { + GCObject = GCObject; + }; + "-gcNextObject" = { + "GCObject(Extra)" = GCObject; + }; + "-gcPreviousObject" = { + "GCObject(Extra)" = GCObject; + }; + "-gcSetNextObject:" = { + "GCObject(Extra)" = GCObject; + }; + "-gcSetPreviousObject:" = { + "GCObject(Extra)" = GCObject; + }; + "-gcSetVisited:" = { + "GCObject(Extra)" = GCObject; + }; + "-getEntity:" = { + GSSAXHandler = GSXML; + }; + "-getParameterEntity:" = { + GSSAXHandler = GSXML; + }; + "-getWarnings:" = { + GSXMLParser = GSXML; + }; + "-globalNamespace:href:prefix:" = { + GSSAXHandler = GSXML; + }; + "-gunzipped" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-gzipped:" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-handshake" = { + GSTLSSession = GSTLS; + }; + "-hasExternalSubset" = { + GSSAXHandler = GSXML; + }; + "-hasInternalSubset" = { + GSSAXHandler = GSXML; + }; + "-headerNamed:" = { + GSMimeDocument = GSMime; + }; + "-headersNamed:" = { + GSMimeDocument = GSMime; + }; + "-hexadecimalRepresentation" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-hexadecimalRepresentation:" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-href" = { + GSXMLNamespace = GSXML; + }; + "-ignoreWhitespace:" = { + GSSAXHandler = GSXML; + }; + "-immutableProxy" = { + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + }; + "-initWithDocument:" = { + GSXPathContext = GSXML; + }; + "-initWithHexadecimalRepresentation:" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-initWithName:value:" = { + GSMimeHeader = GSMime; + }; + "-initWithName:value:parameters:" = { + GSMimeHeader = GSMime; + }; + "-initWithOptions:direction:transport:push:pull:" = { + GSTLSSession = GSTLS; + }; + "-initWithSAXHandler:" = { + GSXMLParser = GSXML; + }; + "-initWithSAXHandler:withContentsOfFile:" = { + GSXMLParser = GSXML; + }; + "-initWithSAXHandler:withContentsOfURL:" = { + GSXMLParser = GSXML; + }; + "-initWithSAXHandler:withData:" = { + GSXMLParser = GSXML; + }; + "-initWithSAXHandler:withInputStream:" = { + GSXMLParser = GSXML; + }; + "-initWithScheme:user:password:host:port:fullPath:parameterString:query:fragment:" = { + "NSURL(GNUstepBaseAdditions)" = "NSURL+GNUstepBase"; + }; + "-initWithURL:" = { + GSXMLRPC = GSXML; + }; + "-initWithURL:certificate:privateKey:password:" = { + GSXMLRPC = GSXML; + }; + "-insertionPosition:usingFunction:context:" = { + "NSArray(GNUstepBase)" = "NSArray+GNUstepBase"; + }; + "-insertionPosition:usingSelector:" = { + "NSArray(GNUstepBase)" = "NSArray+GNUstepBase"; + }; + "-internalSubset:externalID:systemID:" = { + GSSAXHandler = GSXML; + }; + "-isComplete" = { + GSMimeParser = GSMime; + }; + "-isElement" = { + GSXMLNode = GSXML; + }; + "-isGzipped" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-isHttp" = { + GSMimeParser = GSMime; + }; + "-isInBody" = { + GSMimeParser = GSMime; + }; + "-isInHeaders" = { + GSMimeParser = GSMime; + }; + "-isInstance" = { + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + }; + "-isStandalone" = { + GSSAXHandler = GSXML; + }; + "-isText" = { + GSXMLNode = GSXML; + }; + "-isoYear" = { + "NSCalendarDate(GNUstepBase)" = "NSCalendarDate+GNUstepBase"; + }; + "-issuer" = { + GSTLSSession = GSTLS; + }; + "-keepBlanks:" = { + GSXMLParser = GSXML; + }; + "-key" = { + GSTLSCredentials = GSTLS; + GSTLSPrivateKey = GSTLS; + }; + "-lastError" = { + GSMimeSMTPClient = GSMime; + }; + "-length" = { + GSXPathNodeSet = GSXML; + }; + "-lib" = { + GSSAXHandler = GSXML; + GSXMLDocument = GSXML; + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + }; + "-lineNumber" = { + GSXMLParser = GSXML; + }; + "-list" = { + GSTLSCredentials = GSTLS; + }; + "-loadEntity:at:" = { + GSSAXHandler = GSXML; + }; + "-makeAttributeWithName:value:" = { + GSXMLNode = GSXML; + }; + "-makeBoundary" = { + GSMimeDocument = GSMime; + }; + "-makeChildWithNamespace:name:content:" = { + GSXMLNode = GSXML; + }; + "-makeComment:" = { + GSXMLNode = GSXML; + }; + "-makeContentID" = { + GSMimeDocument = GSMime; + }; + "-makeHeader:value:parameters:" = { + GSMimeDocument = GSMime; + }; + "-makeImmutable" = { + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + }; + "-makeImmutableCopyOnFail:" = { + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + }; + "-makeMessageID" = { + GSMimeDocument = GSMime; + }; + "-makeMethodCall:params:timeout:" = { + GSXMLRPC = GSXML; + }; + "-makeNamespaceHref:prefix:" = { + GSXMLNode = GSXML; + }; + "-makeNodeWithNamespace:name:content:" = { + GSXMLDocument = GSXML; + }; + "-makePI:content:" = { + GSXMLNode = GSXML; + }; + "-makeText:" = { + GSXMLNode = GSXML; + }; + "-md5Digest" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-messages" = { + GSXMLParser = GSXML; + }; + "-mimeDocument" = { + GSMimeParser = GSMime; + }; + "-name" = { + GSMimeHeader = GSMime; + GSXMLNode = GSXML; + }; + "-namePreservingCase:" = { + GSMimeHeader = GSMime; + }; + "-namespace" = { + GSXMLNode = GSXML; + }; + "-namespaceDecl:href:prefix:" = { + GSSAXHandler = GSXML; + }; + "-namespaceDefinitions" = { + GSXMLNode = GSXML; + }; + "-next" = { + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + }; + "-nextElement" = { + GSXMLNode = GSXML; + }; + "-nodeAtIndex:" = { + GSXPathNodeSet = GSXML; + }; + "-notImplemented:" = { + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + }; + "-notationDecl:public:system:" = { + GSSAXHandler = GSXML; + }; + "-objectForKey:" = { + GSMimeHeader = GSMime; + GSXMLNode = GSXML; + }; + "-objects" = { + GSMimeHeader = GSMime; + }; + "-owner" = { + GSTLSSession = GSTLS; + }; + "-parameterForKey:" = { + GSMimeHeader = GSMime; + }; + "-parameters" = { + GSMimeHeader = GSMime; + }; + "-parametersPreservingCase:" = { + GSMimeHeader = GSMime; + }; + "-params" = { + GSTLSDHParams = GSTLS; + }; + "-parent" = { + GSXMLNode = GSXML; + }; + "-parse" = { + GSXMLParser = GSXML; + }; + "-parse:" = { + GSMimeParser = GSMime; + GSXMLParser = GSXML; + }; + "-parseHeader:" = { + GSMimeParser = GSMime; + }; + "-parseHeaders:remaining:" = { + GSMimeParser = GSMime; + }; + "-parseMethod:params:" = { + GSXMLRPC = GSXML; + }; + "-parseResponse:params:" = { + GSXMLRPC = GSXML; + }; + "-parser" = { + GSSAXHandler = GSXML; + }; + "-pathWithEscapes" = { + "NSURL(GNUstepBase)" = "NSURL+GNUstepBase"; + }; + "-pending" = { + GSTLSSession = GSTLS; + }; + "-prefix" = { + GSXMLNamespace = GSXML; + }; + "-previous" = { + GSXMLNode = GSXML; + }; + "-previousElement" = { + GSXMLNode = GSXML; + }; + "-problem" = { + GSTLSSession = GSTLS; + }; + "-processInstruction:data:" = { + GSSAXHandler = GSXML; + }; + "-propertiesAsDictionaryWithKeyTransformationSel:" = { + GSXMLNode = GSXML; + }; + "-publicID" = { + GSXMLParser = GSXML; + }; + "-queueSize" = { + GSMimeSMTPClient = GSMime; + }; + "-rawMimeData" = { + GSMimeDocument = GSMime; + GSMimeHeader = GSMime; + }; + "-rawMimeData:" = { + GSMimeDocument = GSMime; + }; + "-rawMimeData:foldedAt:" = { + GSMimeDocument = GSMime; + }; + "-rawMimeDataPreservingCase:" = { + GSMimeHeader = GSMime; + }; + "-rawMimeDataPreservingCase:foldedAt:" = { + GSMimeHeader = GSMime; + }; + "-rawMimeDataPreservingCase:foldedAt:to:" = { + GSMimeHeader = GSMime; + }; + "-read:length:" = { + GSTLSSession = GSTLS; + }; + "-reference:" = { + GSSAXHandler = GSXML; + }; + "-registerNamespaceWithPrefix:href:" = { + GSXPathContext = GSXML; + }; + "-replaceString:withString:" = { + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + }; + "-resolveEntities:" = { + GSXMLParser = GSXML; + }; + "-result" = { + GSXMLRPC = GSXML; + }; + "-root" = { + GSXMLDocument = GSXML; + }; + "-saveMessages:" = { + GSXMLParser = GSXML; + }; + "-scanHeaderBody:into:" = { + GSMimeParser = GSMime; + }; + "-scanName:" = { + GSMimeParser = GSMime; + }; + "-scanPastSpace:" = { + GSMimeParser = GSMime; + }; + "-scanSpecial:" = { + GSMimeParser = GSMime; + }; + "-scanToken:" = { + GSMimeParser = GSMime; + }; + "-send:" = { + GSMimeSMTPClient = GSMime; + }; + "-send:envelopeID:" = { + GSMimeSMTPClient = GSMime; + }; + "-sendMethodCall:params:timeout:" = { + GSXMLRPC = GSXML; + }; + "-sessionInfo" = { + GSTLSSession = GSTLS; + }; + "-setAtEnd:" = { + GSMimeCodingContext = GSMime; + }; + "-setBuggyQuotes:" = { + GSMimeParser = GSMime; + }; + "-setCompact:" = { + GSXMLRPC = GSXML; + }; + "-setContent:" = { + GSMimeDocument = GSMime; + }; + "-setContent:type:" = { + GSMimeDocument = GSMime; + }; + "-setContent:type:name:" = { + GSMimeDocument = GSMime; + }; + "-setContentType:" = { + GSMimeDocument = GSMime; + }; + "-setDataEncoding:" = { + GSMimeSerializer = GSMime; + }; + "-setDebug:" = { + GSXMLRPC = GSXML; + }; + "-setDebugLoggingEnabled:" = { + "NSProcessInfo(GNUstepBase)" = "NSProcessInfo+GNUstepBase"; + }; + "-setDefaultCharset:" = { + GSMimeParser = GSMime; + }; + "-setDelegate:" = { + GSMimeSMTPClient = GSMime; + GSXMLRPC = GSXML; + }; + "-setFoldAt:" = { + GSMimeSerializer = GSMime; + }; + "-setHeader:" = { + GSMimeDocument = GSMime; + }; + "-setHeader:value:parameters:" = { + GSMimeDocument = GSMime; + }; + "-setHeadersOnly" = { + GSMimeParser = GSMime; + }; + "-setHostname:" = { + GSMimeSMTPClient = GSMime; + }; + "-setIdentity:" = { + GSMimeSMTPClient = GSMime; + }; + "-setIsHttp" = { + GSMimeParser = GSMime; + }; + "-setMaximum:" = { + GSMimeSMTPClient = GSMime; + }; + "-setNamespace:" = { + GSXMLNode = GSXML; + }; + "-setObject:forKey:" = { + GSMimeHeader = GSMime; + GSXMLNode = GSXML; + }; + "-setOriginator:" = { + GSMimeSMTPClient = GSMime; + }; + "-setParameter:forKey:" = { + GSMimeHeader = GSMime; + }; + "-setParameters:" = { + GSMimeHeader = GSMime; + }; + "-setPort:" = { + GSMimeSMTPClient = GSMime; + }; + "-setRoot:" = { + GSXMLDocument = GSXML; + }; + "-setTextEncoding:" = { + GSMimeSerializer = GSMime; + }; + "-setTimeZone:" = { + GSXMLRPC = GSXML; + }; + "-setUse8bit:" = { + GSMimeSerializer = GSMime; + }; + "-setUsername:" = { + GSMimeSMTPClient = GSMime; + }; + "-setValue:" = { + GSMimeHeader = GSMime; + }; + "-shouldNotImplement:" = { + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + }; + "-sizeInBytes" = { + "NSObject(MemoryFootprint)" = "NSObject+GNUstepBase"; + }; + "-sizeInBytesExcluding:" = { + "NSObject(MemoryFootprint)" = "NSObject+GNUstepBase"; + }; + "-sizeOfContentExcluding:" = { + "NSObject(MemoryFootprint)" = "NSObject+GNUstepBase"; + }; + "-sizeOfInstance" = { + "NSObject(MemoryFootprint)" = "NSObject+GNUstepBase"; + }; + "-smtpClient:mimeFailed:" = { + "NSObject(GSMimeSMTPClient)" = GSMime; + }; + "-smtpClient:mimeSent:" = { + "NSObject(GSMimeSMTPClient)" = GSMime; + }; + "-smtpClient:mimeUnsent:" = { + "NSObject(GSMimeSMTPClient)" = GSMime; + }; + "-socketAddress" = { + "NSFileHandle(GNUstepBase)" = "NSFileHandle+GNUstepBase"; + }; + "-startDocument" = { + GSSAXHandler = GSXML; + }; + "-startElement:attributes:" = { + GSSAXHandler = GSXML; + }; + "-startElement:prefix:href:attributes:namespaces:" = { + GSSAXHandler = GSXML; + }; + "-state" = { + GSMimeSMTPClient = GSMime; + }; + "-stateDesc" = { + GSMimeSMTPClient = GSMime; + }; + "-stringByDeletingPrefix:" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "-stringByDeletingSuffix:" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "-stringByEscapingXML" = { + "NSString(GSXML)" = GSXML; + }; + "-stringByReplacingString:withString:" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "-stringByTrimmingLeadSpaces" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "-stringByTrimmingSpaces" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "-stringByTrimmingTailSpaces" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "-stringByUnescapingXML" = { + "NSString(GSXML)" = GSXML; + }; + "-stringValue" = { + GSXPathString = GSXML; + }; + "-subclassResponsibility:" = { + "NSObject(GNUstepBase)" = "NSObject+GNUstepBase"; + }; + "-substituteEntities:" = { + GSXMLParser = GSXML; + }; + "-substringFromRange:" = { + "NSString(GNUstepBase)" = "NSString+GNUstepBase"; + }; + "-systemID" = { + GSXMLParser = GSXML; + }; + "-text" = { + GSMimeHeader = GSMime; + }; + "-textEncoding" = { + GSMimeSerializer = GSMime; + }; + "-timeZone" = { + GSXMLRPC = GSXML; + }; + "-timeout:" = { + GSXMLRPC = GSXML; + }; + "-trimLeadSpaces" = { + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + }; + "-trimSpaces" = { + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + }; + "-trimTailSpaces" = { + "NSMutableString(GNUstepBase)" = "NSMutableString+GNUstepBase"; + }; + "-trust" = { + GSTLSCredentials = GSTLS; + }; + "-type" = { + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + }; + "-typeDescription" = { + GSXMLNamespace = GSXML; + GSXMLNode = GSXML; + }; + "-unparsedEntityDecl:public:system:notationName:" = { + GSSAXHandler = GSXML; + }; + "-use8bit" = { + GSMimeSerializer = GSMime; + }; + "-uudecodeInto:name:mode:" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-uuencodeInto:name:mode:" = { + "NSData(GNUstepBase)" = "NSData+GNUstepBase"; + }; + "-value" = { + GSMimeHeader = GSMime; + GSXMLAttribute = GSXML; + }; + "-verify" = { + GSTLSSession = GSTLS; + }; + "-version" = { + GSXMLDocument = GSXML; + }; + "-warning:" = { + GSSAXHandler = GSXML; + }; + "-warning:colNumber:lineNumber:" = { + GSSAXHandler = GSXML; + }; + "-weekOfYear" = { + "NSCalendarDate(GNUstepBase)" = "NSCalendarDate+GNUstepBase"; + }; + "-write:length:" = { + GSTLSSession = GSTLS; + }; + "-writeToFile:atomically:" = { + GSXMLDocument = GSXML; + }; + "-writeToURL:atomically:" = { + GSXMLDocument = GSXML; + }; + "-xsltTransform:" = { + "GSXMLDocument(XSLT)" = GSXML; + }; + "-xsltTransform:params:" = { + "GSXMLDocument(XSLT)" = GSXML; + }; + }; + output = { + "../Headers/GNUstepBase/GCObject.h" = ( + "../Documentation/BaseAdditions/GCObject.gsdoc" + ); + "../Headers/GNUstepBase/GNUstep.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/GSBlocks.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/GSFunctions.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/GSIArray.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc", + "../Documentation/BaseAdditions/TypesAndConstants.gsdoc" + ); + "../Headers/GNUstepBase/GSIMap.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc", + "../Documentation/BaseAdditions/TypesAndConstants.gsdoc" + ); + "../Headers/GNUstepBase/GSLocale.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/GSLock.h" = ( + "../Documentation/BaseAdditions/GSLock.gsdoc", + "../Documentation/BaseAdditions/TypesAndConstants.gsdoc" + ); + "../Headers/GNUstepBase/GSMime.h" = ( + "../Documentation/BaseAdditions/GSMime.gsdoc", + "../Documentation/BaseAdditions/TypesAndConstants.gsdoc" + ); + "../Headers/GNUstepBase/GSObjCRuntime.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/GSTLS.h" = ( + "../Documentation/BaseAdditions/GSTLS.gsdoc", + "../Documentation/BaseAdditions/TypesAndConstants.gsdoc" + ); + "../Headers/GNUstepBase/GSUnion.h" = ( + "../Documentation/BaseAdditions/GSUnion.gsdoc" + ); + "../Headers/GNUstepBase/GSVersionMacros.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/GSXML.h" = ( + "../Documentation/BaseAdditions/GSXML.gsdoc" + ); + "../Headers/GNUstepBase/NSArray+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSArray+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSAttributedString+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSAttributedString+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSBundle+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSBundle+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSCalendarDate+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSCalendarDate+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSData+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSData+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSDebug+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/NSFileHandle+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSFileHandle+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSLock+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSLock+GNUstepBase.gsdoc", + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/NSMutableString+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSMutableString+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSNumber+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSNumber+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSObject+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSObject+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSProcessInfo+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSProcessInfo+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSString+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSString+GNUstepBase.gsdoc", + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/NSTask+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSTask+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/NSThread+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSThread+GNUstepBase.gsdoc", + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + "../Headers/GNUstepBase/NSURL+GNUstepBase.h" = ( + "../Documentation/BaseAdditions/NSURL+GNUstepBase.gsdoc" + ); + "../Headers/GNUstepBase/Unicode.h" = ( + "../Documentation/BaseAdditions/Functions.gsdoc" + ); + }; + source = { + "../Headers/GNUstepBase/GCObject.h" = ( + "../Headers/GNUstepBase/GCObject.h", + "Additions/GCObject.m", + "Additions/GCArray.m", + "Additions/GCDictionary.m" + ); + "../Headers/GNUstepBase/GNUstep.h" = ( + "../Headers/GNUstepBase/GNUstep.h" + ); + "../Headers/GNUstepBase/GSBlocks.h" = ( + "GSBlocks.m" + ); + "../Headers/GNUstepBase/GSFunctions.h" = ( + "Additions/GSFunctions.m" + ); + "../Headers/GNUstepBase/GSIArray.h" = ( + "../Headers/GNUstepBase/GSIArray.h" + ); + "../Headers/GNUstepBase/GSIMap.h" = ( + "../Headers/GNUstepBase/GSIMap.h" + ); + "../Headers/GNUstepBase/GSLocale.h" = ( + "GSLocale.m" + ); + "../Headers/GNUstepBase/GSLock.h" = ( + "Additions/GSLock.m" + ); + "../Headers/GNUstepBase/GSMime.h" = ( + "Additions/GSMime.m" + ); + "../Headers/GNUstepBase/GSObjCRuntime.h" = ( + "Additions/GSObjCRuntime.m" + ); + "../Headers/GNUstepBase/GSTLS.h" = ( + "GSTLS.m" + ); + "../Headers/GNUstepBase/GSUnion.h" = ( + "../Headers/GNUstepBase/GSUnion.h" + ); + "../Headers/GNUstepBase/GSVersionMacros.h" = ( + "../Headers/GNUstepBase/GSVersionMacros.h" + ); + "../Headers/GNUstepBase/GSXML.h" = ( + "Additions/GSXML.m" + ); + "../Headers/GNUstepBase/NSArray+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSArray+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSAttributedString+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSAttributedString+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSBundle+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSBundle+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSCalendarDate+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSCalendarDate+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSData+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSData+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSDebug+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSDebug+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSFileHandle+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSFileHandle+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSLock+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSLock+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSMutableString+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSMutableString+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSNumber+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSNumber+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSObject+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSObject+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSProcessInfo+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSProcessInfo+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSString+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSString+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSTask+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSTask+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSThread+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSThread+GNUstepBase.h" + ); + "../Headers/GNUstepBase/NSURL+GNUstepBase.h" = ( + "../Headers/GNUstepBase/NSURL+GNUstepBase.h" + ); + "../Headers/GNUstepBase/Unicode.h" = ( + "Additions/Unicode.m" + ); + }; + super = { + GCArray = NSArray; + GCDictionary = NSDictionary; + GCMutableArray = NSMutableArray; + GCMutableDictionary = NSMutableDictionary; + GCObject = NSObject; + GSHTMLParser = GSXMLParser; + GSHTMLSAXHandler = GSSAXHandler; + GSLazyLock = NSLock; + GSLazyRecursiveLock = NSRecursiveLock; + GSMimeCodingContext = NSObject; + GSMimeDocument = NSObject; + GSMimeHeader = NSObject; + GSMimeParser = NSObject; + GSMimeSMTPClient = NSObject; + GSMimeSerializer = NSObject; + GSSAXHandler = NSObject; + GSTLSCertificateList = GSTLSObject; + GSTLSCredentials = GSTLSObject; + GSTLSDHParams = GSTLSObject; + GSTLSObject = NSObject; + GSTLSPrivateKey = GSTLSObject; + GSTLSSession = GSTLSObject; + GSTreeSAXHandler = GSSAXHandler; + GSXMLAttribute = GSXMLNode; + GSXMLDocument = NSObject; + GSXMLNamespace = NSObject; + GSXMLNode = NSObject; + GSXMLParser = NSObject; + GSXMLRPC = NSObject; + GSXPathBoolean = GSXPathObject; + GSXPathContext = NSObject; + GSXPathNodeSet = GSXPathObject; + GSXPathNumber = GSXPathObject; + GSXPathObject = NSObject; + GSXPathString = GSXPathObject; + }; + title = { + BaseAdditions = "GNUstep Base Additions"; + Functions = Functions; + GCObject = "GCObject documentation"; + GSLock = "GSLock documentation"; + GSMime = "The MIME parsing system"; + GSTLS = "GSTLS documentation"; + GSXML = "The XML and HTML parsing system"; + "NSArray+GNUstepBase" = "NSArray+GNUstepBase documentation"; + "NSAttributedString+GNUstepBase" = "NSAttributedString+GNUstepBase documentation"; + "NSBundle+GNUstepBase" = "NSBundle+GNUstepBase documentation"; + "NSCalendarDate+GNUstepBase" = "NSCalendarDate+GNUstepBase documentation"; + "NSData+GNUstepBase" = "NSData+GNUstepBase documentation"; + "NSFileHandle+GNUstepBase" = "NSFileHandle+GNUstepBase documentation"; + "NSLock+GNUstepBase" = "NSLock+GNUstepBase documentation"; + "NSMutableString+GNUstepBase" = "NSMutableString+GNUstepBase documentation"; + "NSNumber+GNUstepBase" = "NSNumber+GNUstepBase documentation"; + "NSObject+GNUstepBase" = "NSObject+GNUstepBase documentation"; + "NSProcessInfo+GNUstepBase" = "NSProcessInfo+GNUstepBase documentation"; + "NSString+GNUstepBase" = "NSString+GNUstepBase documentation"; + "NSTask+GNUstepBase" = "NSTask+GNUstepBase documentation"; + "NSThread+GNUstepBase" = "NSThread+GNUstepBase documentation"; + "NSURL+GNUstepBase" = "NSURL+GNUstepBase documentation"; + TypesAndConstants = "Types and Constants"; + }; + type = { + GSIArray = TypesAndConstants; + "GSIArray_t" = TypesAndConstants; + GSIMapBucket = TypesAndConstants; + "GSIMapBucket_t" = TypesAndConstants; + GSIMapEnumerator = TypesAndConstants; + "GSIMapEnumerator_t" = TypesAndConstants; + GSIMapNode = TypesAndConstants; + "GSIMapNode_t" = TypesAndConstants; + GSIMapTable = TypesAndConstants; + "GSIMapTable_t" = TypesAndConstants; + GSIVar = TypesAndConstants; + GSMethod = TypesAndConstants; + GSMimeErrorCode = TypesAndConstants; + GSTLSIOR = TypesAndConstants; + GSTLSIOW = TypesAndConstants; + NSGNUstepStringEncoding = TypesAndConstants; + NSInteger = TypesAndConstants; + NSUInteger = TypesAndConstants; + "struct _GSIMapEnumerator" = TypesAndConstants; + }; + unitmethods = { + GCObject = { + "+gcCollectGarbage" = GCObject; + "+gcIsCollecting" = GCObject; + "+gcObjectWillBeDeallocated:" = GCObject; + "-gcDecrementRefCount" = GCObject; + "-gcDecrementRefCountOfContainedObjects" = GCObject; + "-gcIncrementRefCount" = GCObject; + "-gcIncrementRefCountOfContainedObjects" = GCObject; + }; + "GCObject(Extra)" = { + "-gcAlreadyVisited" = GCObject; + "-gcNextObject" = GCObject; + "-gcPreviousObject" = GCObject; + "-gcSetNextObject:" = GCObject; + "-gcSetPreviousObject:" = GCObject; + "-gcSetVisited:" = GCObject; + }; + GSLazyLock = { + "-_becomeThreaded:" = GSLock; + }; + GSLazyRecursiveLock = { + "-_becomeThreaded:" = GSLock; + }; + GSMimeCodingContext = { + "-atEnd" = GSMime; + "-decodeData:length:intoData:" = GSMime; + "-setAtEnd:" = GSMime; + }; + GSMimeDocument = { + "+charsetForXml:" = GSMime; + "+charsetFromEncoding:" = GSMime; + "+decodeBase64:" = GSMime; + "+decodeBase64String:" = GSMime; + "+documentWithContent:type:name:" = GSMime; + "+encodeBase64:" = GSMime; + "+encodeBase64String:" = GSMime; + "+encodingFromCharset:" = GSMime; + "-addContent:" = GSMime; + "-addHeader:" = GSMime; + "-addHeader:value:parameters:" = GSMime; + "-allHeaders" = GSMime; + "-content" = GSMime; + "-contentByID:" = GSMime; + "-contentByLocation:" = GSMime; + "-contentByName:" = GSMime; + "-contentFile" = GSMime; + "-contentID" = GSMime; + "-contentLocation" = GSMime; + "-contentName" = GSMime; + "-contentSubtype" = GSMime; + "-contentType" = GSMime; + "-contentsByName:" = GSMime; + "-convertTo7BitSafe" = GSMime; + "-convertToBase64" = GSMime; + "-convertToBinary" = GSMime; + "-convertToData" = GSMime; + "-convertToText" = GSMime; + "-copyWithZone:" = GSMime; + "-deleteContent:" = GSMime; + "-deleteHeader:" = GSMime; + "-deleteHeaderNamed:" = GSMime; + "-estimatedSize" = GSMime; + "-headerNamed:" = GSMime; + "-headersNamed:" = GSMime; + "-makeBoundary" = GSMime; + "-makeContentID" = GSMime; + "-makeHeader:value:parameters:" = GSMime; + "-makeMessageID" = GSMime; + "-rawMimeData" = GSMime; + "-rawMimeData:" = GSMime; + "-rawMimeData:foldedAt:" = GSMime; + "-setContent:" = GSMime; + "-setContent:type:" = GSMime; + "-setContent:type:name:" = GSMime; + "-setContentType:" = GSMime; + "-setHeader:" = GSMime; + "-setHeader:value:parameters:" = GSMime; + }; + GSMimeHeader = { + "+headerWithName:value:parameters:" = GSMime; + "+makeQuoted:always:" = GSMime; + "+makeToken:" = GSMime; + "+makeToken:preservingCase:" = GSMime; + "-copyWithZone:" = GSMime; + "-estimatedSize" = GSMime; + "-fullValue" = GSMime; + "-initWithName:value:" = GSMime; + "-initWithName:value:parameters:" = GSMime; + "-name" = GSMime; + "-namePreservingCase:" = GSMime; + "-objectForKey:" = GSMime; + "-objects" = GSMime; + "-parameterForKey:" = GSMime; + "-parameters" = GSMime; + "-parametersPreservingCase:" = GSMime; + "-rawMimeData" = GSMime; + "-rawMimeDataPreservingCase:" = GSMime; + "-rawMimeDataPreservingCase:foldedAt:" = GSMime; + "-rawMimeDataPreservingCase:foldedAt:to:" = GSMime; + "-setObject:forKey:" = GSMime; + "-setParameter:forKey:" = GSMime; + "-setParameters:" = GSMime; + "-setValue:" = GSMime; + "-text" = GSMime; + "-value" = GSMime; + }; + GSMimeParser = { + "+documentFromData:" = GSMime; + "+mimeParser" = GSMime; + "-contextFor:" = GSMime; + "-data" = GSMime; + "-decodeData:fromRange:intoData:withContext:" = GSMime; + "-excess" = GSMime; + "-expectNoHeaders" = GSMime; + "-isComplete" = GSMime; + "-isHttp" = GSMime; + "-isInBody" = GSMime; + "-isInHeaders" = GSMime; + "-mimeDocument" = GSMime; + "-parse:" = GSMime; + "-parseHeader:" = GSMime; + "-parseHeaders:remaining:" = GSMime; + "-scanHeaderBody:into:" = GSMime; + "-scanName:" = GSMime; + "-scanPastSpace:" = GSMime; + "-scanSpecial:" = GSMime; + "-scanToken:" = GSMime; + "-setBuggyQuotes:" = GSMime; + "-setDefaultCharset:" = GSMime; + "-setHeadersOnly" = GSMime; + "-setIsHttp" = GSMime; + }; + GSMimeSMTPClient = { + "-abort" = GSMime; + "-delegate" = GSMime; + "-flush:" = GSMime; + "-lastError" = GSMime; + "-queueSize" = GSMime; + "-send:" = GSMime; + "-send:envelopeID:" = GSMime; + "-setDelegate:" = GSMime; + "-setHostname:" = GSMime; + "-setIdentity:" = GSMime; + "-setMaximum:" = GSMime; + "-setOriginator:" = GSMime; + "-setPort:" = GSMime; + "-setUsername:" = GSMime; + "-state" = GSMime; + "-stateDesc" = GSMime; + }; + GSMimeSerializer = { + "+binarySerializer" = GSMime; + "+smtp7bitSerializer" = GSMime; + "-copyWithZone:" = GSMime; + "-dataEncoding" = GSMime; + "-encodeDocument:" = GSMime; + "-encodePart:to:" = GSMime; + "-foldAt" = GSMime; + "-setDataEncoding:" = GSMime; + "-setFoldAt:" = GSMime; + "-setTextEncoding:" = GSMime; + "-setUse8bit:" = GSMime; + "-textEncoding" = GSMime; + "-use8bit" = GSMime; + }; + GSSAXHandler = { + "+handler" = GSXML; + "-attribute:value:" = GSXML; + "-attributeDecl:name:type:typeDefValue:defaultValue:" = GSXML; + "-cdataBlock:" = GSXML; + "-characters:" = GSXML; + "-comment:" = GSXML; + "-elementDecl:type:" = GSXML; + "-endDocument" = GSXML; + "-endElement:" = GSXML; + "-endElement:prefix:href:" = GSXML; + "-entityDecl:type:public:system:content:" = GSXML; + "-error:" = GSXML; + "-error:colNumber:lineNumber:" = GSXML; + "-externalSubset:externalID:systemID:" = GSXML; + "-fatalError:" = GSXML; + "-fatalError:colNumber:lineNumber:" = GSXML; + "-getEntity:" = GSXML; + "-getParameterEntity:" = GSXML; + "-globalNamespace:href:prefix:" = GSXML; + "-hasExternalSubset" = GSXML; + "-hasInternalSubset" = GSXML; + "-ignoreWhitespace:" = GSXML; + "-internalSubset:externalID:systemID:" = GSXML; + "-isStandalone" = GSXML; + "-lib" = GSXML; + "-loadEntity:at:" = GSXML; + "-namespaceDecl:href:prefix:" = GSXML; + "-notationDecl:public:system:" = GSXML; + "-parser" = GSXML; + "-processInstruction:data:" = GSXML; + "-reference:" = GSXML; + "-startDocument" = GSXML; + "-startElement:attributes:" = GSXML; + "-startElement:prefix:href:attributes:namespaces:" = GSXML; + "-unparsedEntityDecl:public:system:notationName:" = GSXML; + "-warning:" = GSXML; + "-warning:colNumber:lineNumber:" = GSXML; + }; + GSTLSCertificateList = { + "+listFromFile:" = GSTLS; + "-certificateList" = GSTLS; + "-count" = GSTLS; + "-expiresAt" = GSTLS; + "-expiresAt:" = GSTLS; + }; + GSTLSCredentials = { + "+credentialsFromCAFile:defaultCAFile:revokeFile:defaultRevokeFile:certificateFile:certificateKeyFile:certificateKeyPassword:asClient:debug:" = GSTLS; + "+selfSigned:" = GSTLS; + "-credentials" = GSTLS; + "-key" = GSTLS; + "-list" = GSTLS; + "-trust" = GSTLS; + }; + GSTLSDHParams = { + "+current" = GSTLS; + "+generate" = GSTLS; + "+paramsFromFile:" = GSTLS; + "-params" = GSTLS; + }; + GSTLSObject = { + "+dataForTLSFile:" = GSTLS; + "+setData:forTLSFile:" = GSTLS; + }; + GSTLSPrivateKey = { + "+keyFromFile:withPassword:" = GSTLS; + "-key" = GSTLS; + }; + GSTLSSession = { + "+sessionWithOptions:direction:transport:push:pull:" = GSTLS; + "-active" = GSTLS; + "-age" = GSTLS; + "-credentials" = GSTLS; + "-debug" = GSTLS; + "-disconnect:" = GSTLS; + "-handshake" = GSTLS; + "-initWithOptions:direction:transport:push:pull:" = GSTLS; + "-issuer" = GSTLS; + "-owner" = GSTLS; + "-pending" = GSTLS; + "-problem" = GSTLS; + "-read:length:" = GSTLS; + "-sessionInfo" = GSTLS; + "-verify" = GSTLS; + "-write:length:" = GSTLS; + }; + GSXMLAttribute = { + "-value" = GSXML; + }; + GSXMLDocument = { + "+documentWithVersion:" = GSXML; + "-description" = GSXML; + "-encoding" = GSXML; + "-lib" = GSXML; + "-makeNodeWithNamespace:name:content:" = GSXML; + "-root" = GSXML; + "-setRoot:" = GSXML; + "-version" = GSXML; + "-writeToFile:atomically:" = GSXML; + "-writeToURL:atomically:" = GSXML; + }; + "GSXMLDocument(XSLT)" = { + "+xsltTransformFile:stylesheet:" = GSXML; + "+xsltTransformFile:stylesheet:params:" = GSXML; + "+xsltTransformXml:stylesheet:" = GSXML; + "+xsltTransformXml:stylesheet:params:" = GSXML; + "-xsltTransform:" = GSXML; + "-xsltTransform:params:" = GSXML; + }; + GSXMLNamespace = { + "+descriptionFromType:" = GSXML; + "+typeFromDescription:" = GSXML; + "-href" = GSXML; + "-lib" = GSXML; + "-next" = GSXML; + "-prefix" = GSXML; + "-type" = GSXML; + "-typeDescription" = GSXML; + }; + GSXMLNode = { + "+descriptionFromType:" = GSXML; + "+typeFromDescription:" = GSXML; + "-attributes" = GSXML; + "-content" = GSXML; + "-description" = GSXML; + "-document" = GSXML; + "-escapedContent" = GSXML; + "-firstAttribute" = GSXML; + "-firstChild" = GSXML; + "-firstChildElement" = GSXML; + "-isElement" = GSXML; + "-isText" = GSXML; + "-lib" = GSXML; + "-makeAttributeWithName:value:" = GSXML; + "-makeChildWithNamespace:name:content:" = GSXML; + "-makeComment:" = GSXML; + "-makeNamespaceHref:prefix:" = GSXML; + "-makePI:content:" = GSXML; + "-makeText:" = GSXML; + "-name" = GSXML; + "-namespace" = GSXML; + "-namespaceDefinitions" = GSXML; + "-next" = GSXML; + "-nextElement" = GSXML; + "-objectForKey:" = GSXML; + "-parent" = GSXML; + "-previous" = GSXML; + "-previousElement" = GSXML; + "-propertiesAsDictionaryWithKeyTransformationSel:" = GSXML; + "-setNamespace:" = GSXML; + "-setObject:forKey:" = GSXML; + "-type" = GSXML; + "-typeDescription" = GSXML; + }; + GSXMLParser = { + "+loadEntity:at:" = GSXML; + "+parser" = GSXML; + "+parserWithContentsOfFile:" = GSXML; + "+parserWithContentsOfURL:" = GSXML; + "+parserWithData:" = GSXML; + "+parserWithSAXHandler:" = GSXML; + "+parserWithSAXHandler:withContentsOfFile:" = GSXML; + "+parserWithSAXHandler:withContentsOfURL:" = GSXML; + "+parserWithSAXHandler:withData:" = GSXML; + "+setDTDs:" = GSXML; + "+xmlEncodingStringForStringEncoding:" = GSXML; + "-abortParsing" = GSXML; + "-columnNumber" = GSXML; + "-doValidityChecking:" = GSXML; + "-document" = GSXML; + "-errNo" = GSXML; + "-getWarnings:" = GSXML; + "-initWithSAXHandler:" = GSXML; + "-initWithSAXHandler:withContentsOfFile:" = GSXML; + "-initWithSAXHandler:withContentsOfURL:" = GSXML; + "-initWithSAXHandler:withData:" = GSXML; + "-initWithSAXHandler:withInputStream:" = GSXML; + "-keepBlanks:" = GSXML; + "-lineNumber" = GSXML; + "-messages" = GSXML; + "-parse" = GSXML; + "-parse:" = GSXML; + "-publicID" = GSXML; + "-resolveEntities:" = GSXML; + "-saveMessages:" = GSXML; + "-substituteEntities:" = GSXML; + "-systemID" = GSXML; + }; + GSXMLRPC = { + "-URLHandle:resourceDataDidBecomeAvailable:" = GSXML; + "-URLHandle:resourceDidFailLoadingWithReason:" = GSXML; + "-URLHandleResourceDidBeginLoading:" = GSXML; + "-URLHandleResourceDidCancelLoading:" = GSXML; + "-URLHandleResourceDidFinishLoading:" = GSXML; + "-buildMethod:params:" = GSXML; + "-buildMethodCall:params:" = GSXML; + "-buildResponseWithFaultCode:andString:" = GSXML; + "-buildResponseWithParams:" = GSXML; + "-compact" = GSXML; + "-delegate" = GSXML; + "-initWithURL:" = GSXML; + "-initWithURL:certificate:privateKey:password:" = GSXML; + "-makeMethodCall:params:timeout:" = GSXML; + "-parseMethod:params:" = GSXML; + "-parseResponse:params:" = GSXML; + "-result" = GSXML; + "-sendMethodCall:params:timeout:" = GSXML; + "-setCompact:" = GSXML; + "-setDebug:" = GSXML; + "-setDelegate:" = GSXML; + "-setTimeZone:" = GSXML; + "-timeZone" = GSXML; + "-timeout:" = GSXML; + }; + "GSXMLRPC(Delegate)" = { + "-completedXMLRPC:" = GSXML; + }; + GSXPathBoolean = { + "-booleanValue" = GSXML; + }; + GSXPathContext = { + "-evaluateExpression:" = GSXML; + "-initWithDocument:" = GSXML; + "-registerNamespaceWithPrefix:href:" = GSXML; + }; + GSXPathNodeSet = { + "-count" = GSXML; + "-length" = GSXML; + "-nodeAtIndex:" = GSXML; + }; + GSXPathNumber = { + "-doubleValue" = GSXML; + }; + GSXPathString = { + "-stringValue" = GSXML; + }; + "NSArray(GNUstepBase)" = { + "-insertionPosition:usingFunction:context:" = "NSArray+GNUstepBase"; + "-insertionPosition:usingSelector:" = "NSArray+GNUstepBase"; + }; + "NSAttributedString(GNUstepBase)" = { + "-attributedSubstringWithRange:" = "NSAttributedString+GNUstepBase"; + }; + "NSBundle(GNUstepBase)" = { + "+pathForLibraryResource:ofType:inDirectory:" = "NSBundle+GNUstepBase"; + }; + "NSCalendarDate(GNUstepBase)" = { + "-isoYear" = "NSCalendarDate+GNUstepBase"; + "-weekOfYear" = "NSCalendarDate+GNUstepBase"; + }; + "NSData(GNUstepBase)" = { + "+dataWithRandomBytesOfLength:" = "NSData+GNUstepBase"; + "-escapedRepresentation" = "NSData+GNUstepBase"; + "-escapedRepresentation:" = "NSData+GNUstepBase"; + "-gunzipped" = "NSData+GNUstepBase"; + "-gzipped:" = "NSData+GNUstepBase"; + "-hexadecimalRepresentation" = "NSData+GNUstepBase"; + "-hexadecimalRepresentation:" = "NSData+GNUstepBase"; + "-initWithHexadecimalRepresentation:" = "NSData+GNUstepBase"; + "-isGzipped" = "NSData+GNUstepBase"; + "-md5Digest" = "NSData+GNUstepBase"; + "-uudecodeInto:name:mode:" = "NSData+GNUstepBase"; + "-uuencodeInto:name:mode:" = "NSData+GNUstepBase"; + }; + "NSFileHandle(GNUstepBase)" = { + "+fileHandleAsServerAtAddress:service:protocol:" = "NSFileHandle+GNUstepBase"; + "-socketAddress" = "NSFileHandle+GNUstepBase"; + }; + "NSLock(GNUstepBase)" = { + "+newLockAt:" = "NSLock+GNUstepBase"; + }; + "NSMutableString(GNUstepBase)" = { + "-deletePrefix:" = "NSMutableString+GNUstepBase"; + "-deleteSuffix:" = "NSMutableString+GNUstepBase"; + "-immutableProxy" = "NSMutableString+GNUstepBase"; + "-replaceString:withString:" = "NSMutableString+GNUstepBase"; + "-trimLeadSpaces" = "NSMutableString+GNUstepBase"; + "-trimSpaces" = "NSMutableString+GNUstepBase"; + "-trimTailSpaces" = "NSMutableString+GNUstepBase"; + }; + "NSNumber(GNUstepBase)" = { + "+valueFromString:" = "NSNumber+GNUstepBase"; + }; + "NSObject(GNUstepBase)" = { + "-compare:" = "NSObject+GNUstepBase"; + "-isInstance" = "NSObject+GNUstepBase"; + "-makeImmutable" = "NSObject+GNUstepBase"; + "-makeImmutableCopyOnFail:" = "NSObject+GNUstepBase"; + "-notImplemented:" = "NSObject+GNUstepBase"; + "-shouldNotImplement:" = "NSObject+GNUstepBase"; + "-subclassResponsibility:" = "NSObject+GNUstepBase"; + }; + "NSObject(GSAtExit)" = { + "+atExit" = "NSObject+GNUstepBase"; + }; + "NSObject(GSCleanup)" = { + "+leak:" = "NSObject+GNUstepBase"; + "+leakAt:" = "NSObject+GNUstepBase"; + "+registerAtExit" = "NSObject+GNUstepBase"; + "+registerAtExit:" = "NSObject+GNUstepBase"; + "+setShouldCleanUp:" = "NSObject+GNUstepBase"; + "+shouldCleanUp" = "NSObject+GNUstepBase"; + }; + "NSObject(GSMimeSMTPClient)" = { + "-smtpClient:mimeFailed:" = GSMime; + "-smtpClient:mimeSent:" = GSMime; + "-smtpClient:mimeUnsent:" = GSMime; + }; + "NSObject(MemoryFootprint)" = { + "+contentSizeOf:excluding:" = "NSObject+GNUstepBase"; + "-sizeInBytes" = "NSObject+GNUstepBase"; + "-sizeInBytesExcluding:" = "NSObject+GNUstepBase"; + "-sizeOfContentExcluding:" = "NSObject+GNUstepBase"; + "-sizeOfInstance" = "NSObject+GNUstepBase"; + }; + "NSProcessInfo(GNUstepBase)" = { + "-debugLoggingEnabled" = "NSProcessInfo+GNUstepBase"; + "-debugSet" = "NSProcessInfo+GNUstepBase"; + "-setDebugLoggingEnabled:" = "NSProcessInfo+GNUstepBase"; + }; + "NSRecursiveLock(GNUstepBase)" = { + "+newLockAt:" = "NSLock+GNUstepBase"; + }; + "NSString(GNUstepBase)" = { + "+stringWithFormat:arguments:" = "NSString+GNUstepBase"; + "-stringByDeletingPrefix:" = "NSString+GNUstepBase"; + "-stringByDeletingSuffix:" = "NSString+GNUstepBase"; + "-stringByReplacingString:withString:" = "NSString+GNUstepBase"; + "-stringByTrimmingLeadSpaces" = "NSString+GNUstepBase"; + "-stringByTrimmingSpaces" = "NSString+GNUstepBase"; + "-stringByTrimmingTailSpaces" = "NSString+GNUstepBase"; + "-substringFromRange:" = "NSString+GNUstepBase"; + }; + "NSString(GSXML)" = { + "-stringByEscapingXML" = GSXML; + "-stringByUnescapingXML" = GSXML; + }; + "NSTask(GNUstepBase)" = { + "+executableExtensions" = "NSTask+GNUstepBase"; + "+executablePath:" = "NSTask+GNUstepBase"; + "+launchPathForTool:" = "NSTask+GNUstepBase"; + }; + "NSURL(GNUstepBase)" = { + "-fullPath" = "NSURL+GNUstepBase"; + "-pathWithEscapes" = "NSURL+GNUstepBase"; + }; + "NSURL(GNUstepBaseAdditions)" = { + "-cacheKey" = "NSURL+GNUstepBase"; + "-initWithScheme:user:password:host:port:fullPath:parameterString:query:fragment:" = "NSURL+GNUstepBase"; + }; + }; + variable = { + "_GSIE" = TypesAndConstants; + "gnustep_global_lock" = TypesAndConstants; + "struct _GSIArray" = TypesAndConstants; + "struct _GSIMapBucket" = TypesAndConstants; + "struct _GSIMapNode" = TypesAndConstants; + "struct _GSIMapTable" = TypesAndConstants; + }; +} \ No newline at end of file diff --git a/resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.gsdoc new file mode 100644 index 0000000..3017280 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.gsdoc @@ -0,0 +1,13 @@ + + + + + Classes + + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.html index f169489..ab13c30 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/ClassesTOC.html @@ -11,34 +11,41 @@

Classes

- GCArray
- GCDictionary
- GCMutableArray
- GCMutableDictionary
- GCObject
- GSHTMLParser
- GSHTMLSAXHandler
- GSLazyLock
- GSLazyRecursiveLock
- GSMimeCodingContext
- GSMimeDocument
- GSMimeHeader
- GSMimeParser
- GSMimeSMTPClient
- GSSAXHandler
- GSTreeSAXHandler
- GSXMLAttribute
- GSXMLDocument
- GSXMLNamespace
- GSXMLNode
- GSXMLParser
- GSXMLRPC
- GSXPathBoolean
- GSXPathContext
- GSXPathNodeSet
- GSXPathNumber
- GSXPathObject
- GSXPathString
+ GCArray
+ GCDictionary
+ GCMutableArray
+ GCMutableDictionary
+ GCObject
+ GSHTMLParser
+ GSHTMLSAXHandler
+ GSLazyLock
+ GSLazyRecursiveLock
+ GSMimeCodingContext
+ GSMimeDocument
+ GSMimeHeader
+ GSMimeParser
+ GSMimeSMTPClient
+ GSMimeSerializer
+ GSSAXHandler
+ GSTLSCertificateList
+ GSTLSCredentials
+ GSTLSDHParams
+ GSTLSObject
+ GSTLSPrivateKey
+ GSTLSSession
+ GSTreeSAXHandler
+ GSXMLAttribute
+ GSXMLDocument
+ GSXMLNamespace
+ GSXMLNode
+ GSXMLParser
+ GSXMLRPC
+ GSXPathBoolean
+ GSXPathContext
+ GSXPathNodeSet
+ GSXPathNumber
+ GSXPathObject
+ GSXPathString

diff --git a/resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.gsdoc new file mode 100644 index 0000000..45fdde1 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.gsdoc @@ -0,0 +1,13 @@ + + + + + Constants + + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.html index d97b4b8..31bb39b 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/ConstantsTOC.html @@ -11,7 +11,19 @@

Constants

- GSMimeErrorDomain
+ GSMimeErrorDomain
+ GSTLSCAFile
+ GSTLSCertificateFile
+ GSTLSCertificateKeyFile
+ GSTLSCertificateKeyPassword
+ GSTLSDebug
+ GSTLSIssuers
+ GSTLSOwners
+ GSTLSPriority
+ GSTLSRemoteHosts
+ GSTLSRevokeFile
+ GSTLSServerName
+ GSTLSVerify

diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Functions.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/Functions.gsdoc new file mode 100644 index 0000000..71949e7 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Functions.gsdoc @@ -0,0 +1,10617 @@ + + + + + + Functions + + 2005 Free Software Foundation, Inc. + + + + + + Function index + + + + Macro index + + + + + + + GNUstep macros +

+ + object + value + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the + value to the object with + appropriate retain and release operations.
+ Use this to avoid retain/release errors. +
+
+ + object + value + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the + value to the object with + appropriate retain and release operations.
+ Use this to avoid retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors. +
+
+ + object + value + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the + value to the object with + appropriate retain and release operations.
+ Use this to avoid retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the + object with release of the original.
+ Use this to avoid retain/release errors. +
+
+ + object + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use. +
+
+ + INDEX + OVER + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is not in use. + This is provided to handle obscure cases not covered by + the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
+

+ This function (macro) is a GNUstep extension. +

+

+ _(@"My string to translate") +

+

+ is basically equivalent to +

+

+ + NSLocalizedString(@"My string to + translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _(). + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

+

+ You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

+

+ Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

+

+ This function (macro) is a GNUstep extension. +

+

+ __(@"My string to translate") +

+

+ is exactly the same as +

+

+ + GSLocalizedStaticString(@"My + string to translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

+

+ + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

+

+ But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

+

+ This function (macro) is a GNUstep extensions, and it + is used to localize static strings. Here is an example + of a static string: +

+

+ + NSString *message = @"Hi there";... some code... + NSLog (message); + +

+

+ This string can not be localized using the standard + openstep functions/macros. By using this gnustep + extension, you can localize it as follows: +

+

+ + NSString *message = GSLocalizedStaticString + (@"Hi there", @"Greeting");... some code... NSLog + (NSLocalizedString (message, @"")); + +

+

+ When the tools generate the + Localizable.strings file from the + source code, they will ignore the + NSLocalizedString call while they will + extract the string (and the comment) to localize + from the GSLocalizedStaticString call. +

+

+ When the code is compiled, instead, the + GSLocalizedStaticString call is ignored + (discarded, it is a macro which simply expands + to key), while the + NSLocalizedString will actually look up + the string for translation in the + Localizable.strings file. +

+

+ Please note that there is currently no + macro/function to localize static strings + using different tables. If you need that + functionality, you have either to prepare + the localization tables by hand, or to rewrite your + code in such a way as not to use static strings. +

+ To be used inside a method for making sure that a range + does not specify anything outside the size of an + array/string. Raises exception if range extends + beyond [0,size]. Size must be an + unsigned integer (NSUInteger). +
Checks whether INDEX is strictly + less than OVER (within C array space). + INDEX and OVER must be + unsigned integers (NSUInteger). +
+
+ + X + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code. +
+
+ + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing). +
+
+ + object + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the + value to the object with appropriate retain + and release operations.
Use this to avoid + retain/release errors.
ASSIGNCOPY( + object,value) assigns a copy of the value to + the object with release of the original. +
Use this to avoid retain/release errors.
+ ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the + object with release of the original.
+ Use this to avoid retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object + later. It also makes sure to set the variable to + nil before releasing the + object - to avoid side-effects of the + release trying to reference the object + being released through the variable. +
+
+ + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too). +
+
+ + key + comment + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is not in use. + This is provided to handle obscure cases not covered by + the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
+

+ This function (macro) is a GNUstep extension. +

+

+ _(@"My string to translate") +

+

+ is basically equivalent to +

+

+ + NSLocalizedString(@"My string to + translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _(). + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

+

+ You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

+

+ Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

+

+ This function (macro) is a GNUstep extension. +

+

+ __(@"My string to translate") +

+

+ is exactly the same as +

+

+ + GSLocalizedStaticString(@"My + string to translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

+

+ + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

+

+ But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

+

+ This function (macro) is a GNUstep extensions, and it + is used to localize static strings. Here is an example + of a static string: +

+

+ + NSString *message = @"Hi there";... some code... + NSLog (message); + +

+

+ This string can not be localized using the standard + openstep functions/macros. By using this gnustep + extension, you can localize it as follows: +

+

+ + NSString *message = GSLocalizedStaticString + (@"Hi there", @"Greeting");... some code... NSLog + (NSLocalizedString (message, @"")); + +

+

+ When the tools generate the + Localizable.strings file from the + source code, they will ignore the + NSLocalizedString call while they will + extract the string (and the comment) to + localize from the + GSLocalizedStaticString call. +

+

+ When the code is compiled, instead, the + GSLocalizedStaticString call is ignored + (discarded, it is a macro which simply expands + to key), while the + NSLocalizedString will actually look up + the string for translation in the + Localizable.strings file. +

+

+ Please note that there is currently no + macro/function to localize static strings + using different tables. If you need that + functionality, you have either to prepare + the localization tables by hand, or to rewrite your + code in such a way as not to use static strings. +

+
+
+ + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is not in use. + This is provided to handle obscure cases not covered by + the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
+

+ This function (macro) is a GNUstep extension. +

+

+ _(@"My string to translate") +

+

+ is basically equivalent to +

+

+ + NSLocalizedString(@"My string to + translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _(). + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

+

+ You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

+

+ Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

+
+
+ + RANGE + SIZE + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is not in use. + This is provided to handle obscure cases not covered by + the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
+

+ This function (macro) is a GNUstep extension. +

+

+ _(@"My string to translate") +

+

+ is basically equivalent to +

+

+ + NSLocalizedString(@"My string to + translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _(). + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

+

+ You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

+

+ Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

+

+ This function (macro) is a GNUstep extension. +

+

+ __(@"My string to translate") +

+

+ is exactly the same as +

+

+ + GSLocalizedStaticString(@"My + string to translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

+

+ + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

+

+ But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

+

+ This function (macro) is a GNUstep extensions, and it + is used to localize static strings. Here is an example + of a static string: +

+

+ + NSString *message = @"Hi there";... some code... + NSLog (message); + +

+

+ This string can not be localized using the standard + openstep functions/macros. By using this gnustep + extension, you can localize it as follows: +

+

+ + NSString *message = GSLocalizedStaticString + (@"Hi there", @"Greeting");... some code... NSLog + (NSLocalizedString (message, @"")); + +

+

+ When the tools generate the + Localizable.strings file from the + source code, they will ignore the + NSLocalizedString call while they will + extract the string (and the comment) to localize + from the GSLocalizedStaticString call. +

+

+ When the code is compiled, instead, the + GSLocalizedStaticString call is ignored + (discarded, it is a macro which simply expands + to key), while the + NSLocalizedString will actually look up + the string for translation in the + Localizable.strings file. +

+

+ Please note that there is currently no + macro/function to localize static strings + using different tables. If you need that + functionality, you have either to prepare + the localization tables by hand, or to rewrite your + code in such a way as not to use static strings. +

+ To be used inside a method for making sure that a range + does not specify anything outside the size of an + array/string. Raises exception if range extends + beyond [0,size]. Size must be an + unsigned integer (NSUInteger). +
+
+ + X + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros. +
+
+ + X + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead. +
+
+ + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL. +
+
+ + X + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code. +
+
+ + object + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use. +
+
+ + object + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use. +
+
+ + object + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use. +
+
+ + object + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use. +
+
+ + object + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use. +
+
+ + X + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
+

+ This function (macro) is a GNUstep extension. +

+

+ _(@"My string to translate") +

+

+ is basically equivalent to +

+

+ + NSLocalizedString(@"My string to + translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _(). + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

+

+ You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

+

+ Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

+
+
+ + X + + Basic retain operation... calls + + [NSObject -retain] + +
Does nothing when ARC is in use.
Basic + release operation... calls + + [NSObject -release] + +
Does nothing when ARC is in use.
Basic + autorelease operation... calls + + [NSObject -autorelease] + +
Does nothing when ARC is in use.
Tested + retain - only invoke the objective-c method if the + receiver is not nil.
Does + nothing when ARC is in use.
Tested release - + only invoke the objective-c method if the receiver is + not nil.
Does nothing when ARC is in + use.
Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
Does nothing when ARC is in + use.
ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
Use this to avoid + retain/release errors.
+ ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
Use this to avoid retain/release + errors.
ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
Use this to avoid + retain/release errors.
+ + DESTROY() + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
+ ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
The block must + be terminated with a corresponding LEAVE_POOL.
You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
LEAVE_POOL terminates a + block of code started with ENTER_POOL.
+ Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
DEPRECATED... use + + IF_NO_ARC() + + instead.
DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
+

+ This function (macro) is a GNUstep extension. +

+

+ _(@"My string to translate") +

+

+ is basically equivalent to +

+

+ + NSLocalizedString(@"My string to + translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _(). + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

+

+ You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

+

+ Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

+

+ This function (macro) is a GNUstep extension. +

+

+ __(@"My string to translate") +

+

+ is exactly the same as +

+

+ + GSLocalizedStaticString(@"My + string to translate", @"") + +

+

+ It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

+

+ + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

+

+ But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

+
+
+
+ + + + GSBlocks macros +

+ + + Defines a block type. Will work whether or not the + compiler natively supports blocks.
Calls a + block. Works irrespective of whether the compiler + supports blocks.
Calls a block without + arguments. +
+
+ + block + args + + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Calls a + block without arguments. +
+
+ + block + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Calls a + block without arguments. +
+
+ + block + rettype + args + + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Calls a + block without arguments. +
+
+ + block + rettype + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Calls a + block without arguments. +
+
+ + block + args + + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Defines a + block type. Will work whether or not the + compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Calls a + block without arguments.
Defines a + block type. Will work whether or not the + compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Calls a + block without arguments. +
+
+ + block + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the + compiler supports blocks.
Calls a + block without arguments. +
+
+ + name + retTy + argTys + + + Defines a block type. Will work whether or not the + compiler natively supports blocks.
Defines a + block type. Will work whether or not the compiler + natively supports blocks.
Calls a block. + Works irrespective of whether the compiler supports + blocks.
Calls a block without arguments. +
Defines a block type. Will work whether or not + the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the compiler + supports blocks.
Calls a block without + arguments. +
+
+ + name + retTy + + Defines a block type. Will work whether or not the + compiler natively supports blocks.
Defines a + block type. Will work whether or not the compiler + natively supports blocks.
Calls a block. + Works irrespective of whether the compiler supports + blocks.
Calls a block without arguments. +
Defines a block type. Will work whether or not + the compiler natively supports blocks.
Calls a + block. Works irrespective of whether the compiler + supports blocks.
Calls a block without + arguments. +
+
+
+ + + + GSVersionMacros macros +

+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
+
+ + ADD + REM + +

+ 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 <= version + < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ + #if GS_API_VERSION(ADD,GS_API_LATEST) + +
where ADD is the + version number of the next minor release after the + most recent one.
As a general principle you + should not change the API with changing + subminor version numbers... as that tends to + confuse people (though Apple has sometimes done + it). +

+
+
+ + maj + min + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + X + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + maj + min + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+ + ADD + REM + +

+ 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 <= version + < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ + #if GS_API_VERSION(ADD,GS_API_LATEST) + +
where ADD is the + version number of the next minor release after the + most recent one.
As a general principle you + should not change the API with changing + subminor version numbers... as that tends to + confuse people (though Apple has sometimes done + it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD + <= version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+
+
+ + x + +

+ 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 <= version < 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. +

+

+ 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 the predefined + constants... + + GS_API_NONE + + , + + GS_API_LATEST + + , +

+

+ Also see + + OS_API_VERSION + +

+

+ 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
+ #if GS_API_VERSION(ADD,GS_API_LATEST) +
where ADD is the version number + of the next minor release after the most recent one. +
As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

+

+ Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

+

+ 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... + + GS_API_NONE + + , + + GS_API_LATEST + + , + + GS_API_OSSPEC + + , + + GS_API_OPENSTEP + + , + + GS_API_MACOSX + +

+

+ Also see + + GS_API_VERSION + +

+

+ For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

+ 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.
eg. +
#if + + OS_API_VERSION + + (GS_API_NONE, GS_API_NONE)
denotes code + not present in OpenStep/OPENSTEP/MacOS-X
A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
The version number of the initial OpenStep + specification.
eg.
#if + + OS_API_VERSION + + (GS_API_OSSPEC, GS_API_LATEST)
denotes + code present from the OpenStep specification onwards. +
The version number of the first OPENSTEP + implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_OPENSTEP, GS_API_LATEST)
+ denotes code present from the initial OPENSTEP + version onwards.
The version number of the + first MacOS-X implementation.
eg.
#if + + OS_API_VERSION + + (GS_API_MACOSX, GS_API_LATEST)
denotes + code present from the initial MacOS-X version onwards. +
+
+
+ + + + GSObjCRuntime macros +

+ + + The number of objects to try to get from varargs into an + array on the stack... if there are more than this, use + the heap. NB. This MUST be a multiple of 2 + + + + firstObject + code + + + The number of objects to try to get from varargs into an + array on the stack... if there are more than this, use + the heap. NB. This MUST be a multiple of 2
+

+ This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
The objects + are unpacked from the vararg list into two 'C' arrays + and then a code fragment you specify is able + to make use of them before that 'C' array is destroyed. +

+

+ The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

+

+ The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' arrays.
When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, the pointer + '__objects' will point to the first object in + each pair, and the pointer '__pairs' will point to an + array containing the second halves of the pairs of + objects whose first halves are in '__objects'. +
This lets you pack a list of the form 'key, + value, key, value,...' into an array of keys and an + array of values. +

+

+ This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
The objects + are unpacked from the vararg list into a 'C' array and + then a code fragment you specify is able to + make use of them before that 'C' array is destroyed. +

+

+ The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

+

+ The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' array.
When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, and the + pointer '__objects' will point to the unpacked + objects, ie. firstObject followed by + the vararg arguments up to (but not including) the + first nil. +

+
+
+ + firstObject + code + + + The number of objects to try to get from varargs into an + array on the stack... if there are more than this, use + the heap. NB. This MUST be a multiple of 2
+

+ This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
The objects + are unpacked from the vararg list into two 'C' arrays + and then a code fragment you specify is able + to make use of them before that 'C' array is destroyed. +

+

+ The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

+

+ The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' arrays.
When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, the pointer + '__objects' will point to the first object in + each pair, and the pointer '__pairs' will point to an + array containing the second halves of the pairs of + objects whose first halves are in '__objects'. +
This lets you pack a list of the form 'key, + value, key, value,...' into an array of keys and an + array of values. +

+
+
+
+ + + + GSIMap macros +

+ + state + + Used to implement fast enumeration methods in classes + that use GSIMap for their data storage. + + +
+ + + + NSDebug+GNUstepBase macros +

+ + fmt + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or more + arguments for the format string. Example: + GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or more + arguments for the format string.
Example: + GSOnceMLog(@"This method is deprecated, use + another");
+

+ + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

+

+ Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

+

+ You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

+

+ These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

+

+ NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

+

+ To embed debug logging in your code you use the + + NSWarnLog() + + macro. +

+

+ As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + , and + + NSWarnMLog() + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is like + + NSWarnLog() + + but includes the name and location of the + function in which the macro is used as part of + the log output.
This macro is like + + NSWarnLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
The DLog macro is a less powerful but commonly + used logging macro, defined here for convenience when + porting code. It will tell you the function name and + line number but not the file location. It performs + unconditional logging but is only compiled in + when the program is built with DEBUG defined.
The + Alog macro is the same as the DLog macro, but is always + compiled in to the code whether DEBUG is defined or + not. +
+
+ + fmt + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or more + arguments for the format string. Example: + GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or more + arguments for the format string.
Example: + GSOnceMLog(@"This method is deprecated, use + another");
+

+ + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

+

+ Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

+

+ You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

+

+ These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

+

+ NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

+

+ To embed debug logging in your code you use the + + NSWarnLog() + + macro. +

+

+ As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + , and + + NSWarnMLog() + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is like + + NSWarnLog() + + but includes the name and location of the + function in which the macro is used as part of + the log output.
This macro is like + + NSWarnLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
The DLog macro is a less powerful but commonly + used logging macro, defined here for convenience when + porting code. It will tell you the function name and + line number but not the file location. It performs + unconditional logging but is only compiled in + when the program is built with DEBUG defined. +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another"); +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
+ Example: GSOnceMLog(@"This method is deprecated, use + another"); +
+
+ + key + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt' +
This macro saves the name and location of the + function in which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. +
+
+ + object + msg + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object.
+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object.
+ This macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object. +
+
+ + key + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt' +
This macro saves the name and location of the + function in which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. +
+
+ + key + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
+ This macro is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt' +
This macro saves the name and location of the + function in which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. +
+
+ + object + msg + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object.
+ This macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object. +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
+ Example: GSOnceMLog(@"This method is deprecated, use + another");
+

+ + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

+

+ Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

+

+ You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

+

+ These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

+

+ NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

+

+ To embed debug logging in your code you use the + + NSWarnLog() + + macro. +

+

+ As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + , and + + NSWarnMLog() + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is like + + NSWarnLog() + + but includes the name and location of the + function in which the macro is used as part of + the log output.
+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
+ Example: GSOnceMLog(@"This method is deprecated, use + another");
+

+ + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

+

+ Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

+

+ You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

+

+ These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

+

+ NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

+

+ To embed debug logging in your code you use the + + NSWarnLog() + + macro. +

+

+ As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + , and + + NSWarnMLog() + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is like + + NSWarnLog() + + but includes the name and location of the + function in which the macro is used as part of + the log output.
This macro is like + + NSWarnLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
+ Example: GSOnceMLog(@"This method is deprecated, use + another");
+

+ + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

+

+ Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

+

+ You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

+

+ These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

+

+ NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

+

+ To embed debug logging in your code you use the + + NSWarnLog() + + macro. +

+

+ As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + , and + + NSWarnMLog() + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
+ Example: GSOnceMLog(@"This method is deprecated, use + another");
+

+ + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

+

+ Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

+

+ You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

+

+ These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

+

+ NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

+

+ To embed debug logging in your code you use the + + NSWarnLog() + + macro. +

+

+ As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + , and + + NSWarnMLog() + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is like + + NSWarnLog() + + but includes the name and location of the + function in which the macro is used as part of + the log output.
This macro is like + + NSWarnLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
+
+ + format + args + + +

+ + NSDebugLLog() + + is the basic debug logging macro used to display log + messages using + + NSLog() + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

+

+ Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

+

+ NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

+

+ For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

+

+ NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

+

+ To embed debug logging in your code you use the + + NSDebugLLog() + + or + + NSDebugLog() + + macro. + + NSDebugLog() + + is just + + NSDebugLLog() + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

+

+ You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

+

+ Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

+

+ As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + , + + NSDebugFLLog() + + , + + NSDebugMLog() + + and + + NSDebugMLLog() + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is a shorthand for + + NSDebugLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the function in + which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugFLLog() + + using the default debug key... 'dflt'
This macro + is like + + NSDebugLLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
This macro is a shorthand for + + NSDebugMLLog() + + using then default debug key... 'dflt'
This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
Macro to + log a message only the first time it is encountered. +
Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
Macro to log a message only the + first time it is encountered.
Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
+ Example: GSOnceMLog(@"This method is deprecated, use + another");
+

+ + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

+

+ Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

+

+ You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

+

+ These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

+

+ NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

+

+ To embed debug logging in your code you use the + + NSWarnLog() + + macro. +

+

+ As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + , and + + NSWarnMLog() + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

+ This macro is like + + NSWarnLog() + + but includes the name and location of the + function in which the macro is used as part of + the log output.
This macro is like + + NSWarnLog() + + but includes the name and location of the method + in which the macro is used as part of the log output. +
+
+
+ + + + NSLock+GNUstepBase macros +

+ + IDENT + CLASSNAME + + Returns IDENT which will be initialized to + an instance of a CLASSNAME in a thread safe + manner. If IDENT has been previously + initialized this macro merely returns + IDENT. IDENT is considered + uninitialized, if it contains nil + . CLASSNAME must be either NSLock, + NSRecursiveLock or one of their subclasses. + See + [NSLock(GNUstepBase) +newLockAt:] for details. This macro is intended for code that cannot insure that a lock can be initialized in thread safe manner otherwise. + + NSLock *my_lock = nil; + + void function (void) + { + [GS_INITIALIZED_LOCK(my_lock, NSLock) lock]; + do_work (); + [my_lock unlock]; + } + + + + +
+ + + + + + GSBlocks functions +

+ + + + Defines a block type. Will work whether or not the + compiler natively supports blocks.
Calls a + block. Works irrespective of whether the compiler + supports blocks.
Calls a block without + arguments.
_Block_copy and _Block_release + are weakly imported, but can be assumed to be available + whenever a feature using blocks is accessed by an + application. +
+
+ + + + Description forthcoming. + + +
+ + + + GSVersionMacros functions +

+ + o + + Description forthcoming. + + +
+ + + + GSObjCRuntime functions +

+ + size + + Quickly return autoreleased data storage area. + + + + cls + name + + Deprecated.. use "class_getInstanceVariable()". + + + + name + + + GSClassFromName() + + is deprecated... use "objc_lookUpClass()". + + + + buffer + max + clearCache + + Deprecated... use "objc_getClassList()". + + + + obj + + + GSClassNameFromObject() + + is deprecated... use "object_getClass()". in conjunction + with "class_getName()". + + + + instance + newClass + + Function to change the class of the specified + instance to newClass. This + handles memory debugging issues in GNUstep-base and + also deals with class finalisation issues in a garbage + collecting environment, so you should use this + function rather than attempting to swizzle class + pointers directly. + + + + cls + + Deprecated.. does nothing. + + + + cls + sel + searchInstanceMethods + searchSuperClasses + + Returns the pointer to the method structure for the + selector in the specified class. Depending on + searchInstanceMethods, this function + searches either instance or class methods. Depending + on searchSuperClassesm this function searches either the + specified class only or also its superclasses. +
To obtain the implementation pointer IMP use + returnValue->method_imp which should + be safe across all runtimes.
It should be safe to + use this function in "+load" implementations.
This + function should currently (June 2004) be considered + WIP. Please follow potential changes (Name, parameters, + ...) closely until it stabilizes. +
+
+ + error_id + + Description forthcoming. + + + + cls + + + GSNameFromClass() + + is deprecated... use "class_getName()". + + + + sel + + + GSNameFromSelector() + + is deprecated... use "sel_getName()". + + + + receiver + behavior + +

+ A Behavior can be seen as a "Protocol with an + implementation" or a "Class without any + instance variables". A key feature of behaviors is + that they give a degree of multiple inheritance. +

+

+ Behavior methods, when added to a class, override + the class's superclass methods, but not the class's + methods. +

+

+ Whan a behavior class is added to a + receiver class, not only are the methods + defined in the behavior class added, but + the methods from the behavior's class hierarchy are + also added (unless already present). +

+

+ It's not the case that a class adding behaviors from + another class must have "no instance vars". The + receiver class just has to have the same + layout as the behavior class (optionally + with some additional ivars after those of the + behavior class). +

+

+ This function provides Behaviors without adding any + new syntax to the Objective C language. Simply define a + class with the methods you want to add, then call + this function with that class as the + behavior argument. +

+

+ This function should be called in the + + +initialize + + method of the receiver. +

+

+ If you add several behaviors to a class, be aware that + the order of the additions is significant. +

+
+
+ + receiver + override + +

+ An Override can be seen as a "category implemented as a + separate class and manually added to the + receiver class under program control, + rather than automatically added by the + compiler/runtime. +

+

+ Override methods, when added to a + receiver class, replace the class's + class's methods of the same name (or are added if + the class did not define methods with that name). +

+

+ It's not the case that a class adding overrides from + another class must have "no instance vars". The + receiver class just has to have the same + layout as the override class (optionally + with some additional ivars after those of the + override class). +

+

+ This function provides overrides without adding any + new syntax to the Objective C language. Simply define a + class with the methods you want to add, then call + this function with that class as the + override argument. +

+

+ This function should usually be called in the + + +initialize + + method of the receiver. +

+

+ If you add several overrides to a class, be aware that + the order of the additions is significant. +

+
+
+ + classes + + The classes argument is an array of NSValue + objects containing pointers to classes + previously created by the + + GSObjCMakeClass() + + function. + + + + cls + list + replace + + Given a NULL terminated list of methods, add + them to the class.
If the method already exists + in a superclass, the new version overrides that one, but + if the method already exists in the class itsself, the new + one is quietly ignored (replace==NO) or replaced with the + new version (if replace==YES).
To add class + methods, cls should be the metaclass of + the class to which the methods are being added. +
+
+ + cls + + Returns an autoreleased array of subclasses of + Class cls, including + subclasses of subclasses. + + + + setget + + Turn on (YES), off (NO) or + test (-1) behavior debugging. + + + + obj + + + GSObjCClass() + + is deprecated... use "object_getClass()". + + + + cls + + Returns an autoreleased array containing subclasses + directly descendent of Class + cls. + + + + obj + name + type + size + offset + + This function is used to locate information about the + instance variable of obj called + name. It returns YES if the + variable was found, NO otherwise. If it + returns YES, then the values pointed to + by type, size, and offset + will be set (except where they are null pointers). + + + + cls + name + + Deprecated.. use "class_getInstanceVariable()". + + + + self + key + sel + type + size + offset + + This is used internally by the key-value coding methods, + to get a value from an object either via an accessor + method (if sel is supplied), or via direct + access (if type, size, and + offset are supplied).
Automatic + conversion between NSNumber and C scalar types is + performed.
If type is null and + can't be determined from the selector, the + "-handleQueryWithUnboundKey:" + method is called (if the object responds to that + message) to try to get a value. +
+
+ + obj + offset + size + data + + Gets the value from an instance variable in + obj
This function performs no + checking... you should use it only where you are + providing information from a call to + + GSObjCFindVariable() + + and you know that the data area provided is + the correct size. +
+
+ + cls + + + GSObjCIsClass() + + is deprecated... use "object_getClass()" in conjunction + with "class_isMetaClass()". + + + + obj + + + GSObjCIsInstance() + + is deprecated... use "object_getClass()" in conjunction + with "class_isMetaClass()". + + + + cls + other + + Test to see if class inherits from another class The + argument to this function must NOT be + nil. + + + + name + superName + iVars + + references: + http://www.macdevcenter.com/pub/a/mac/2002/05/31/runtime_parttwo.html?page=1 http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/9objc_runtime_reference/chapter_5_section_1.html http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/9objc_runtime_reference/chapter_5_section_21.html ObjcRuntimeUtilities.m by Nicola Pero
+

+ Create a Class structure for use by + the ObjectiveC runtime and return an NSValue object + pointing to it. The class will not be added to the + runtime (you must do that later using the + + GSObjCAddClasses() + + function). +

+

+ The iVars dictionary lists the instance + variable names and their types. +

+
+
+ + obj + recurse + + This method returns an array listing the names of all + the instance methods available to obj, whether + they belong to the class of obj or one of its + superclasses.
If obj is a + class, this returns the class methods.
Returns + nil if obj is nil + . +
+
+ + self + key + val + sel + type + size + offset + + This is used internally by the key-value coding methods, + to set a value in an object either via an accessor method + (if sel is supplied), or via direct access (if + type, size, and offset + are supplied).
Automatic conversion between + NSNumber and C scalar types is performed.
If + type is null and can't be determined from + the selector, the "-handleTakeValue:forUnboundKey:" + method is called (if the object responds to that + message) to try to set a value. +
+
+ + obj + offset + size + data + + Sets the value in an instance variable in obj +
This function performs no checking... you + should use it only where you are providing information + from a call to + + GSObjCFindVariable() + + and you know that the data area provided is + the correct size. +
+
+ + cls + + + GSObjCSuper() + + is deprecated... use "class_getSuperclass()". + + + + obj + recurse + + This method returns an array listing the names of all + the instance variables present in the instance + obj, whether they belong to the class of + obj or one of its superclasses.
+ Returns nil if obj is + nil. +
+
+ + cls + + + GSObjCVersion() + + is deprecated... use "class_getVersion()" + + + + fptr + format + + +

+ Prints a message to fptr using the + format string provided and any additional + arguments. The format string is + interpreted as by the NSString formatted + initialisers, and understands the '%@' syntax + for printing an object. +

+

+ The data is written to the file pointer in the default + CString encoding if possible, as a UTF8 string + otherwise. +

+

+ This function is recommended for printing general log + messages. For debug messages use + + NSDebugLog() + + and friends. For error logging use + + NSLog() + + , and for warnings you might consider + + NSWarnLog() + + . +

+
+
+ + name + + Returns a protocol object with the corresponding + name. This function searches the registered + classes for any protocol with the supplied + name. If one is found, it is cached in for + future requests. If efficiency is a factor then use + + GSRegisterProtocol() + + to insert a protocol explicitly into the cache used by + this function. If no protocol is found this function + returns nil. + + + + aProtocol + aSel + isRequired + isInstance + + A variant of protocol_getMethodDescription which + recursively searches parent protocols if the + requested selector isn't found in the given + protocol. Returns a {NULL, NULL} structure if the + requested selector couldn't be found. + + + + proto + + Registers proto in the cache used by + + GSProtocolFromName() + + . + + + + name + + + GSSelectorFromName() + + is deprecated... use "sel_getUid()". + + + + name + types + + Return the selector for the specified name + and types.
Returns a nul pointer if the + name is nul.
Creates a new selector + if necessary.
Code must NOT rely on this providing + a selector with type information. +
+
+ + types1 + types2 + + Compare only the type information ignoring + qualifiers, the frame layout and register + markers. Unlike sel_types_match, this function also + handles comparisons of types with and without any + layout information. + + + + types + + Takes full type information and skips forward to the + actual type as specified in the _C_... constants. + + + + sel + + Return the type information from the specified + selector.
May return a nul pointer if the + selector was a nul pointer or if it was not typed + (or if the runtime does not support typed selectors). +
Code must NOT rely on this providing any type + information. +
+
+
+ + + + GSIArray functions +

+ + array + item + + Description forthcoming. + + + + array + item + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + sorter + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + zone + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + next + + Description forthcoming. + + + + array + zone + capacity + + Description forthcoming. + + + + array + zone + capacity + buffer + + Description forthcoming. + + + + array + item + index + + Description forthcoming. + + + + array + item + index + + Description forthcoming. + + + + array + item + sorter + + Description forthcoming. + + + + array + item + sorter + + Description forthcoming. + + + + array + item + sorter + + Description forthcoming. + + + + array + index + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + index + + Description forthcoming. + + + + array + index + + Description forthcoming. + + + + array + index + + Description forthcoming. + + + + array + + Description forthcoming. + + + + array + item + sorter + + Description forthcoming. + + + + array + item + index + + Description forthcoming. + + + + array + + Description forthcoming. + + +
+ + + + GSIMap functions +

+ + map + key + + Description forthcoming. + + + + map + key + + Description forthcoming. + + + + bucket + node + + Description forthcoming. + + + + map + node + + Description forthcoming. + + + + map + key + value + + Description forthcoming. + + + + map + key + value + + Description forthcoming. + + + + map + key + + Description forthcoming. + + + + map + + Description forthcoming. + + + + map + state + stackbuf + len + + Used to implement fast enumeration methods in classes + that use GSIMap for their data storage. + + + + map + + Description forthcoming. + + + + enumerator + + Tidies up after map enumeration... effectively + destroys the enumerator. + + + + enumerator + + Returns the bucket from which the next node in the + enumeration will come. Once the next node has + been enumerated, you can use the bucket and node to + remove the node from the map using the + + GSIMapRemoveNodeFromMap() + + function. + + + + map + + Enumerating
Create an return an enumerator + for the specified map.
You must call + + GSIMapEndEnumerator() + + when you have finished with the enumerator.
+ WARNING You should not alter a + map while an enumeration is in progress. The + results of doing so are reasonably unpredictable. +
Remember, DON'T MESS WITH A MAP WHILE YOU'RE + ENUMERATING IT. +
+
+ + enumerator + + Returns the next node in the map, or a nul pointer if + at the end. + + + + map + + Description forthcoming. + + + + map + node + + Description forthcoming. + + + + map + zone + capacity + + Description forthcoming. + + + + bucket + node + + Description forthcoming. + + + + map + required + + Description forthcoming. + + + + map + key + + Description forthcoming. + + + + map + bucket + key + + Description forthcoming. + + + + map + key + + Description forthcoming. + + + + hash + buckets + bucketCount + + Description forthcoming. + + + + map + old_buckets + old_bucketCount + new_buckets + new_bucketCount + + Description forthcoming. + + + + map + bkt + node + + Description forthcoming. + + + + map + key + + Removes the item for the specified key + from the map. If the key was + present, returns YES, otherwise returns + NO. + + + + bucket + node + + Description forthcoming. + + + + map + bkt + node + + Description forthcoming. + + + + map + + Description forthcoming. + + + + map + new_capacity + + Description forthcoming. + + + + map + capacity + + Description forthcoming. + + + + map + + Description forthcoming. + + + + bucket + node + + Description forthcoming. + + +
+ + + + GSLocale functions +

+ + + Returns the locale string for LC_MESSAGES + + + + + Set the current locale to the system default, and backup + what it was previously (should have been @"C").
+ Restore the current locale to what we backed up + (again, should be restored to @"C") +
+
+ + locale + + Returns a language name string for a given + locale. e.g. GSLanguageFromLocale(@"en_CA") + returns @"CanadaEnglish" + + + + locale + + Convenience function which calls GSLocaleVariants + to expand the given locale to a list of + variants, and then calls GSLanguageFromLocale on + each. e.g. GSLanguagesFromLocale(@"en_CA") returns + (@"CanadaEnglish", @"English") + + + + locale + + Return an array of variants of a locale, + formed by stripping off parts of the identifier, + ordered from most similar to least similar. e.g. + GSLocaleVariants(@"en_CA") returns + (@"en_CA", @"en"). + + + + category + locale + + Description forthcoming. + + + + category + loc + + Description forthcoming. + + +
+ + + + GSFunctions functions +

+ + paths + aName + anExtension + + Try to locate file/directory (aName).( + anExtension (aName).(anExtension) + in paths. Will return the first found or + nil if nothing is found.
+ Deprecated... may be removed in later release. +
+
+
+ + + + NSDebug+GNUstepBase functions +

+ + func + file + line + fmt + + Used to produce a format string for logging a message + with function location details. + + + + obj + sel + file + line + fmt + + Used to produce a format string for logging a message + with method location details. + + + + level + + Description forthcoming. + + +
+ + + + NSString+GNUstepBase functions +

+ + mode + + See "Portable path handling" in NSString.h. + + +
+ + + + NSThread+GNUstepBase functions +

+ + + Description forthcoming. + + + + + Description forthcoming. + + +
+ + + + Unicode functions +

+ + registry + encoding + + Returns the NSStringEncoding that matches the + specified character set registry and + encoding information. For instance, for the + iso8859-5 character set, the registry is + iso8859 and the encoding is 5, and the + returned NSStringEncoding is + NSISOLatinCyrillicStringEncoding. + If there is no specific encoding, use @"0". + Returns GSUndefinedEncoding if there is no match. + + + + clocale + + Try to deduce the string encoding from the locale string + clocale. This function looks in the + Locale.encodings file installed as part of + GNUstep Base if the encoding cannot be deduced from + the clocale string itself. If + clocale isn't set or no match can be found, + returns GSUndefinedEncoding. + + + + dst + size + src + slen + enc + zone + options + + Function to convert from 16-bit unicode to 8-bit + data. +

+ The dst argument is a pointer to a pointer + to a buffer in which the converted data is to be stored. + If it is a null pointer, this function discards + converted data, and is used only to determine the + length of the converted data. If the zone + argument is non-nul, the function is free to + allocate a larger buffer if necessary, and store + this new buffer in the dst argument. It + will *NOT* deallocate the original buffer! +

+

+ The size argument is a pointer to the + initial size of the destination buffer. + If the function changes the buffer size, this + value will be altered to the new size. + This is measured in bytes. +

+

+ The src argument is a pointer to the 16-bit + unicode string which is to be converted to 8-bit + data. +

+

+ The slen argument is the length of the + 16-bit unicode string which is to be converted to + 8-bit data. This is measured in 16-bit characters, + not bytes. +

+

+ The enc argument specifies the encoding type + of the 8-bit byte sequence which is to be produced from + the 16-bit unicode. +

+

+ The zone argument specifies a memory + zone in which the function may allocate a + buffer to return data in. If this is nul, the + function will fail if the originally supplied + buffer is not big enough (unless dst is a + null pointer... indicating that converted data is to + be discarded).
If the library is built for + garbage collecting, the zone argument is + used only as a marker to say whether the function may + allocate memory (zone is non-null) or + not (zone is null). +

+ The options argument controls some special + behavior. + + + If GSUniStrict is set, the function will fail if a + character is encountered in the source which + can't be converted. Otherwise, some approximation + or marker will be placed in the destination. + + + If GSUniTerminate is set, the function is expected to + nul terminate the output data, and will assume that + it is safe to place the nul just beyond the end of the + stated buffer size. Also, if the + function grows the buffer, it will allow for an + extra termination byte. + + + If GSUniTemporary is set, the function will return the + results in an autoreleased buffer rather than in + a buffer that the caller must release. + + + If GSUniBOM is set, the function will read the first + unicode character as a byte order marker. + + + If GSUniShortOk is set, the function will return a + buffer containing any decoded characters even if + the whole conversion fails. + + +

+ On return, the function result is a flag indicating + success (YES) or failure ( + NO), and on success, the value stored + in size is the number of bytes in the + converted data. The converted data itself is + stored in the location given by dst. +
NB. If the value stored in dst has + been changed, it is a pointer to allocated memory + which the caller is responsible for freeing, and the + caller is still responsible for freeing the + original buffer. +

+
+
+ + dst + size + src + slen + enc + zone + options + + Function to convert from 8-bit data to 16-bit + unicode characters. +

+ The dst argument is a pointer to a pointer + to a buffer in which the converted string is to be + stored. If it is a null pointer, this function + discards converted data, and is used only to + determine the length of the converted string. If + the zone argument is non-nul, the function + is free to allocate a larger buffer if necessary, and + store this new buffer in the dst argument. + It will *NOT* deallocate the original buffer! +

+

+ The size argument is a pointer to the + initial size of the destination buffer. + If the function changes the buffer size, this + value will be altered to the new size. + This is measured in 16-bit unicode characters, not + bytes. +

+

+ The src argument is a pointer to the byte + sequence which is to be converted to 16-bit + unicode. +

+

+ The slen argument is the length of the byte + sequence which is to be converted to 16-bit + unicode. This is measured in bytes. +

+

+ The enc argument specifies the encoding type + of the 8-bit byte sequence which is to be converted to + 16-bit unicode. +

+

+ The zone argument specifies a memory + zone in which the function may allocate a + buffer to return data in. If this is nul, the + function will fail if the originally supplied + buffer is not big enough (unless dst is a + null pointer... indicating that converted data is to + be discarded).
If the library is built for + garbage collecting, the zone argument is + used only as a marker to say whether the function may + allocate memory (zone is non-null) or + not (zone is null). +

+ The options argument controls some special + behavior. + + + If GSUniTerminate is set, the function is expected to + null terminate the output string, and will assume + that it is safe to place the nul just beyond the end + of the stated buffer size. Also, if the + function grows the buffer, it will allow for an + extra termination character. + + + If GSUniTemporary is set, the function will return the + results in an autoreleased buffer rather than in + a buffer that the caller must release. + + + If GSUniBOM is set, the function will write the first + unicode character as a byte order marker. + + + If GSUniShortOk is set, the function will return a + buffer containing any decoded characters even if + the whole conversion fails. + + +

+ On return, the function result is a flag indicating + success (YES) or failure ( + NO), and on success, the value stored + in size is the number of characters in the + converted string. The converted string itself is + stored in the location given by dst. +
NB. If the value stored in dst has + been changed, it is a pointer to allocated memory + which the caller is responsible for freeing, and the + caller is still responsible for freeing the + original buffer. +

+
+
+ + chars + length + isASCII + isLatin1 + + Function to check a block of data for validity as a + unicode string and say whether it contains solely + ASCII or solely Latin1 data.
Any leading BOM + must already have been removed and the data must already + be in native byte order.
Returns the number of + characters which were found valid. +
+
+ + u + + Description forthcoming. + + + + u + + Description forthcoming. + + + + u + + Description forthcoming. + + + + ch + + Uses direct access into a two-level table to map cases. +
The two-level table method is less space + efficient (but still not bad) than a single table + and a linear search, but it reduces the number of + conditional statements to just one. +
+
+ + ch + + Uses direct access into a two-level table to map cases. +
The two-level table method is less space + efficient (but still not bad) than a single table + and a linear search, but it reduces the number of + conditional statements to just one. +
+
+
+ + + +
diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Functions.html b/resources/documentation/Developer/BaseAdditions/Reference/Functions.html index 210732a..3523368 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/Functions.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/Functions.html @@ -42,40 +42,46 @@

Contents -

GSObjCRuntime macros
  • - NSDebug+GNUstepBase macros + GSIMap macros
  • - NSLock+GNUstepBase macros + NSDebug+GNUstepBase macros
  • - GSBlocks functions + NSLock+GNUstepBase macros
  • - GSVersionMacros functions + GSBlocks functions
  • - GSObjCRuntime functions + GSVersionMacros functions
  • - GSIArray functions + GSObjCRuntime functions
  • - GSIMap functions + GSIArray functions
  • - GSFunctions functions + GSIMap functions
  • GSLocale functions
  • - NSDebug+GNUstepBase functions + GSFunctions functions
  • - NSThread+GNUstepBase functions + NSDebug+GNUstepBase functions
  • - Unicode functions + NSString+GNUstepBase functions +
  • +
  • + NSThread+GNUstepBase functions +
  • +
  • + Unicode functions

  • @@ -83,181 +89,215 @@

    Contents -

    Function index

    Function

    Macro index

    Macro @@ -271,7 +311,33 @@

    ASSIGN


    - ASSIGN(object,value) assigns the + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to the object with appropriate retain and release operations.
    Use this to avoid retain/release errors. @@ -285,6 +351,36 @@

    ASSIGNCOPY


    + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the + value to the object with + appropriate retain and release operations.
    + Use this to avoid retain/release errors.
    ASSIGNCOPY(object,value) assigns a copy of the value to the object with release of the original.
    Use this to avoid @@ -292,90 +388,170 @@

    ASSIGNCOPY


    -

    AUTORELEASE

    - AUTORELEASE(object)
    +

    ASSIGNMUTABLECOPY

    + ASSIGNMUTABLECOPY(object, value)
    Availability: OpenStep

    - Basic autorelease operation... calls + Basic retain operation... calls - [NSObject -autorelease] + [NSObject -retain] -
    Deprecated... pointless on modern processors. - Simply call the +
    Does nothing when ARC is in use.
    Basic + release operation... calls - -autorelease + [NSObject -release] - method. - -
    -
    -

    CHECK_INDEX_RANGE_ERROR

    - CHECK_INDEX_RANGE_ERROR(INDEX, OVER)
    -
    -Availability: OpenStep
    -
    -
    - - Checks whether INDEX is strictly less than - OVER (within C array space). - INDEX and OVER must be - unsigned integers (NSUInteger). +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the + value to the object with + appropriate retain and release operations.
    + Use this to avoid retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the + object with release of the original.
    + Use this to avoid retain/release errors.

    -

    CREATE_AUTORELEASE_POOL

    - CREATE_AUTORELEASE_POOL(X)
    +

    AUTORELEASE

    + AUTORELEASE(object)
    Availability: OpenStep

    - DEPRECATED... use NSAutoreleasePool *X = - [NSAutoreleasePool new] + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.

    -

    DESTROY

    - DESTROY(object)
    +

    CHECK_INDEX_RANGE_ERROR

    + CHECK_INDEX_RANGE_ERROR(INDEX, OVER)
    Availability: OpenStep

    -
    -

    GSLocalizedStaticString

    - GSLocalizedStaticString(key, comment)
    -
    -Availability: OpenStep
    -
    -
    - + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is not in use. + This is provided to handle obscure cases not covered by + the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.

    - This function (macro) is a GNUstep extensions, and it - is used to localize static strings. Here is an example - of a static string: + This function (macro) is a GNUstep extension.

    @@ -383,10 +559,7 @@

    GSLocalizedStaticString

    - - NSString *message = @"Hi there";... some code... - NSLog (message); - + _(@"My string to translate")

    @@ -394,9 +567,7 @@

    GSLocalizedStaticString

    - This string can not be localized using the standard - openstep functions/macros. By using this gnustep - extension, you can localize it as follows: + is basically equivalent to

    @@ -405,9 +576,8 @@

    GSLocalizedStaticString

    - NSString *message = GSLocalizedStaticString - (@"Hi there", @"Greeting");... some code... NSLog - (NSLocalizedString (message, @"")); + NSLocalizedString(@"My string to + translate", @"")

    @@ -416,13 +586,15 @@

    GSLocalizedStaticString

    - When the tools generate the - Localizable.strings file from the - source code, they will ignore the - NSLocalizedString call while they will - extract the string (and the comment) to - localize from the - GSLocalizedStaticString call. + It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _() +. + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment.

    @@ -430,13 +602,16 @@

    GSLocalizedStaticString

    - When the code is compiled, instead, the - GSLocalizedStaticString call is ignored - (discarded, it is a macro which simply expands - to key), while the - NSLocalizedString will actually look up - the string for translation in the - Localizable.strings file. + You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
    This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
    If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function.

    @@ -444,164 +619,45 @@

    GSLocalizedStaticString

    - Please note that there is currently no - macro/function to localize static strings - using different tables. If you need that - functionality, you have either to prepare - the localization tables by hand, or to rewrite your - code in such a way as not to use static strings. + Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information.

    - -

    -
    -

    GS_RANGE_CHECK

    - GS_RANGE_CHECK(RANGE, SIZE)
    -
    -Availability: OpenStep
    -
    -
    - - To be used inside a method for making sure that a range - does not specify anything outside the size of an - array/string. Raises exception if range extends - beyond [0,size]. Size must be an - unsigned integer (NSUInteger). - -
    -
    -

    RECREATE_AUTORELEASE_POOL

    - RECREATE_AUTORELEASE_POOL(X)
    -
    -Availability: OpenStep
    -
    -
    - - DEPRECATED... use [X release]; - X = [NSAutoreleasePool new] - -
    -
    -

    RELEASE

    - RELEASE(object)
    -
    -Availability: OpenStep
    -
    -
    - - Basic release operation... calls - - [NSObject -release] - - -
    Deprecated... pointless on modern processors. - Simply call the - - -release +

    +

    - method. - -

    -
    -

    RETAIN

    - RETAIN(object)
    -
    -Availability: OpenStep
    -
    -
    + This function (macro) is a GNUstep extension. +

    +

    - Basic retain operation... calls - - [NSObject -retain] +

    +

    -
    Deprecated... pointless on modern processors. - Simply call the - - -retain + __(@"My string to translate") +

    +

    + +

    +

    - method. - -

    -
    -

    TEST_AUTORELEASE

    - TEST_AUTORELEASE(object)
    -
    -Availability: OpenStep
    -
    -
    + is exactly the same as +

    +

    - Tested autorelease - only invoke the objective-c - method if the receiver is not nil.
    - Deprecated... pointless on modern processors. - Simply call the - - -autorelease +

    +

    - method. - -

    -
    -

    TEST_RELEASE

    - TEST_RELEASE(object)
    -
    -Availability: OpenStep
    -
    -
    - - Tested release - only invoke the objective-c method if - the receiver is not nil.
    Deprecated - ... pointless on modern processors. Simply call the - - -release - - - method. - -
    -
    -

    TEST_RETAIN

    - TEST_RETAIN(object)
    -
    -Availability: OpenStep
    -
    -
    - - Tested retain - only invoke the objective-c method if - the receiver is not nil.
    Deprecated - ... pointless on modern processors. Simply call the - - -retain - - - method. - -
    -
    -

    _

    - _(X)
    -
    -Availability: OpenStep
    -
    -
    - - -

    -

    - - This function (macro) is a GNUstep extension. -

    -

    - - -

    -

    - - _(@"My string to translate") + + GSLocalizedStaticString(@"My + string to translate", @"") +

    @@ -609,7 +665,9 @@

    _

    - is basically equivalent to + It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings:

    @@ -618,8 +676,8 @@

    _

    - NSLocalizedString(@"My string to - translate", @"") + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages));

    @@ -628,61 +686,21 @@

    _

    - It is useful when you need to translate an application - very quickly, as you just need to enclose all strings - inside - _() -. But please note that when you use this macro, you are not taking advantage of comments for the translator, so - consider using NSLocalizedString - instead when you need a comment. -

    -

    - - -

    -

    - - You may define GS_LOCALISATION_BUNDLE_ID to the bundle - identifier of the bundle which is to provide the - localisation information.
    This can be - used when compiling a single file by specifying - something like '-D - GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' - in your make file.
    If this is not defined, the - localisation is provided by your application's - main bundle exactly like the NSLocalizedString - function. -

    -

    - - -

    -

    - - Alternatively you may define - GS_LOCALISATION_BUNDLE to be the - bundle to be used to prvide the localisation - information. + consider using + GSLocalizedStaticString instead when + you need a comment.

    - -

    -
    -

    __

    - __(X)
    -
    -Availability: OpenStep
    -
    -
    -

    - This function (macro) is a GNUstep extension. + This function (macro) is a GNUstep extensions, and it + is used to localize static strings. Here is an example + of a static string:

    @@ -690,7 +708,10 @@

    __

    - __(@"My string to translate") + + NSString *message = @"Hi there";... some code... + NSLog (message); +

    @@ -698,7 +719,9 @@

    __

    - is exactly the same as + This string can not be localized using the standard + openstep functions/macros. By using this gnustep + extension, you can localize it as follows:

    @@ -707,8 +730,9 @@

    __

    - GSLocalizedStaticString(@"My - string to translate", @"") + NSString *message = GSLocalizedStaticString + (@"Hi there", @"Greeting");... some code... NSLog + (NSLocalizedString (message, @""));

    @@ -717,9 +741,12 @@

    __

    - It is useful when you need to translate an application - very quickly. You would use it as follows for static - strings: + When the tools generate the + Localizable.strings file from the + source code, they will ignore the + NSLocalizedString call while they will + extract the string (and the comment) to localize + from the GSLocalizedStaticString call.

    @@ -727,10 +754,13 @@

    __

    - - NSString *message = __(@"Hello there");... more - code... NSLog (_(messages)); - + When the code is compiled, instead, the + GSLocalizedStaticString call is ignored + (discarded, it is a macro which simply expands + to key), while the + NSLocalizedString will actually look up + the string for translation in the + Localizable.strings file.

    @@ -738,162 +768,396 @@

    __

    - But please note that when you use this macro, you are - not taking advantage of comments for the translator, so - consider using - GSLocalizedStaticString instead when - you need a comment. + Please note that there is currently no + macro/function to localize static strings + using different tables. If you need that + functionality, you have either to prepare + the localization tables by hand, or to rewrite your + code in such a way as not to use static strings.

    + To be used inside a method for making sure that a range + does not specify anything outside the size of an + array/string. Raises exception if range extends + beyond [0,size]. Size must be an + unsigned integer (NSUInteger). +
    Checks whether INDEX is strictly + less than OVER (within C array space). + INDEX and OVER must be + unsigned integers (NSUInteger).


    - -

    GSBlocks macros

    -

    -

    -

    CALL_BLOCK

    - CALL_BLOCK(block, args,...)
    +

    CREATE_AUTORELEASE_POOL

    + CREATE_AUTORELEASE_POOL(X)
    Availability: OpenStep

    - Calls a block. Works irrespective of whether - the compiler supports blocks. + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.

    -

    CALL_BLOCK_NO_ARGS

    - CALL_BLOCK_NO_ARGS(block)
    +

    DEALLOC

    + DEALLOC
    Availability: OpenStep

    - Calls a block without arguments. - -
    -
    + Basic retain operation... calls + + [NSObject -retain] + -

    GSVersionMacros macros

    -

    -

    -

    GS_API_LATEST

    - GS_API_LATEST
    -
    -Availability: OpenStep
    -
    -
    - - A constant to represent a feature which is still present in - the latest version. This is the highest possible version - number.
    eg.
    #if - - OS_API_VERSION +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    +
    + DESTROY() - (GS_API_MACOSX, GS_API_LATEST)
    denotes - code present from the initial MacOS-X version onwards. + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).

    -

    GS_API_MACOSX

    - GS_API_MACOSX
    +

    DESTROY

    + DESTROY(object)
    Availability: OpenStep

    - The version number of the first MacOS-X implementation. -
    eg.
    #if - - OS_API_VERSION + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the + value to the object with appropriate retain + and release operations.
    Use this to avoid + retain/release errors.
    ASSIGNCOPY( + object,value) assigns a copy of the value to + the object with release of the original. +
    Use this to avoid retain/release errors.
    + ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the + object with release of the original.
    + Use this to avoid retain/release errors.
    +
    + DESTROY() - (GS_API_MACOSX, GS_API_LATEST)
    denotes - code present from the initial MacOS-X version onwards. + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object + later. It also makes sure to set the variable to + nil before releasing the + object - to avoid side-effects of the + release trying to reference the object + being released through the variable.

    -

    GS_API_NONE

    - GS_API_NONE
    +

    ENTER_POOL

    + ENTER_POOL
    Availability: OpenStep

    - 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.
    eg. -
    #if - - OS_API_VERSION + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    +
    + DESTROY() - (GS_API_NONE, GS_API_NONE)
    denotes code - not present in OpenStep/OPENSTEP/MacOS-X + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).

    -

    GS_API_OPENSTEP

    - GS_API_OPENSTEP
    +

    GSLocalizedStaticString

    + GSLocalizedStaticString(key, comment)
    Availability: OpenStep

    -
    -

    GS_API_OSSPEC

    - GS_API_OSSPEC
    -
    -Availability: OpenStep
    -
    - -
    -

    GS_API_VERSION

    - GS_API_VERSION(ADD, REM)
    -
    -Availability: OpenStep
    -
    -
    + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    - 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 <= version - < 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. + _(@"My string to translate")

    @@ -901,23 +1165,34 @@

    GS_API_VERSION

    - 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 the predefined - constants... - - GS_API_NONE - + is basically equivalent to +

    +

    + + +

    +

    - , - - GS_API_LATEST - + + NSLocalizedString(@"My string to + translate", @"") + +

    +

    + + +

    +

    - , + It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _() +. + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment.

    @@ -925,11 +1200,51 @@

    GS_API_VERSION

    - Also see - - OS_API_VERSION - + You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
    This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
    If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

    +

    + + +

    +

    + + Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

    +

    + + +

    +

    + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + __(@"My string to translate") +

    +

    + + +

    +

    + + is exactly the same as

    @@ -937,44 +1252,11309 @@

    GS_API_VERSION

    - 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
    - #if GS_API_VERSION(ADD,GS_API_LATEST) + GSLocalizedStaticString(@"My + string to translate", @"") -
    where ADD is the - version number of the next minor release after the - most recent one.
    As a general principle you - should not change the API with changing - subminor version numbers... as that tends to - confuse people (though Apple has sometimes done - it).

    - -

    -
    -

    OS_API_VERSION

    - OS_API_VERSION(ADD, REM)
    -
    -Availability: OpenStep
    -
    -
    + +

    +

    + + It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

    +

    - Macro to check a defined OpenStep/OPENSTEP/MacOS-X - version against the supplied arguments. Returns - true if no version is specified, or if ADD - <= version < 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. + + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

    +

    + + +

    +

    + + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

    +

    + + +

    +

    + + This function (macro) is a GNUstep extensions, and it + is used to localize static strings. Here is an example + of a static string: +

    +

    + + +

    +

    + + + NSString *message = @"Hi there";... some code... + NSLog (message); + +

    +

    + + +

    +

    + + This string can not be localized using the standard + openstep functions/macros. By using this gnustep + extension, you can localize it as follows: +

    +

    + + +

    +

    + + + NSString *message = GSLocalizedStaticString + (@"Hi there", @"Greeting");... some code... NSLog + (NSLocalizedString (message, @"")); + +

    +

    + + +

    +

    + + When the tools generate the + Localizable.strings file from the + source code, they will ignore the + NSLocalizedString call while they will + extract the string (and the comment) to + localize from the + GSLocalizedStaticString call. +

    +

    + + +

    +

    + + When the code is compiled, instead, the + GSLocalizedStaticString call is ignored + (discarded, it is a macro which simply expands + to key), while the + NSLocalizedString will actually look up + the string for translation in the + Localizable.strings file. +

    +

    + + +

    +

    + + Please note that there is currently no + macro/function to localize static strings + using different tables. If you need that + functionality, you have either to prepare + the localization tables by hand, or to rewrite your + code in such a way as not to use static strings. +

    +

    + + +

    +
    +

    GS_LOCALISATION_BUNDLE

    + GS_LOCALISATION_BUNDLE
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is not in use. + This is provided to handle obscure cases not covered by + the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + _(@"My string to translate") +

    +

    + + +

    +

    + + is basically equivalent to +

    +

    + + +

    +

    + + + NSLocalizedString(@"My string to + translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _() +. + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

    +

    + + +

    +

    + + You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
    This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
    If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

    +

    + + +

    +

    + + Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

    +

    + + +

    +
    +

    GS_RANGE_CHECK

    + GS_RANGE_CHECK(RANGE, SIZE)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is not in use. + This is provided to handle obscure cases not covered by + the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + _(@"My string to translate") +

    +

    + + +

    +

    + + is basically equivalent to +

    +

    + + +

    +

    + + + NSLocalizedString(@"My string to + translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _() +. + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

    +

    + + +

    +

    + + You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
    This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
    If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

    +

    + + +

    +

    + + Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

    +

    + + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + __(@"My string to translate") +

    +

    + + +

    +

    + + is exactly the same as +

    +

    + + +

    +

    + + + GSLocalizedStaticString(@"My + string to translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

    +

    + + +

    +

    + + + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

    +

    + + +

    +

    + + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

    +

    + + +

    +

    + + This function (macro) is a GNUstep extensions, and it + is used to localize static strings. Here is an example + of a static string: +

    +

    + + +

    +

    + + + NSString *message = @"Hi there";... some code... + NSLog (message); + +

    +

    + + +

    +

    + + This string can not be localized using the standard + openstep functions/macros. By using this gnustep + extension, you can localize it as follows: +

    +

    + + +

    +

    + + + NSString *message = GSLocalizedStaticString + (@"Hi there", @"Greeting");... some code... NSLog + (NSLocalizedString (message, @"")); + +

    +

    + + +

    +

    + + When the tools generate the + Localizable.strings file from the + source code, they will ignore the + NSLocalizedString call while they will + extract the string (and the comment) to localize + from the GSLocalizedStaticString call. +

    +

    + + +

    +

    + + When the code is compiled, instead, the + GSLocalizedStaticString call is ignored + (discarded, it is a macro which simply expands + to key), while the + NSLocalizedString will actually look up + the string for translation in the + Localizable.strings file. +

    +

    + + +

    +

    + + Please note that there is currently no + macro/function to localize static strings + using different tables. If you need that + functionality, you have either to prepare + the localization tables by hand, or to rewrite your + code in such a way as not to use static strings. +

    +

    + + To be used inside a method for making sure that a range + does not specify anything outside the size of an + array/string. Raises exception if range extends + beyond [0,size]. Size must be an + unsigned integer (NSUInteger). + +

    +
    +

    IF_NO_ARC

    + IF_NO_ARC(X)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros. + +
    +
    +

    IF_NO_GC

    + IF_NO_GC(X)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead. + +
    +
    +

    LEAVE_POOL

    + LEAVE_POOL
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL. + +
    +
    +

    RECREATE_AUTORELEASE_POOL

    + RECREATE_AUTORELEASE_POOL(X)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code. + +
    +
    +

    RELEASE

    + RELEASE(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use. + +
    +
    +

    RETAIN

    + RETAIN(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use. + +
    +
    +

    TEST_AUTORELEASE

    + TEST_AUTORELEASE(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use. + +
    +
    +

    TEST_RELEASE

    + TEST_RELEASE(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use. + +
    +
    +

    TEST_RETAIN

    + TEST_RETAIN(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use. + +
    +
    +

    _

    + _(X)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + _(@"My string to translate") +

    +

    + + +

    +

    + + is basically equivalent to +

    +

    + + +

    +

    + + + NSLocalizedString(@"My string to + translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _() +. + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

    +

    + + +

    +

    + + You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
    This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
    If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

    +

    + + +

    +

    + + Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

    +

    + + +

    +
    +

    __

    + __(X)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Does nothing when ARC is in use.
    Basic + release operation... calls + + [NSObject -release] + + +
    Does nothing when ARC is in use.
    Basic + autorelease operation... calls + + [NSObject -autorelease] + + +
    Does nothing when ARC is in use.
    Tested + retain - only invoke the objective-c method if the + receiver is not nil.
    Does + nothing when ARC is in use.
    Tested release - + only invoke the objective-c method if the receiver is + not nil.
    Does nothing when ARC is in + use.
    Tested autorelease - only invoke the + objective-c method if the receiver is not + nil.
    Does nothing when ARC is in + use.
    ASSIGN(object,value) assigns the value to + the object with appropriate retain and release + operations.
    Use this to avoid + retain/release errors.
    + ASSIGNCOPY(object,value) assigns a + copy of the value to the object with release of the + original.
    Use this to avoid retain/release + errors.
    ASSIGNMUTABLECOPY(object,value) + assigns a mutable copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors.
    + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object later. It + also makes sure to set the variable to nil + before releasing the object - to avoid side-effects of + the release trying to reference the object being released + through the variable.
    DEALLOC calls the + superclass implementation of dealloc, unless ARC + is in use (in which case it does nothing).
    + ENTER_POOL creates an autorelease pool and places + subsequent code in a block.
    The block must + be terminated with a corresponding LEAVE_POOL.
    You + should not break, continue, or return from such a + block of code (to do so could leak an autorelease pool + and give objects a longer lifetime than they ought to + have. If you wish to leave the block of code early, you + should ensure that doing so causes the autorelease + pool outside the block to be released promptly (since + that will implicitly release the pool created at the + start of the block too).
    LEAVE_POOL terminates a + block of code started with ENTER_POOL.
    + Compile-in X if (and only if) ARC is + not in use. This is provided to handle obscure cases not + covered by the other macros.
    DEPRECATED... use + + IF_NO_ARC() + + + instead.
    DEPRECATED... use ENTER_POOL and + LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    DEPRECATED... use ENTER_POOL + and LEAVE_POOL and make sure your code does not + break/continue/return out of the + section of code.
    + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + _(@"My string to translate") +

    +

    + + +

    +

    + + is basically equivalent to +

    +

    + + +

    +

    + + + NSLocalizedString(@"My string to + translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _() +. + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

    +

    + + +

    +

    + + You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
    This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
    If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

    +

    + + +

    +

    + + Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

    +

    + + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + __(@"My string to translate") +

    +

    + + +

    +

    + + is exactly the same as +

    +

    + + +

    +

    + + + GSLocalizedStaticString(@"My + string to translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

    +

    + + +

    +

    + + + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

    +

    + + +

    +

    + + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

    +

    + + +

    +
    + +

    GSBlocks macros

    +

    +

    +

    BLOCK_SCOPE

    + BLOCK_SCOPE
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or not the + compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the compiler + supports blocks.
    Calls a block without + arguments. + +
    +
    +

    CALL_BLOCK

    + CALL_BLOCK(block, args,...)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Calls a + block without arguments. + +
    +
    +

    CALL_BLOCK_NO_ARGS

    + CALL_BLOCK_NO_ARGS(block)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Calls a + block without arguments. + +
    +
    +

    CALL_BLOCK_RET

    + CALL_BLOCK_RET(block, rettype, args,...)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Calls a + block without arguments. + +
    +
    +

    CALL_BLOCK_RET_NO_ARGS

    + CALL_BLOCK_RET_NO_ARGS(block, rettype)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Calls a + block without arguments. + +
    +
    +

    CALL_NON_NULL_BLOCK

    + CALL_NON_NULL_BLOCK(block, args,...)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Defines a + block type. Will work whether or not the + compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Calls a + block without arguments.
    Defines a + block type. Will work whether or not the + compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Calls a + block without arguments. + +
    +
    +

    CALL_NON_NULL_BLOCK_NO_ARGS

    + CALL_NON_NULL_BLOCK_NO_ARGS(block)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or + not the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the + compiler supports blocks.
    Calls a + block without arguments. + +
    +
    +

    DEFINE_BLOCK_TYPE

    + DEFINE_BLOCK_TYPE(name, retTy, argTys,...)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or not the + compiler natively supports blocks.
    Defines a + block type. Will work whether or not the compiler + natively supports blocks.
    Calls a block. + Works irrespective of whether the compiler supports + blocks.
    Calls a block without arguments. +
    Defines a block type. Will work whether or not + the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the compiler + supports blocks.
    Calls a block without + arguments. + +
    +
    +

    DEFINE_BLOCK_TYPE_NO_ARGS

    + DEFINE_BLOCK_TYPE_NO_ARGS(name, retTy)
    +
    +Availability: OpenStep
    +
    +
    + + Defines a block type. Will work whether or not the + compiler natively supports blocks.
    Defines a + block type. Will work whether or not the compiler + natively supports blocks.
    Calls a block. + Works irrespective of whether the compiler supports + blocks.
    Calls a block without arguments. +
    Defines a block type. Will work whether or not + the compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the compiler + supports blocks.
    Calls a block without + arguments. + +
    +
    + +

    GSVersionMacros macros

    +

    +

    +

    GS_API_LATEST

    + GS_API_LATEST
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_API_MACOSX

    + GS_API_MACOSX
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_API_NONE

    + GS_API_NONE
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X + +

    +
    +

    GS_API_OPENSTEP

    + GS_API_OPENSTEP
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards. + +

    +
    +

    GS_API_OSSPEC

    + GS_API_OSSPEC
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. + +

    +
    +

    GS_API_VERSION

    + GS_API_VERSION(ADD, REM)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version + < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + + #if GS_API_VERSION(ADD,GS_API_LATEST) + +
    where ADD is the + version number of the next minor release after the + most recent one.
    As a general principle you + should not change the API with changing + subminor version numbers... as that tends to + confuse people (though Apple has sometimes done + it). +

    +

    + + +

    +
    +

    GS_CLANG_MINREQ

    + GS_CLANG_MINREQ(maj, min)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_DEPRECATED_FUNC

    + GS_DEPRECATED_FUNC
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_EXPOSE

    + GS_EXPOSE(X)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_GCC_MINREQ

    + GS_GCC_MINREQ(maj, min)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_NORETURN_METHOD

    + GS_NORETURN_METHOD
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_UNIMPLEMENTED

    + GS_UNIMPLEMENTED
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_UNUSED_ARG

    + GS_UNUSED_ARG
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_UNUSED_FUNC

    + GS_UNUSED_FUNC
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    GS_UNUSED_IVAR

    + GS_UNUSED_IVAR
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    MAC_OS_X_VERSION_MAX_ALLOWED

    + MAC_OS_X_VERSION_MAX_ALLOWED
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    NS_CONSUMED

    + NS_CONSUMED
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    NS_CONSUMES_SELF

    + NS_CONSUMES_SELF
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    NS_RETURNS_NOT_RETAINED

    + NS_RETURNS_NOT_RETAINED
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    NS_RETURNS_RETAINED

    + NS_RETURNS_RETAINED
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    +

    OS_API_VERSION

    + OS_API_VERSION(ADD, REM)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version + < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + + #if GS_API_VERSION(ADD,GS_API_LATEST) + +
    where ADD is the + version number of the next minor release after the + most recent one.
    As a general principle you + should not change the API with changing + subminor version numbers... as that tends to + confuse people (though Apple has sometimes done + it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD + <= version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + +

    +
    +

    __has_feature

    + __has_feature(x)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + #if GS_API_VERSION(ADD,GS_API_LATEST) +
    where ADD is the version number + of the next minor release after the most recent one. +
    As a general principle you should + not change the API with changing subminor + version numbers... as that tends to confuse people + (though Apple has sometimes done it). +

    +

    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD <= + version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X
    A + constant to represent a feature which is still + present in the latest version. This is the highest + possible version number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. +
    The version number of the initial OpenStep + specification.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. +
    The version number of the first OPENSTEP + implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards.
    The version number of the + first MacOS-X implementation.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +

    +
    + +

    GSObjCRuntime macros

    +

    +

    +

    GS_MAX_OBJECTS_FROM_STACK

    + GS_MAX_OBJECTS_FROM_STACK
    +
    +Availability: OpenStep
    +
    +
    + + The number of objects to try to get from varargs into an + array on the stack... if there are more than this, use + the heap. NB. This MUST be a multiple of 2 + +
    +
    +

    GS_USEIDLIST

    + GS_USEIDLIST(firstObject, code,...)
    +
    +Availability: OpenStep
    +
    +
    + + The number of objects to try to get from varargs into an + array on the stack... if there are more than this, use + the heap. NB. This MUST be a multiple of 2
    + +

    +

    + + This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
    The objects + are unpacked from the vararg list into two 'C' arrays + and then a code fragment you specify is able + to make use of them before that 'C' array is destroyed. +

    +

    + + +

    +

    + + The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

    +

    + + +

    +

    + + The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' arrays.
    When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, the pointer + '__objects' will point to the first object in + each pair, and the pointer '__pairs' will point to an + array containing the second halves of the pairs of + objects whose first halves are in '__objects'. +
    This lets you pack a list of the form 'key, + value, key, value,...' into an array of keys and an + array of values. +

    +

    + + +

    +

    + + This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
    The objects + are unpacked from the vararg list into a 'C' array and + then a code fragment you specify is able to + make use of them before that 'C' array is destroyed. +

    +

    + + +

    +

    + + The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

    +

    + + +

    +

    + + The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' array.
    When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, and the + pointer '__objects' will point to the unpacked + objects, ie. firstObject followed by + the vararg arguments up to (but not including) the + first nil. +

    +

    + + +

    +
    +

    GS_USEIDPAIRLIST

    + GS_USEIDPAIRLIST(firstObject, code,...)
    +
    +Availability: OpenStep
    +
    +
    + + The number of objects to try to get from varargs into an + array on the stack... if there are more than this, use + the heap. NB. This MUST be a multiple of 2
    + +

    +

    + + This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
    The objects + are unpacked from the vararg list into two 'C' arrays + and then a code fragment you specify is able + to make use of them before that 'C' array is destroyed. +

    +

    + + +

    +

    + + The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

    +

    + + +

    +

    + + The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' arrays.
    When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, the pointer + '__objects' will point to the first object in + each pair, and the pointer '__pairs' will point to an + array containing the second halves of the pairs of + objects whose first halves are in '__objects'. +
    This lets you pack a list of the form 'key, + value, key, value,...' into an array of keys and an + array of values. +

    +

    + + +

    +
    + +

    GSIMap macros

    +

    +

    +

    GS_PART_MAP_ENUMERATOR

    + GS_PART_MAP_ENUMERATOR(state)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Used to implement fast enumeration methods in classes + that use GSIMap for their data storage. + +
    +
    + +

    NSDebug+GNUstepBase macros

    +

    +

    +

    ALog

    + ALog(fmt,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or more + arguments for the format string. Example: + GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or more + arguments for the format string.
    Example: + GSOnceMLog(@"This method is deprecated, use + another");
    + +

    +

    + + + NSWarnLog() + + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

    +

    + + +

    +

    + + Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

    +

    + + +

    +

    + + You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

    +

    + + +

    +

    + + These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

    +

    + + +

    +

    + + NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSWarnLog() + + + macro. +

    +

    + + +

    +

    + + As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + + , and + + NSWarnMLog() + + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is like + + NSWarnLog() + + + but includes the name and location of the + function in which the macro is used as part of + the log output.
    This macro is like + + NSWarnLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    The DLog macro is a less powerful but commonly + used logging macro, defined here for convenience when + porting code. It will tell you the function name and + line number but not the file location. It performs + unconditional logging but is only compiled in + when the program is built with DEBUG defined.
    The + Alog macro is the same as the DLog macro, but is always + compiled in to the code whether DEBUG is defined or + not. + +

    +
    +

    DLog

    + DLog(fmt,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or more + arguments for the format string. Example: + GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or more + arguments for the format string.
    Example: + GSOnceMLog(@"This method is deprecated, use + another");
    + +

    +

    + + + NSWarnLog() + + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

    +

    + + +

    +

    + + Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

    +

    + + +

    +

    + + You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

    +

    + + +

    +

    + + These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

    +

    + + +

    +

    + + NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSWarnLog() + + + macro. +

    +

    + + +

    +

    + + As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + + , and + + NSWarnMLog() + + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is like + + NSWarnLog() + + + but includes the name and location of the + function in which the macro is used as part of + the log output.
    This macro is like + + NSWarnLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    The DLog macro is a less powerful but commonly + used logging macro, defined here for convenience when + porting code. It will tell you the function name and + line number but not the file location. It performs + unconditional logging but is only compiled in + when the program is built with DEBUG defined. + +

    +
    +

    GSOnceFLog

    + GSOnceFLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another"); + +

    +
    +

    GSOnceMLog

    + GSOnceMLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
    + Example: GSOnceMLog(@"This method is deprecated, use + another"); + +

    +
    +

    NSDebugFLLog

    + NSDebugFLLog(key, format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt' +
    This macro saves the name and location of the + function in which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. + +

    +
    +

    NSDebugFLog

    + NSDebugFLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. + +

    +
    +

    NSDebugFRLog

    + NSDebugFRLog(object, msg)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object.
    + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object.
    + This macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object. + +

    +
    +

    NSDebugLLog

    + NSDebugLLog(key, format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt' +
    This macro saves the name and location of the + function in which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. + +

    +
    +

    NSDebugLog

    + NSDebugLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. + +

    +
    +

    NSDebugMLLog

    + NSDebugMLLog(key, format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at + runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where + no debug key is specified, and 'NoWarn' is + used to *disable* warning messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    + This macro is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt' +
    This macro saves the name and location of the + function in which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. + +

    +
    +

    NSDebugMLog

    + NSDebugMLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object. + +

    +
    +

    NSDebugMRLog

    + NSDebugMRLog(object, msg)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object.
    + This macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object. + +

    +
    +

    NSWarnFLog

    + NSWarnFLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
    + Example: GSOnceMLog(@"This method is deprecated, use + another");
    + +

    +

    + + + NSWarnLog() + + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

    +

    + + +

    +

    + + Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

    +

    + + +

    +

    + + You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

    +

    + + +

    +

    + + These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

    +

    + + +

    +

    + + NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSWarnLog() + + + macro. +

    +

    + + +

    +

    + + As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + + , and + + NSWarnMLog() + + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is like + + NSWarnLog() + + + but includes the name and location of the + function in which the macro is used as part of + the log output.
    + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
    + Example: GSOnceMLog(@"This method is deprecated, use + another");
    + +

    +

    + + + NSWarnLog() + + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

    +

    + + +

    +

    + + Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

    +

    + + +

    +

    + + You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

    +

    + + +

    +

    + + These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

    +

    + + +

    +

    + + NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSWarnLog() + + + macro. +

    +

    + + +

    +

    + + As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + + , and + + NSWarnMLog() + + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is like + + NSWarnLog() + + + but includes the name and location of the + function in which the macro is used as part of + the log output.
    This macro is like + + NSWarnLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. + +

    +
    +

    NSWarnLog

    + NSWarnLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug keys - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
    + Example: GSOnceMLog(@"This method is deprecated, use + another");
    + +

    +

    + + + NSWarnLog() + + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

    +

    + + +

    +

    + + Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

    +

    + + +

    +

    + + You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

    +

    + + +

    +

    + + These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

    +

    + + +

    +

    + + NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSWarnLog() + + + macro. +

    +

    + + +

    +

    + + As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + + , and + + NSWarnMLog() + + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging key was set at runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug keys using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used.

    @@ -982,37 +12562,34 @@

    OS_API_VERSION

    - 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... - - GS_API_NONE + To embed debug logging in your code you use the + + NSDebugLLog() - , - - GS_API_LATEST + or + + NSDebugLog() - , - - GS_API_OSSPEC + macro. + + NSDebugLog() - , - - GS_API_OPENSTEP + is just + + NSDebugLLog() - , - - GS_API_MACOSX + with the debug key set to 'dflt'. So, to activate + debug statements that use + + NSDebugLog() + , you supply the '--GNU-Debug=dflt' argument to your + program.

    @@ -1020,11 +12597,15 @@

    OS_API_VERSION

    - Also see - - GS_API_VERSION + You can also change the active debug keys under your + programs control - NSProcessInfo has a + + [-debugSet] + method that returns the mutable set that contains + the active debug keys - your program can modify this + set.

    @@ -1032,11 +12613,10 @@

    OS_API_VERSION

    - For OSX compatibility, this macro also supports the use - of Apple's symbolic constants for version numbering. - Their contants are currently four digit values (two - digits for the major version, one for the minor, and - one for the subminor). + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages.

    @@ -1044,95 +12624,120 @@

    OS_API_VERSION

    - The Apple compatibility version macros are currently: - - MAC_OS_X_VERSION_10_0 - + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + , - - MAC_OS_X_VERSION_10_1 - + + NSDebugFLLog() + , - - MAC_OS_X_VERSION_10_2 - + + NSDebugMLog() + - , - - MAC_OS_X_VERSION_10_3 - + and + + NSDebugMLLog() + - , - - MAC_OS_X_VERSION_10_4 - + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + This macro is a shorthand for + + NSDebugLLog() + - , - - MAC_OS_X_VERSION_10_5 - + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + - , - - MAC_OS_X_VERSION_10_6 - + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + - , - - MAC_OS_X_VERSION_10_7 - + using the default debug key... 'dflt'
    This macro + is like + + NSDebugLLog() + - , - - MAC_OS_X_VERSION_10_8 - + but includes the name and location of the method + in which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
    + Example: GSOnceMLog(@"This method is deprecated, use + another");
    + +

    +

    + + + NSWarnLog() + + is the basic debug logging macro used to display warning + messages using - MAC_OS_X_VERSION_10_9 + NSLog() + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime.

    - -

    -
    - -

    GSObjCRuntime macros

    -

    -

    -

    GS_MAX_OBJECTS_FROM_STACK

    - GS_MAX_OBJECTS_FROM_STACK
    -
    -Availability: OpenStep
    -
    -
    - - The number of objects to try to get from varargs into an - array on the stack... if there are more than this, use - the heap. NB. This MUST be a multiple of 2 - -
    -
    -

    GS_USEIDLIST

    - GS_USEIDLIST(firstObject, code,...)
    -
    -Availability: OpenStep
    -
    -
    -

    - This is a macro designed to minimise the use of memory - allocation and deallocation when you need to - work with a vararg list of objects.
    The objects - are unpacked from the vararg list into a 'C' array and - then a code fragment you specify is able to - make use of them before that 'C' array is destroyed. + Warning messages which can be enabled/disabled by + defining GSWARN when compiling.

    @@ -1140,9 +12745,10 @@

    GS_USEIDLIST

    - The firstObject argument is the name of the - formal parameter in your method or function which - precedes the ',...' denoting variable args. + You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'.

    @@ -1150,39 +12756,25 @@

    GS_USEIDLIST

    - The code argument is a piece of objective-c - code to be executed to make use of the - objects stored in the 'C' array.
    When this - code is called the - unsigned integer '__count' will - contain the number of objects unpacked, and the - pointer '__objects' will point to the unpacked - objects, ie. firstObject followed by - the vararg arguments up to (but not including) the - first nil. + These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil').

    - -

    -
    -

    GS_USEIDPAIRLIST

    - GS_USEIDPAIRLIST(firstObject, code,...)
    -
    -Availability: OpenStep
    -
    -
    -

    - This is a macro designed to minimise the use of memory - allocation and deallocation when you need to - work with a vararg list of objects.
    The objects - are unpacked from the vararg list into two 'C' arrays - and then a code fragment you specify is able - to make use of them before that 'C' array is destroyed. + NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it.

    @@ -1190,9 +12782,12 @@

    GS_USEIDPAIRLIST

    - The firstObject argument is the name of the - formal parameter in your method or function which - precedes the ',...' denoting variable args. + To embed debug logging in your code you use the + + NSWarnLog() + + + macro.

    @@ -1200,119 +12795,43 @@

    GS_USEIDPAIRLIST

    - The code argument is a piece of objective-c - code to be executed to make use of the - objects stored in the 'C' arrays.
    When this - code is called the - unsigned integer '__count' will - contain the number of objects unpacked, the pointer - '__objects' will point to the first object in - each pair, and the pointer '__pairs' will point to an - array containing the second halves of the pairs of - objects whose first halves are in '__objects'. -
    This lets you pack a list of the form 'key, - value, key, value,...' into an array of keys and an - array of values. -

    -

    - - -

    -
    - -

    NSDebug+GNUstepBase macros

    -

    -

    -

    GSOnceFLog

    - GSOnceFLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - - Macro to log a message only the first time it is - encountered.
    Not entirely thread safe... - but that's not really important, it just means that it's - possible for the message to be logged more than once - if two threads call it simultaneously when it has not - already been called.
    Use this from inside a - function. Pass an NSString as a format, - followed by zero or more arguments for the - format string. Example: GSOnceFLog(@"This - function is deprecated, use another"); - -
    -
    -

    GSOnceMLog

    - GSOnceMLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - - Macro to log a message only the first time it is - encountered.
    Not entirely thread safe... - but that's not really important, it just means that it's - possible for the message to be logged more than once - if two threads call it simultaneously when it has not - already been called.
    Use this from inside a - method. Pass an NSString as a format - followed by zero or more arguments for the - format string.
    Example: - GSOnceMLog(@"This method is deprecated, use - another"); - -
    -
    -

    NSDebugFLLog

    - NSDebugFLLog(level, format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    + As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + + , and + + NSWarnMLog() + + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    This macro is like - - NSDebugLLog() + + NSWarnLog() - but includes the name and location of the function in - which the macro is used as part of the log output. - -

    -
    -

    NSDebugFLog

    - NSDebugFLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    - -
    -

    NSDebugFRLog

    - NSDebugFRLog(object, msg)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - - This macro saves the name and location of the function - in which the macro is used, along with a - short string msg as the - tag associated with a recorded object. + but includes the name and location of the method + in which the macro is used as part of the log output.

    -

    NSDebugLLog

    - NSDebugLLog(level, format, args,...)
    +

    NSWarnMLog

    + NSWarnMLog(format, args,...)
    Availability: Not in OpenStep/MacOS-X

    @@ -1322,7 +12841,7 @@

    NSDebugLLog

    - + NSDebugLLog() @@ -1333,8 +12852,7 @@

    NSDebugLLog

    , if debug logging was enabled at compile time and the - appropriate logging level was set at - runtime. + appropriate logging key was set at runtime.

    @@ -1356,7 +12874,7 @@

    NSDebugLLog

    NSProcess initialises a set of strings that are - the names of active debug levels using the + the names of active debug keys using the '--GNU-Debug=...' command line argument. Each command-line argument of that form is removed from NSProcessInfo 's list of arguments @@ -1382,8 +12900,8 @@

    NSDebugLLog

    - NSUserDefaults also adds debug levels from - the array given by the GNU-Debug key... but these + NSUserDefaults also adds debug keys from the + array given by the GNU-Debug default... but these values will not take effect until the +standardUserDefaults @@ -1400,28 +12918,28 @@

    NSDebugLLog

    To embed debug logging in your code you use the - + NSDebugLLog() or - + NSDebugLog() macro. - + NSDebugLog() is just - + NSDebugLLog() - with the debug level set to 'dflt'. So, to - activate debug statements that use - + with the debug key set to 'dflt'. So, to activate + debug statements that use + NSDebugLog() @@ -1434,14 +12952,14 @@

    NSDebugLLog

    - You can also change the active debug levels under your + You can also change the active debug keys under your programs control - NSProcessInfo has a - + [-debugSet] method that returns the mutable set that contains - the active debug levels - your program can modify this + the active debug keys - your program can modify this set.

    @@ -1450,10 +12968,10 @@

    NSDebugLLog

    - Two debug levels have a special effect - 'dflt' is the - level used for debug logs statements where - no debug level is specified, and 'NoWarn' is - used to *disable* warning messages. + Two debug keys have a special effect - 'dflt' is the + key used for debug logs statements where no debug key + is specified, and 'NoWarn' is used to *disable* warning + messages.

    @@ -1463,22 +12981,22 @@

    NSDebugLLog

    As a convenience, there are four more logging macros you can use - - + NSDebugFLog() , - + NSDebugFLLog() , - + NSDebugMLog() and - + NSDebugMLLog() @@ -1490,102 +13008,71 @@

    NSDebugLLog

    - -

    -
    -

    NSDebugLog

    - NSDebugLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - This macro is a shorthand for - + NSDebugLLog() - using then default debug level... 'dflt' - -
    -
    -

    NSDebugMLLog

    - NSDebugMLLog(level, format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - - This macro is like - + using the default debug key... 'dflt'
    This macro + is like +
    + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. +
    This macro is a shorthand for + + NSDebugFLLog() + + + using the default debug key... 'dflt'
    This macro + is like + NSDebugLLog() but includes the name and location of the method in which the macro is used as part of the log output. - -
    -
    -

    NSDebugMLog

    - NSDebugMLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - - This macro is a shorthand for - +
    This macro is a shorthand for +
    NSDebugMLLog() - using then default debug level... 'dflt' - -
    -
    -

    NSDebugMRLog

    - NSDebugMRLog(object, msg)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - - This macro saves the name and location of the method in + using then default debug key... 'dflt'
    This + macro saves the name and location of the function in which the macro is used, along with a - short string msg as the - tag associated with a recorded object. - -
    -
    -

    NSWarnFLog

    - NSWarnFLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - - This macro is like - - NSWarnLog() - - - but includes the name and location of the - function in which the macro is used as part of - the log output. - -
    -
    -

    NSWarnLog

    - NSWarnLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - + short string msg as the tag + associated with a recorded object.
    This + macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the tag + associated with a recorded object.
    Macro to + log a message only the first time it is encountered. +
    Not entirely thread safe... but that's not + really important, it just means that it's possible for + the message to be logged more than once if two threads + call it simultaneously when it has not already been + called.
    Use this from inside a function. Pass + an NSString as a format, followed by zero or + more arguments for the format string. + Example: GSOnceFLog(@"This function is deprecated, + use another");
    Macro to log a message only the + first time it is encountered.
    Not entirely + thread safe... but that's not really important, it + just means that it's possible for the message to be + logged more than once if two threads call it + simultaneously when it has not already been + called.
    Use this from inside a method. Pass an + NSString as a format followed by zero or + more arguments for the format string.
    + Example: GSOnceMLog(@"This method is deprecated, use + another");

    - + NSWarnLog() @@ -1651,7 +13138,7 @@

    NSWarnLog

    To embed debug logging in your code you use the - + NSWarnLog() @@ -1665,12 +13152,12 @@

    NSWarnLog

    As a convenience, there are two more logging macros you can use - - + NSWarnFLog() , and - + NSWarnMLog() @@ -1681,18 +13168,15 @@

    NSWarnLog

    - -

    -
    -

    NSWarnMLog

    - NSWarnMLog(format, args,...)
    -
    -Availability: Not in OpenStep/MacOS-X
    -
    -
    - This macro is like - + + NSWarnLog() + + + but includes the name and location of the + function in which the macro is used as part of + the log output.
    This macro is like + NSWarnLog() @@ -1702,7 +13186,7 @@

    NSWarnMLog


    -

    NSLock+GNUstepBase macros

    +

    NSLock+GNUstepBase macros

    GS_INITIALIZED_LOCK

    @@ -1721,13 +13205,8 @@

    GS_INITIALIZED_LOCK

    . CLASSNAME must be either NSLock, NSRecursiveLock or one of their subclasses. See - - [NSLock +newLockAt:] - - - for details. This macro is intended for code that cannot - insure that a lock can be initialized in thread safe - manner otherwise. + [NSLock(GNUstepBase) +newLockAt:] + for details. This macro is intended for code that cannot insure that a lock can be initialized in thread safe manner otherwise.
      NSLock *my_lock = nil;
    @@ -1745,25 +13224,29 @@ 

    GS_INITIALIZED_LOCK


    -

    GSBlocks functions

    +

    GSBlocks functions

    _Block_copy

    - void* _Block_copy(void* );
    + void* _Block_copy(const void* );
    Availability: OpenStep

    - _Block_copy and _Block_release are weakly - imported, but can be assumed to be available + Defines a block type. Will work whether or not the + compiler natively supports blocks.
    Calls a + block. Works irrespective of whether the compiler + supports blocks.
    Calls a block without + arguments.
    _Block_copy and _Block_release + are weakly imported, but can be assumed to be available whenever a feature using blocks is accessed by an application.

    _Block_release

    - void _Block_release(void* );
    + void _Block_release(const void* );
    Availability: OpenStep

    @@ -1774,7 +13257,7 @@

    _Block_release


    -

    GSVersionMacros functions

    +

    GSVersionMacros functions

    gs_consumed

    @@ -1789,7 +13272,7 @@

    gs_consumed


    -

    GSObjCRuntime functions

    +

    GSObjCRuntime functions

    GSAutoreleasedBuffer

    @@ -1804,17 +13287,13 @@

    GSAutoreleasedBuffer


    GSCGetInstanceVariableDefinition

    - GSIVar GSCGetInstanceVariableDefinition(Class cls, const char* name);
    + GSIVar GSCGetInstanceVariableDefinition(Class cls, const char* name);
    Availability: OpenStep

    - Deprecated.. use - - class_getInstanceVariable() - - + Deprecated.. use "class_getInstanceVariable()".

    @@ -1825,15 +13304,11 @@

    GSClassFromName


    - + GSClassFromName() - is deprecated... use - - objc_lookUpClass() - - + is deprecated... use "objc_lookUpClass()".

    @@ -1844,11 +13319,7 @@

    GSClassList


    - Deprecated... use - - objc_getClassList() - - + Deprecated... use "objc_getClassList()".

    @@ -1859,20 +13330,12 @@

    GSClassNameFromObject


    - + GSClassNameFromObject() - is deprecated... use - - object_getClass() - - - in conjunction with - - class_getName() - - + is deprecated... use "object_getClass()". in conjunction + with "class_getName()".

    @@ -1905,7 +13368,7 @@

    GSFlushMethodCacheForClass

    GSGetMethod

    - GSMethod GSGetMethod(Class cls, SEL sel, BOOL searchInstanceMethods, BOOL searchSuperClasses);
    + GSMethod GSGetMethod(Class cls, SEL sel, BOOL searchInstanceMethods, BOOL searchSuperClasses);
    Availability: OpenStep

    @@ -1920,15 +13383,10 @@

    GSGetMethod


    To obtain the implementation pointer IMP use returnValue->method_imp which should be safe across all runtimes.
    It should be safe to - use this function in - - +load - - - implementations.
    This function should - currently (June 2004) be considered WIP. Please - follow potential changes (Name, parameters,...) - closely until it stabilizes. + use this function in "+load" implementations.
    This + function should currently (June 2004) be considered + WIP. Please follow potential changes (Name, parameters, + ...) closely until it stabilizes.
    @@ -1951,15 +13409,11 @@

    GSNameFromClass


    - + GSNameFromClass() - is deprecated... use - - class_getName() - - + is deprecated... use "class_getName()".

    @@ -1970,15 +13424,11 @@

    GSNameFromSelector


    - + GSNameFromSelector() - is deprecated... use - - sel_getName() - - + is deprecated... use "sel_getName()".

    @@ -2162,7 +13612,7 @@

    GSObjCAddClasses

    The classes argument is an array of NSValue objects containing pointers to classes previously created by the - + GSObjCMakeClass() @@ -2220,15 +13670,11 @@

    GSObjCClass


    - + GSObjCClass() - is deprecated... use - - object_getClass() - - + is deprecated... use "object_getClass()".

    @@ -2263,17 +13709,13 @@

    GSObjCFindVariable


    GSObjCGetInstanceVariableDefinition

    - GSIVar GSObjCGetInstanceVariableDefinition(Class cls, NSString* name);
    + GSIVar GSObjCGetInstanceVariableDefinition(Class cls, NSString* name);
    Availability: OpenStep

    - Deprecated.. use - - class_getInstanceVariable() - - + Deprecated.. use "class_getInstanceVariable()".

    @@ -2292,8 +13734,9 @@

    GSObjCGetVal

    conversion between NSNumber and C scalar types is performed.
    If type is null and can't be determined from the selector, the - [NSObject -handleQueryWithUnboundKey:] - method is called to try to get a value. + "-handleQueryWithUnboundKey:" + method is called (if the object responds to that + message) to try to get a value.
    @@ -2308,7 +13751,7 @@

    GSObjCGetVariable

    obj
    This function performs no checking... you should use it only where you are providing information from a call to - + GSObjCFindVariable() @@ -2324,20 +13767,12 @@

    GSObjCIsClass


    - + GSObjCIsClass() - is deprecated... use - - object_getClass() - - - in conjunction with - - class_isMetaClass() - - + is deprecated... use "object_getClass()" in conjunction + with "class_isMetaClass()".

    @@ -2348,20 +13783,12 @@

    GSObjCIsInstance


    - + GSObjCIsInstance() - is deprecated... use - - object_getClass() - - - in conjunction with - - class_isMetaClass() - - + is deprecated... use "object_getClass()" in conjunction + with "class_isMetaClass()".

    @@ -2395,7 +13822,7 @@

    GSObjCMakeClass

    the ObjectiveC runtime and return an NSValue object pointing to it. The class will not be added to the runtime (you must do that later using the - + GSObjCAddClasses() @@ -2446,9 +13873,9 @@

    GSObjCSetVal

    are supplied).
    Automatic conversion between NSNumber and C scalar types is performed.
    If type is null and can't be determined from - the selector, the - [NSObject -handleTakeValue:forUnboundKey:] - method is called to try to set a value. + the selector, the "-handleTakeValue:forUnboundKey:" + method is called (if the object responds to that + message) to try to set a value.
    @@ -2463,7 +13890,7 @@

    GSObjCSetVariable


    This function performs no checking... you should use it only where you are providing information from a call to - + GSObjCFindVariable() @@ -2479,15 +13906,11 @@

    GSObjCSuper


    - + GSObjCSuper() - is deprecated... use - - class_getSuperclass() - - + is deprecated... use "class_getSuperclass()".

    @@ -2514,15 +13937,11 @@

    GSObjCVersion


    - + GSObjCVersion() - is deprecated... use - - class_getVersion() - - + is deprecated... use "class_getVersion()"

    @@ -2562,7 +13981,7 @@

    GSPrintf

    This function is recommended for printing general log messages. For debug messages use - + NSDebugLog() @@ -2572,7 +13991,7 @@

    GSPrintf

    , and for warnings you might consider - + NSWarnLog() @@ -2595,7 +14014,7 @@

    GSProtocolFromName

    classes for any protocol with the supplied name. If one is found, it is cached in for future requests. If efficiency is a factor then use - + GSRegisterProtocol() @@ -2628,7 +14047,7 @@

    GSRegisterProtocol

    Registers proto in the cache used by - + GSProtocolFromName() @@ -2643,15 +14062,11 @@

    GSSelectorFromName


    - + GSSelectorFromName() - is deprecated... use - - sel_getUid() - - + is deprecated... use "sel_getUid()".

    @@ -2714,11 +14129,11 @@

    GSTypesFromSelector


    -

    GSIArray functions

    +

    GSIArray functions

    GSIArrayAddItem

    - void GSIArrayAddItem(GSIArray array, GSIArrayItem item);
    + void GSIArrayAddItem(GSIArray array, GSIArrayItem item);
    Availability: Not in OpenStep/MacOS-X

    @@ -2729,7 +14144,7 @@

    GSIArrayAddItem


    GSIArrayAddItemNoRetain

    - void GSIArrayAddItemNoRetain(GSIArray array, GSIArrayItem item);
    + void GSIArrayAddItemNoRetain(GSIArray array, GSIArrayItem item);
    Availability: Not in OpenStep/MacOS-X

    @@ -2740,7 +14155,7 @@

    GSIArrayAddItemNoRetain


    GSIArrayCapacity

    - unsigned int GSIArrayCapacity(GSIArray array);
    + unsigned int GSIArrayCapacity(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2751,7 +14166,7 @@

    GSIArrayCapacity


    GSIArrayCheckSort

    - void GSIArrayCheckSort(GSIArray array, NSComparisonResult(*) sorter);
    + void GSIArrayCheckSort(GSIArray array, NSComparisonResult(*) sorter);
    Availability: Not in OpenStep/MacOS-X

    @@ -2762,7 +14177,7 @@

    GSIArrayCheckSort


    GSIArrayClear

    - void GSIArrayClear(GSIArray array);
    + void GSIArrayClear(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2773,7 +14188,7 @@

    GSIArrayClear


    GSIArrayCopyWithZone

    - GSIArray GSIArrayCopyWithZone(GSIArray array, NSZone* zone);
    + GSIArray GSIArrayCopyWithZone(GSIArray array, NSZone* zone);
    Availability: Not in OpenStep/MacOS-X

    @@ -2784,7 +14199,7 @@

    GSIArrayCopyWithZone


    GSIArrayCount

    - unsigned int GSIArrayCount(GSIArray array);
    + unsigned int GSIArrayCount(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2795,7 +14210,7 @@

    GSIArrayCount


    GSIArrayEmpty

    - void GSIArrayEmpty(GSIArray array);
    + void GSIArrayEmpty(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2806,7 +14221,7 @@

    GSIArrayEmpty


    GSIArrayGrow

    - void GSIArrayGrow(GSIArray array);
    + void GSIArrayGrow(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2817,7 +14232,7 @@

    GSIArrayGrow


    GSIArrayGrowTo

    - void GSIArrayGrowTo(GSIArray array, unsigned int next);
    + void GSIArrayGrowTo(GSIArray array, unsigned int next);
    Availability: Not in OpenStep/MacOS-X

    @@ -2828,7 +14243,7 @@

    GSIArrayGrowTo


    GSIArrayInitWithZoneAndCapacity

    - GSIArray GSIArrayInitWithZoneAndCapacity(GSIArray array, NSZone* zone, size_t capacity);
    + GSIArray GSIArrayInitWithZoneAndCapacity(GSIArray array, NSZone* zone, size_t capacity);
    Availability: Not in OpenStep/MacOS-X

    @@ -2839,7 +14254,7 @@

    GSIArrayInitWithZoneAndCa

    GSIArrayInitWithZoneAndStaticCapacity

    - GSIArray GSIArrayInitWithZoneAndStaticCapacity(GSIArray array, NSZone* zone, size_t capacity, GSIArrayItem* buffer);
    + GSIArray GSIArrayInitWithZoneAndStaticCapacity(GSIArray array, NSZone* zone, size_t capacity, GSIArrayItem* buffer);
    Availability: Not in OpenStep/MacOS-X

    @@ -2850,7 +14265,7 @@

    GSIArrayInitWithZon

    GSIArrayInsertItem

    - void GSIArrayInsertItem(GSIArray array, GSIArrayItem item, unsigned int index);
    + void GSIArrayInsertItem(GSIArray array, GSIArrayItem item, unsigned int index);
    Availability: Not in OpenStep/MacOS-X

    @@ -2861,7 +14276,7 @@

    GSIArrayInsertItem


    GSIArrayInsertItemNoRetain

    - void GSIArrayInsertItemNoRetain(GSIArray array, GSIArrayItem item, unsigned int index);
    + void GSIArrayInsertItemNoRetain(GSIArray array, GSIArrayItem item, unsigned int index);
    Availability: Not in OpenStep/MacOS-X

    @@ -2872,7 +14287,7 @@

    GSIArrayInsertItemNoRetain

    GSIArrayInsertSorted

    - void GSIArrayInsertSorted(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    + void GSIArrayInsertSorted(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    Availability: Not in OpenStep/MacOS-X

    @@ -2883,7 +14298,7 @@

    GSIArrayInsertSorted


    GSIArrayInsertSortedNoRetain

    - void GSIArrayInsertSortedNoRetain(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    + void GSIArrayInsertSortedNoRetain(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    Availability: Not in OpenStep/MacOS-X

    @@ -2894,7 +14309,7 @@

    GSIArrayInsertSortedNoRetain

    GSIArrayInsertionPosition

    - unsigned int GSIArrayInsertionPosition(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    + unsigned int GSIArrayInsertionPosition(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    Availability: Not in OpenStep/MacOS-X

    @@ -2905,7 +14320,7 @@

    GSIArrayInsertionPosition

    GSIArrayItemAtIndex

    - GSIArrayItem GSIArrayItemAtIndex(GSIArray array, unsigned int index);
    + GSIArrayItem GSIArrayItemAtIndex(GSIArray array, unsigned int index);
    Availability: Not in OpenStep/MacOS-X

    @@ -2916,7 +14331,7 @@

    GSIArrayItemAtIndex


    GSIArrayItems

    - GSIArrayItem* GSIArrayItems(GSIArray array);
    + GSIArrayItem* GSIArrayItems(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2927,7 +14342,7 @@

    GSIArrayItems


    GSIArrayLastItem

    - GSIArrayItem GSIArrayLastItem(GSIArray array);
    + GSIArrayItem GSIArrayLastItem(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2938,7 +14353,7 @@

    GSIArrayLastItem


    GSIArrayRemoveAllItems

    - void GSIArrayRemoveAllItems(GSIArray array);
    + void GSIArrayRemoveAllItems(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2949,7 +14364,7 @@

    GSIArrayRemoveAllItems


    GSIArrayRemoveItemAtIndex

    - void GSIArrayRemoveItemAtIndex(GSIArray array, unsigned int index);
    + void GSIArrayRemoveItemAtIndex(GSIArray array, unsigned int index);
    Availability: Not in OpenStep/MacOS-X

    @@ -2960,7 +14375,7 @@

    GSIArrayRemoveItemAtIndex

    GSIArrayRemoveItemAtIndexNoRelease

    - void GSIArrayRemoveItemAtIndexNoRelease(GSIArray array, unsigned int index);
    + void GSIArrayRemoveItemAtIndexNoRelease(GSIArray array, unsigned int index);
    Availability: Not in OpenStep/MacOS-X

    @@ -2971,7 +14386,7 @@

    GSIArrayRemoveItemAtIn

    GSIArrayRemoveItemsFromIndex

    - void GSIArrayRemoveItemsFromIndex(GSIArray array, unsigned int index);
    + void GSIArrayRemoveItemsFromIndex(GSIArray array, unsigned int index);
    Availability: Not in OpenStep/MacOS-X

    @@ -2982,7 +14397,7 @@

    GSIArrayRemoveItemsFromIndex

    GSIArrayRemoveLastItem

    - void GSIArrayRemoveLastItem(GSIArray array);
    + void GSIArrayRemoveLastItem(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -2993,7 +14408,7 @@

    GSIArrayRemoveLastItem


    GSIArraySearch

    - unsigned int GSIArraySearch(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    + unsigned int GSIArraySearch(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    Availability: Not in OpenStep/MacOS-X

    @@ -3004,7 +14419,18 @@

    GSIArraySearch


    GSIArraySetItemAtIndex

    - void GSIArraySetItemAtIndex(GSIArray array, GSIArrayItem item, unsigned int index);
    + void GSIArraySetItemAtIndex(GSIArray array, GSIArrayItem item, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArraySize

    + NSUInteger GSIArraySize(GSIArray array);
    Availability: Not in OpenStep/MacOS-X

    @@ -3015,11 +14441,11 @@

    GSIArraySetItemAtIndex


    -

    GSIMap functions

    +

    GSIMap functions

    GSIMapAddKey

    - GSIMapNode GSIMapAddKey(GSIMapTable map, GSIMapKey key);
    + GSIMapNode GSIMapAddKey(GSIMapTable map, GSIMapKey key);
    Availability: Not in OpenStep/MacOS-X

    @@ -3030,7 +14456,7 @@

    GSIMapAddKey


    GSIMapAddKeyNoRetain

    - GSIMapNode GSIMapAddKeyNoRetain(GSIMapTable map, GSIMapKey key);
    + GSIMapNode GSIMapAddKeyNoRetain(GSIMapTable map, GSIMapKey key);
    Availability: Not in OpenStep/MacOS-X

    @@ -3041,7 +14467,7 @@

    GSIMapAddKeyNoRetain


    GSIMapAddNodeToBucket

    - void GSIMapAddNodeToBucket(GSIMapBucket bucket, GSIMapNode node);
    + void GSIMapAddNodeToBucket(GSIMapBucket bucket, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3052,7 +14478,7 @@

    GSIMapAddNodeToBucket


    GSIMapAddNodeToMap

    - void GSIMapAddNodeToMap(GSIMapTable map, GSIMapNode node);
    + void GSIMapAddNodeToMap(GSIMapTable map, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3063,7 +14489,7 @@

    GSIMapAddNodeToMap


    GSIMapAddPair

    - GSIMapNode GSIMapAddPair(GSIMapTable map, GSIMapKey key, GSIMapVal value);
    + GSIMapNode GSIMapAddPair(GSIMapTable map, GSIMapKey key, GSIMapVal value);
    Availability: Not in OpenStep/MacOS-X

    @@ -3074,7 +14500,7 @@

    GSIMapAddPair


    GSIMapAddPairNoRetain

    - GSIMapNode GSIMapAddPairNoRetain(GSIMapTable map, GSIMapKey key, GSIMapVal value);
    + GSIMapNode GSIMapAddPairNoRetain(GSIMapTable map, GSIMapKey key, GSIMapVal value);
    Availability: Not in OpenStep/MacOS-X

    @@ -3085,7 +14511,7 @@

    GSIMapAddPairNoRetain


    GSIMapBucketForKey

    - GSIMapBucket GSIMapBucketForKey(GSIMapTable map, GSIMapKey key);
    + GSIMapBucket GSIMapBucketForKey(GSIMapTable map, GSIMapKey key);
    Availability: Not in OpenStep/MacOS-X

    @@ -3096,7 +14522,7 @@

    GSIMapBucketForKey


    GSIMapCleanMap

    - void GSIMapCleanMap(GSIMapTable map);
    + void GSIMapCleanMap(GSIMapTable map);
    Availability: Not in OpenStep/MacOS-X

    @@ -3107,7 +14533,7 @@

    GSIMapCleanMap


    GSIMapCountByEnumeratingWithStateObjectsCount

    - NSUInteger GSIMapCountByEnumeratingWithStateObjectsCount(GSIMapTable map, NSFastEnumerationState* state, id* stackbuf, NSUInteger len);
    + NSUInteger GSIMapCountByEnumeratingWithStateObjectsCount(GSIMapTable map, NSFastEnumerationState* state, id* stackbuf, NSUInteger len);
    Availability: Not in OpenStep/MacOS-X

    @@ -3119,7 +14545,7 @@

    GSIMapCount

    GSIMapEmptyMap

    - void GSIMapEmptyMap(GSIMapTable map);
    + void GSIMapEmptyMap(GSIMapTable map);
    Availability: Not in OpenStep/MacOS-X

    @@ -3130,7 +14556,7 @@

    GSIMapEmptyMap


    GSIMapEndEnumerator

    - void GSIMapEndEnumerator(GSIMapEnumerator enumerator);
    + void GSIMapEndEnumerator(GSIMapEnumerator enumerator);
    Availability: Not in OpenStep/MacOS-X

    @@ -3142,7 +14568,7 @@

    GSIMapEndEnumerator


    GSIMapEnumeratorBucket

    - GSIMapBucket GSIMapEnumeratorBucket(GSIMapEnumerator enumerator);
    + GSIMapBucket GSIMapEnumeratorBucket(GSIMapEnumerator enumerator);
    Availability: Not in OpenStep/MacOS-X

    @@ -3152,7 +14578,7 @@

    GSIMapEnumeratorBucket

    enumeration will come. Once the next node has been enumerated, you can use the bucket and node to remove the node from the map using the - + GSIMapRemoveNodeFromMap() @@ -3161,7 +14587,7 @@

    GSIMapEnumeratorBucket


    GSIMapEnumeratorForMap

    - GSIMapEnumerator_t GSIMapEnumeratorForMap(GSIMapTable map);
    + GSIMapEnumerator_t GSIMapEnumeratorForMap(GSIMapTable map);
    Availability: Not in OpenStep/MacOS-X

    @@ -3169,7 +14595,7 @@

    GSIMapEnumeratorForMap

    Enumerating
    Create an return an enumerator for the specified map.
    You must call - + GSIMapEndEnumerator() @@ -3183,7 +14609,7 @@

    GSIMapEnumeratorForMap


    GSIMapEnumeratorNextNode

    - GSIMapNode GSIMapEnumeratorNextNode(GSIMapEnumerator enumerator);
    + GSIMapNode GSIMapEnumeratorNextNode(GSIMapEnumerator enumerator);
    Availability: Not in OpenStep/MacOS-X

    @@ -3195,7 +14621,7 @@

    GSIMapEnumeratorNextNode


    GSIMapFirstNode

    - GSIMapNode GSIMapFirstNode(GSIMapTable map);
    + GSIMapNode GSIMapFirstNode(GSIMapTable map);
    Availability: Not in OpenStep/MacOS-X

    @@ -3206,7 +14632,7 @@

    GSIMapFirstNode


    GSIMapFreeNode

    - void GSIMapFreeNode(GSIMapTable map, GSIMapNode node);
    + void GSIMapFreeNode(GSIMapTable map, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3217,7 +14643,7 @@

    GSIMapFreeNode


    GSIMapInitWithZoneAndCapacity

    - void GSIMapInitWithZoneAndCapacity(GSIMapTable map, NSZone* zone, uintptr_t capacity);
    + void GSIMapInitWithZoneAndCapacity(GSIMapTable map, NSZone* zone, uintptr_t capacity);
    Availability: Not in OpenStep/MacOS-X

    @@ -3228,7 +14654,7 @@

    GSIMapInitWithZoneAndCapaci

    GSIMapLinkNodeIntoBucket

    - void GSIMapLinkNodeIntoBucket(GSIMapBucket bucket, GSIMapNode node);
    + void GSIMapLinkNodeIntoBucket(GSIMapBucket bucket, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3239,7 +14665,7 @@

    GSIMapLinkNodeIntoBucket


    GSIMapMoreNodes

    - void GSIMapMoreNodes(GSIMapTable map, unsigned int required);
    + void GSIMapMoreNodes(GSIMapTable map, unsigned int required);
    Availability: Not in OpenStep/MacOS-X

    @@ -3250,7 +14676,7 @@

    GSIMapMoreNodes


    GSIMapNodeForKey

    - GSIMapNode GSIMapNodeForKey(GSIMapTable map, GSIMapKey key);
    + GSIMapNode GSIMapNodeForKey(GSIMapTable map, GSIMapKey key);
    Availability: Not in OpenStep/MacOS-X

    @@ -3261,7 +14687,7 @@

    GSIMapNodeForKey


    GSIMapNodeForKeyInBucket

    - GSIMapNode GSIMapNodeForKeyInBucket(GSIMapTable map, GSIMapBucket bucket, GSIMapKey key);
    + GSIMapNode GSIMapNodeForKeyInBucket(GSIMapTable map, GSIMapBucket bucket, GSIMapKey key);
    Availability: Not in OpenStep/MacOS-X

    @@ -3272,7 +14698,7 @@

    GSIMapNodeForKeyInBucket


    GSIMapNodeForSimpleKey

    - GSIMapNode GSIMapNodeForSimpleKey(GSIMapTable map, GSIMapKey key);
    + GSIMapNode GSIMapNodeForSimpleKey(GSIMapTable map, GSIMapKey key);
    Availability: Not in OpenStep/MacOS-X

    @@ -3283,7 +14709,7 @@

    GSIMapNodeForSimpleKey


    GSIMapPickBucket

    - GSIMapBucket GSIMapPickBucket(unsigned int hash, GSIMapBucket buckets, uintptr_t bucketCount);
    + GSIMapBucket GSIMapPickBucket(unsigned int hash, GSIMapBucket buckets, uintptr_t bucketCount);
    Availability: Not in OpenStep/MacOS-X

    @@ -3294,7 +14720,7 @@

    GSIMapPickBucket


    GSIMapRemangleBuckets

    - void GSIMapRemangleBuckets(GSIMapTable map, GSIMapBucket old_buckets, uintptr_t old_bucketCount, GSIMapBucket new_buckets, uintptr_t new_bucketCount);
    + void GSIMapRemangleBuckets(GSIMapTable map, GSIMapBucket old_buckets, uintptr_t old_bucketCount, GSIMapBucket new_buckets, uintptr_t new_bucketCount);
    Availability: Not in OpenStep/MacOS-X

    @@ -3305,7 +14731,7 @@

    GSIMapRemangleBuckets


    GSIMapRemoveAndFreeNode

    - GSIMapNode GSIMapRemoveAndFreeNode(GSIMapTable map, uintptr_t bkt, GSIMapNode node);
    + GSIMapNode GSIMapRemoveAndFreeNode(GSIMapTable map, uintptr_t bkt, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3316,7 +14742,7 @@

    GSIMapRemoveAndFreeNode


    GSIMapRemoveKey

    - BOOL GSIMapRemoveKey(GSIMapTable map, GSIMapKey key);
    + BOOL GSIMapRemoveKey(GSIMapTable map, GSIMapKey key);
    Availability: Not in OpenStep/MacOS-X

    @@ -3330,7 +14756,7 @@

    GSIMapRemoveKey


    GSIMapRemoveNodeFromBucket

    - void GSIMapRemoveNodeFromBucket(GSIMapBucket bucket, GSIMapNode node);
    + void GSIMapRemoveNodeFromBucket(GSIMapBucket bucket, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3341,7 +14767,7 @@

    GSIMapRemoveNodeFromBucket

    GSIMapRemoveNodeFromMap

    - void GSIMapRemoveNodeFromMap(GSIMapTable map, GSIMapBucket bkt, GSIMapNode node);
    + void GSIMapRemoveNodeFromMap(GSIMapTable map, GSIMapBucket bkt, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3352,7 +14778,7 @@

    GSIMapRemoveNodeFromMap


    GSIMapRemoveWeak

    - void GSIMapRemoveWeak(GSIMapTable map);
    + void GSIMapRemoveWeak(GSIMapTable map);
    Availability: Not in OpenStep/MacOS-X

    @@ -3363,7 +14789,7 @@

    GSIMapRemoveWeak


    GSIMapResize

    - void GSIMapResize(GSIMapTable map, uintptr_t new_capacity);
    + void GSIMapResize(GSIMapTable map, uintptr_t new_capacity);
    Availability: Not in OpenStep/MacOS-X

    @@ -3374,7 +14800,7 @@

    GSIMapResize


    GSIMapRightSizeMap

    - void GSIMapRightSizeMap(GSIMapTable map, uintptr_t capacity);
    + void GSIMapRightSizeMap(GSIMapTable map, uintptr_t capacity);
    Availability: Not in OpenStep/MacOS-X

    @@ -3385,7 +14811,7 @@

    GSIMapRightSizeMap


    GSIMapSize

    - NSUInteger GSIMapSize(GSIMapTable map);
    + NSUInteger GSIMapSize(GSIMapTable map);
    Availability: Not in OpenStep/MacOS-X

    @@ -3396,7 +14822,7 @@

    GSIMapSize


    GSIMapUnlinkNodeFromBucket

    - void GSIMapUnlinkNodeFromBucket(GSIMapBucket bucket, GSIMapNode node);
    + void GSIMapUnlinkNodeFromBucket(GSIMapBucket bucket, GSIMapNode node);
    Availability: Not in OpenStep/MacOS-X

    @@ -3404,26 +14830,6 @@

    GSIMapUnlinkNodeFromBucket Description forthcoming. - -
    - -

    GSFunctions functions

    -

    -

    -

    GSFindNamedFile

    - NSString* GSFindNamedFile(NSArray* paths, NSString* aName, NSString* anExtension);
    -
    -Availability: BaseAdditions
    - Likely to be changed/moved/removed at 1.15.0
    -
    -
    - - Try to locate file/directory (aName).( - anExtension (aName).(anExtension) - in paths. Will return the first found or - nil if nothing is found.
    - Deprecated... may be removed in later release. -

    @@ -3521,7 +14927,27 @@

    GSSetLocaleC


    -

    NSDebug+GNUstepBase functions

    +

    GSFunctions functions

    +

    +

    +

    GSFindNamedFile

    + NSString* GSFindNamedFile(NSArray* paths, NSString* aName, NSString* anExtension);
    +
    +Availability: BaseAdditions
    + Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Try to locate file/directory (aName).( + anExtension (aName).(anExtension) + in paths. Will return the first found or + nil if nothing is found.
    + Deprecated... may be removed in later release. + +
    +
    + +

    NSDebug+GNUstepBase functions

    GSDebugFunctionMsg

    @@ -3560,7 +14986,22 @@

    GSDebugSet


    -

    NSThread+GNUstepBase functions

    +

    NSString+GNUstepBase functions

    +

    +

    +

    GSPathHandling

    + const char* GSPathHandling(const char* mode);
    +
    +Availability: OpenStep
    +
    +
    + + See "Portable path handling" in NSString.h. + +
    +
    + +

    NSThread+GNUstepBase functions

    GSCurrentThread

    @@ -3586,7 +15027,7 @@

    GSCurrentThreadDictionary
    -

    Unicode functions

    +

    Unicode functions

    GSEncodingForRegistry

    @@ -3602,8 +15043,8 @@

    GSEncodingForRegistry

    iso8859-5 character set, the registry is iso8859 and the encoding is 5, and the returned NSStringEncoding is - NSISOCyrillicStringEncoding. If - there is no specific encoding, use @"0". + NSISOLatinCyrillicStringEncoding. + If there is no specific encoding, use @"0". Returns GSUndefinedEncoding if there is no match. diff --git a/resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.gsdoc new file mode 100644 index 0000000..d94addb --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.gsdoc @@ -0,0 +1,13 @@ + + + + + Functions + + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.html index 52351dc..d0a8891 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/FunctionsTOC.html @@ -11,134 +11,136 @@

    Functions

    - GSAutoreleasedBuffer
    - GSCGetInstanceVariableDefinition
    - GSClassFromName
    - GSClassList
    - GSClassNameFromObject
    - GSClassSwizzle
    - GSCurrentThread
    - GSCurrentThreadDictionary
    - GSDebugFunctionMsg
    - GSDebugMethodMsg
    - GSDebugSet
    - GSDefaultLanguageLocale
    - GSDomainFromDefaultLocale
    - GSEncodingForRegistry
    - GSEncodingFromLocale
    - GSFindNamedFile
    - GSFlushMethodCacheForClass
    - GSFromUnicode
    - GSGetMethod
    - GSIArrayAddItem
    - GSIArrayAddItemNoRetain
    - GSIArrayCapacity
    - GSIArrayCheckSort
    - GSIArrayClear
    - GSIArrayCopyWithZone
    - GSIArrayCount
    - GSIArrayEmpty
    - GSIArrayGrow
    - GSIArrayGrowTo
    - GSIArrayInitWithZoneAndCapacity
    - GSIArrayInitWithZoneAndStaticCapacity
    - GSIArrayInsertItem
    - GSIArrayInsertItemNoRetain
    - GSIArrayInsertSorted
    - GSIArrayInsertSortedNoRetain
    - GSIArrayInsertionPosition
    - GSIArrayItemAtIndex
    - GSIArrayItems
    - GSIArrayLastItem
    - GSIArrayRemoveAllItems
    - GSIArrayRemoveItemAtIndex
    - GSIArrayRemoveItemAtIndexNoRelease
    - GSIArrayRemoveItemsFromIndex
    - GSIArrayRemoveLastItem
    - GSIArraySearch
    - GSIArraySetItemAtIndex
    - GSIMapAddKey
    - GSIMapAddKeyNoRetain
    - GSIMapAddNodeToBucket
    - GSIMapAddNodeToMap
    - GSIMapAddPair
    - GSIMapAddPairNoRetain
    - GSIMapBucketForKey
    - GSIMapCleanMap
    - GSIMapCountByEnumeratingWithStateObjectsCount
    - GSIMapEmptyMap
    - GSIMapEndEnumerator
    - GSIMapEnumeratorBucket
    - GSIMapEnumeratorForMap
    - GSIMapEnumeratorNextNode
    - GSIMapFirstNode
    - GSIMapFreeNode
    - GSIMapInitWithZoneAndCapacity
    - GSIMapLinkNodeIntoBucket
    - GSIMapMoreNodes
    - GSIMapNodeForKey
    - GSIMapNodeForKeyInBucket
    - GSIMapNodeForSimpleKey
    - GSIMapPickBucket
    - GSIMapRemangleBuckets
    - GSIMapRemoveAndFreeNode
    - GSIMapRemoveKey
    - GSIMapRemoveNodeFromBucket
    - GSIMapRemoveNodeFromMap
    - GSIMapRemoveWeak
    - GSIMapResize
    - GSIMapRightSizeMap
    - GSIMapSize
    - GSIMapUnlinkNodeFromBucket
    - GSLanguageFromLocale
    - GSLanguagesFromLocale
    - GSLastErrorStr
    - GSLocaleVariants
    - GSNameFromClass
    - GSNameFromSelector
    - GSObjCAddClassBehavior
    - GSObjCAddClassOverride
    - GSObjCAddClasses
    - GSObjCAddMethods
    - GSObjCAllSubclassesOfClass
    - GSObjCBehaviorDebug
    - GSObjCClass
    - GSObjCDirectSubclassesOfClass
    - GSObjCFindVariable
    - GSObjCGetInstanceVariableDefinition
    - GSObjCGetVal
    - GSObjCGetVariable
    - GSObjCIsClass
    - GSObjCIsInstance
    - GSObjCIsKindOf
    - GSObjCMakeClass
    - GSObjCMethodNames
    - GSObjCSetVal
    - GSObjCSetVariable
    - GSObjCSuper
    - GSObjCVariableNames
    - GSObjCVersion
    - GSPrintf
    - GSProtocolFromName
    - GSProtocolGetMethodDescriptionRecursive
    - GSRegisterProtocol
    - GSSelectorFromName
    - GSSelectorFromNameAndTypes
    - GSSelectorTypesMatch
    - GSSetLocale
    - GSSetLocaleC
    - GSSkipTypeQualifierAndLayoutInfo
    - GSToUnicode
    - GSTypesFromSelector
    - GSUnicode
    - _Block_copy
    - _Block_release
    - gs_consumed
    - uni_cop
    - uni_is_decomp
    - uni_isnonsp
    - uni_tolower
    - uni_toupper
    + GSAutoreleasedBuffer
    + GSCGetInstanceVariableDefinition
    + GSClassFromName
    + GSClassList
    + GSClassNameFromObject
    + GSClassSwizzle
    + GSCurrentThread
    + GSCurrentThreadDictionary
    + GSDebugFunctionMsg
    + GSDebugMethodMsg
    + GSDebugSet
    + GSDefaultLanguageLocale
    + GSDomainFromDefaultLocale
    + GSEncodingForRegistry
    + GSEncodingFromLocale
    + GSFindNamedFile
    + GSFlushMethodCacheForClass
    + GSFromUnicode
    + GSGetMethod
    + GSIArrayAddItem
    + GSIArrayAddItemNoRetain
    + GSIArrayCapacity
    + GSIArrayCheckSort
    + GSIArrayClear
    + GSIArrayCopyWithZone
    + GSIArrayCount
    + GSIArrayEmpty
    + GSIArrayGrow
    + GSIArrayGrowTo
    + GSIArrayInitWithZoneAndCapacity
    + GSIArrayInitWithZoneAndStaticCapacity
    + GSIArrayInsertItem
    + GSIArrayInsertItemNoRetain
    + GSIArrayInsertSorted
    + GSIArrayInsertSortedNoRetain
    + GSIArrayInsertionPosition
    + GSIArrayItemAtIndex
    + GSIArrayItems
    + GSIArrayLastItem
    + GSIArrayRemoveAllItems
    + GSIArrayRemoveItemAtIndex
    + GSIArrayRemoveItemAtIndexNoRelease
    + GSIArrayRemoveItemsFromIndex
    + GSIArrayRemoveLastItem
    + GSIArraySearch
    + GSIArraySetItemAtIndex
    + GSIArraySize
    + GSIMapAddKey
    + GSIMapAddKeyNoRetain
    + GSIMapAddNodeToBucket
    + GSIMapAddNodeToMap
    + GSIMapAddPair
    + GSIMapAddPairNoRetain
    + GSIMapBucketForKey
    + GSIMapCleanMap
    + GSIMapCountByEnumeratingWithStateObjectsCount
    + GSIMapEmptyMap
    + GSIMapEndEnumerator
    + GSIMapEnumeratorBucket
    + GSIMapEnumeratorForMap
    + GSIMapEnumeratorNextNode
    + GSIMapFirstNode
    + GSIMapFreeNode
    + GSIMapInitWithZoneAndCapacity
    + GSIMapLinkNodeIntoBucket
    + GSIMapMoreNodes
    + GSIMapNodeForKey
    + GSIMapNodeForKeyInBucket
    + GSIMapNodeForSimpleKey
    + GSIMapPickBucket
    + GSIMapRemangleBuckets
    + GSIMapRemoveAndFreeNode
    + GSIMapRemoveKey
    + GSIMapRemoveNodeFromBucket
    + GSIMapRemoveNodeFromMap
    + GSIMapRemoveWeak
    + GSIMapResize
    + GSIMapRightSizeMap
    + GSIMapSize
    + GSIMapUnlinkNodeFromBucket
    + GSLanguageFromLocale
    + GSLanguagesFromLocale
    + GSLastErrorStr
    + GSLocaleVariants
    + GSNameFromClass
    + GSNameFromSelector
    + GSObjCAddClassBehavior
    + GSObjCAddClassOverride
    + GSObjCAddClasses
    + GSObjCAddMethods
    + GSObjCAllSubclassesOfClass
    + GSObjCBehaviorDebug
    + GSObjCClass
    + GSObjCDirectSubclassesOfClass
    + GSObjCFindVariable
    + GSObjCGetInstanceVariableDefinition
    + GSObjCGetVal
    + GSObjCGetVariable
    + GSObjCIsClass
    + GSObjCIsInstance
    + GSObjCIsKindOf
    + GSObjCMakeClass
    + GSObjCMethodNames
    + GSObjCSetVal
    + GSObjCSetVariable
    + GSObjCSuper
    + GSObjCVariableNames
    + GSObjCVersion
    + GSPathHandling
    + GSPrintf
    + GSProtocolFromName
    + GSProtocolGetMethodDescriptionRecursive
    + GSRegisterProtocol
    + GSSelectorFromName
    + GSSelectorFromNameAndTypes
    + GSSelectorTypesMatch
    + GSSetLocale
    + GSSetLocaleC
    + GSSkipTypeQualifierAndLayoutInfo
    + GSToUnicode
    + GSTypesFromSelector
    + GSUnicode
    + _Block_copy
    + _Block_release
    + gs_consumed
    + uni_cop
    + uni_is_decomp
    + uni_isnonsp
    + uni_tolower
    + uni_toupper

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GCObject.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/GCObject.gsdoc new file mode 100644 index 0000000..809052e --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/GCObject.gsdoc @@ -0,0 +1,373 @@ + + + + + GCObject documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2002 Free Software Foundation, Inc. + + + + + + Software documentation for the GCArray class + + + GNUstepBase/GCObject.h + + Description forthcoming. + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + + + + Software documentation for the GCDictionary class + + + GNUstepBase/GCObject.h + + Description forthcoming. + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + + + + Software documentation for the GCMutableArray class + + + GNUstepBase/GCObject.h + + Description forthcoming. + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + + + + Software documentation for the GCMutableDictionary + class + + + GNUstepBase/GCObject.h + + Description forthcoming. + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + + + + Software documentation for the GCObject class + + + GNUstepBase/GCObject.h + +

    + The GCObject class is both the base class for all + garbage collected objects, and an infrastructure + for handling garbage collection. +

    +

    + It maintains a list of all garbage collectable objects + and provides a method to run a garbage collection pass + on those objects. +

    +
    + + + Description forthcoming. + + + + gcCollectGarbage + +

    + This method runs a garbage collection, causing + unreferenced objects to be deallocated. This + is done using a simple three pass algorithm - +

    + + Pass 1 + + All the garbage collectable objects are sent a + -gcDecrementRefCountOfContainedObjects message. + + Pass 2 + + All objects having a refCount greater than 0 are + sent an + -gcIncrementRefCountOfContainedObjects message. + + Pass 3 + + All the objects that still have the refCount of 0 + are part of cyclic graphs and none of the objects + from this graph are held by some object outside + graph. These objects receive the + + -dealloc + + message. In this method they should send the + + -dealloc + + message to any garbage collectable (GCObject + and subclass) instances they contain. + + +

    + During garbage collection, the + + +gcIsCollecting + + method returns YES. +

    +
    +
    + + gcIsCollecting + + Returns a flag to indicate whether a garbage + collection is in progress. + + + + gcObjectWillBeDeallocated: + anObject + + Called to remove anObject from the list + of garbage collectable objects.
    This method is + provided so that classes which are not subclasses + of GCObject (but which have the same initial instance + variable layout) can use multiple inheritance + (behaviors) to act as GCObject instances, but + can have their own + + -dealloc + + methods.
    These classes should call this in + their own + + -dealloc + + methods. +
    +
    + + gcDecrementRefCount + + Decrements the garbage collection reference + count for the receiver.
    +
    +
    + + gcDecrementRefCountOfContainedObjects + +

    + Marks the receiver as not having been visited in + the current garbage collection process (first pass of + collection). +

    +

    + All container subclasses should override this method + to call the super implementation then decrement the + ref counts of their contents as well as sending the + -gcDecrementRefCountOfContainedObjects message to each of them. +

    +
    +
    + + gcIncrementRefCount + + Increments the garbage collection reference + count for the receiver.
    +
    +
    + + gcIncrementRefCountOfContainedObjects + +

    + Checks to see if the receiver has already been + visited in the current garbage collection + process, and either marks the receiver as + visited (and returns YES) or returns + NO to indicate that it had already + been visited. +

    +

    + All container subclasses should override this method + to call the super implementation then, if the method + returns YES, increment the reference + count of any contained objects and send the + -gcIncrementRefCountOfContainedObjects to each of the contained objects too. +

    +
    +
    +
    +
    + + + Software documentation for the GCObject(Extra) + category + + + GNUstepBase/GCObject.h + + This category implements accessor methods for the + instance variables used for garbage collecting. + If/when we can ensure that all garbage collecting + classes use the same initial ivar layout, we can + remove these methods and the garbage collector can + access the ivars directly, making a pretty big + performance improvement during collecting.
    + NB. These methods must *only* be used by the garbage + collecting process or in methods called from the + garbage collector. Anything else is not thread-safe. +
    + + gcAlreadyVisited + + Description forthcoming. + + + + gcNextObject + + Description forthcoming. + + + + gcPreviousObject + + Description forthcoming. + + + + gcSetNextObject: + anObject + + Description forthcoming. + + + + gcSetPreviousObject: + anObject + + Description forthcoming. + + + + gcSetVisited: + flag + + Description forthcoming. + + +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GCObject.html b/resources/documentation/Developer/BaseAdditions/Reference/GCObject.html index 1433d24..de6cd01 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/GCObject.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/GCObject.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2002 Free Software Foundation, Inc.

    @@ -368,19 +369,19 @@

    GCObject : NSObject



    Method summary
    @@ -407,7 +408,7 @@

    gcCollectGarbage 

    All the garbage collectable objects are sent a - -gcDecrementRefCountOfContainedObjects + -gcDecrementRefCountOfContainedObjects message.
    @@ -416,7 +417,7 @@

    gcCollectGarbage 

    All objects having a refCount greater than 0 are sent an - -gcIncrementRefCountOfContainedObjects + -gcIncrementRefCountOfContainedObjects message. @@ -447,7 +448,7 @@

    gcCollectGarbage 

    During garbage collection, the - + +gcIsCollecting @@ -475,7 +476,7 @@

    gcIsCollecting 

    gcObjectWillBeDeallocated: 

    - + (void) gcObjectWillBeDeallocated: (GCObject*)anObject;
    + + (void) gcObjectWillBeDeallocated: (GCObject*)anObject;
    Availability: OpenStep

    @@ -542,7 +543,7 @@

    gcDecrementR All container subclasses should override this method to call the super implementation then decrement the ref counts of their contents as well as sending the - -gcDecrementRefCountOfContainedObjects + -gcDecrementRefCountOfContainedObjects message to each of them.

    @@ -594,7 +595,7 @@

    gcIncrementR to call the super implementation then, if the method returns YES, increment the reference count of any contained objects and send the - -gcIncrementRefCountOfContainedObjects + -gcIncrementRefCountOfContainedObjects to each of the contained objects too.

    @@ -622,7 +623,7 @@

    Software documentation for the GCObject(Extra) category

    -

    GCObject(Extra)

    +

    GCObject(Extra)

    Declared in:
    @@ -648,12 +649,12 @@

    -gcAlreadyVisited -
  • -gcNextObject
  • -
  • -gcPreviousObject
  • -
  • -gcSetNextObject:
  • -
  • -gcSetPreviousObject:
  • -
  • -gcSetVisited:
  • +
  • -gcAlreadyVisited
  • +
  • -gcNextObject
  • +
  • -gcPreviousObject
  • +
  • -gcSetNextObject:
  • +
  • -gcSetPreviousObject:
  • +
  • -gcSetVisited:

  • @@ -671,7 +672,7 @@

    gcAlreadyVisited 

    gcNextObject 

    - - (GCObject*) gcNextObject;
    + - (GCObject*) gcNextObject;
    Availability: OpenStep

    @@ -684,7 +685,7 @@

    gcNextObject 

    gcPreviousObject 

    - - (GCObject*) gcPreviousObject;
    + - (GCObject*) gcPreviousObject;
    Availability: OpenStep

    @@ -697,7 +698,7 @@

    gcPreviousObject 

    gcSetNextObject: 

    - - (GCObject*) gcSetNextObject: (GCObject*)anObject;
    + - (GCObject*) gcSetNextObject: (GCObject*)anObject;
    Availability: OpenStep

    @@ -710,7 +711,7 @@

    gcSetNextObject: 

    gcSetPreviousObject: 

    - - (GCObject*) gcSetPreviousObject: (GCObject*)anObject;
    + - (GCObject*) gcSetPreviousObject: (GCObject*)anObject;
    Availability: OpenStep

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSLock.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/GSLock.gsdoc new file mode 100644 index 0000000..38536d5 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSLock.gsdoc @@ -0,0 +1,98 @@ + + + + + GSLock documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003 Free Software Foundation, Inc. + + + + + + Software documentation for the GSLazyLock class + + + GNUstepBase/GSLock.h + + This implements a class which, when used in + single-threaded mode, acts like a lock while + avoiding the overheads of actually using a real + lock. However, when the programm in which the class is + used becomes multi-threaded, all instances of this class + transform themselves into real locks in the correct + state (locked/unlocked) corresponding to whether the + lazy lock was locked or not at the point where the + program became multi threadeed.
    Use of this + class allows you to write thread-safe code which avoids + locking inefficiencies when used in a single threaded + application, without having to worry about + dealing with the issue yourself. +
    + + + Description forthcoming. + + + + _becomeThreaded: + n + + Warning the underscore at the start of the + name of this method indicates that it is private, for + internal use only, and you should not use the + method in your code.
    Do not use this method + ... it is used internally to handle the transition from + a single threaded system to a multi threaded one. +
    +
    +
    +
    + + + Software documentation for the GSLazyRecursiveLock + class + + + GNUstepBase/GSLock.h + + This implements a class which, when used in + single-threaded mode, acts like a recursive + lock while avoiding the overheads of using a real lock. + However, when the programm in which the class is + used becomes multi-threaded, all instances of this class + transform themselves into real locks in the correct + state (locked/unlocked) corresponding to whether the + lazy recursive lock was locked or not at the point where + the program became multi threadeed.
    Use of this + class allows you to write thread-safe code which avoids + locking inefficiencies when used in a single threaded + application, without having to worry about + dealing with the issue yourself. +
    + + + Description forthcoming. + + + + _becomeThreaded: + n + + Warning the underscore at the start of the + name of this method indicates that it is private, for + internal use only, and you should not use the + method in your code.
    Do not use this method + ... it is used internally to handle the transition from + a single threaded system to a multi threaded one. +
    +
    +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSLock.html b/resources/documentation/Developer/BaseAdditions/Reference/GSLock.html index d2b76c3..dacb83f 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/GSLock.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSLock.html @@ -16,8 +16,7 @@

    Authors

    -

    Version: 33621

    -

    Date: 2011-07-24 07:09:22 -0600 (Sun, 24 Jul 2011)

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003 Free Software Foundation, Inc.

    @@ -70,7 +69,7 @@

    GSLazyLock : NSLock



    Method summary
    @@ -142,7 +141,7 @@

    GSLazyRecursiveLock : NSRecursiveLoc

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSMime.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/GSMime.gsdoc new file mode 100644 index 0000000..8f1c559 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSMime.gsdoc @@ -0,0 +1,2097 @@ + + + + + The MIME parsing system + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2000-2016 Free Software Foundation, Inc. + + + + + Mime Parser +

    + The GNUstep Mime parser. This is collection Objective-C + classes for representing MIME (and HTTP) documents and + managing conversions to and from convenient internal + formats. +

    +

    + The idea is to center round two classes - +

    + + document + + A container for the actual data (and headers) of a + mime/http document, this is also used to create raw + MIME data for sending. + + parser + + An object that can be fed data and will parse it into a + document. This object also provides various utility + methods and an API that permits overriding in order + to extend the functionality to cope with new document + types. + + +
    + + + Software documentation for the GSMimeCodingContext + class + + + GNUstepBase/GSMime.h + + Coding contexts are objects used by the parser to + store the state of decoding incoming data while it is + being incrementally parsed.
    The most rudimentary + context... this is used for decoding plain text and + binary data (ie data which is not really decoded at + all) and all other decoding work is done by a subclass. +
    + + + Description forthcoming. + + + + atEnd + + Returns the current value of the 'atEnd' flag. + + + + decodeData: + sData + length: + length + intoData: + dData + + Decode length bytes of data from + sData and append the results to + dData.
    Return YES on + success, NO if there is an error. +
    +
    + + setAtEnd: + flag + + Sets the current value of the 'atEnd' flag. + + +
    +
    + + + Software documentation for the GSMimeDocument class + + + GNUstepBase/GSMime.h + NSCopying + +

    + This class is intended to provide a wrapper for MIME + messages permitting easy access to the contents of + a message and providing a basis for parsing an unparsing + messages that have arrived via email or as a web + document. +

    +

    + The class keeps track of all the document headers, and + provides methods for modifying and examining the + headers that apply to a document. +

    +
    + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + charsetForXml: + xml + + Description forthcoming. + + + + charsetFromEncoding: + enc + + Return the MIME characterset name corresponding to + the specified string encoding.
    As a special + case, returns "us-ascii" if enc is zero. +
    Returns nil if enc + cannot be mapped to a charset.
    NB. The + correspondence between charsets and + encodings is not a direct one to one mapping, so + successive calls to + + +encodingFromCharset: + + and + + +charsetFromEncoding: + + may not produce the original input. +
    +
    + + decodeBase64: + source + + Decode the source data from base64 + encoding and return the result.
    The + source data is expected to be ASCII text + and may be multiple lines or a line of any length + (decoding is very tolerant). +
    +
    + + decodeBase64String: + source + + Converts the base64 encoded data in + source to a decoded ASCII or UTF8 string + using the + + +decodeBase64: + + method. If the encoded data does not represent an + ASCII or UTF8 string, you should use the + + +decodeBase64: + + method directly. + + + + documentWithContent: + newContent + type: + type + name: + name + + Convenience method to return an autoreleased + document using the specified content, + type, and name value. This + calls the + + -setContent:type:name: + + method to set up the document. + + + + encodeBase64: + source + + Encode the source data to base64 encoding + and return the result.
    The resulting data is + ASCII text and contains only the base64 encoded + values with no line breaks or extraneous data. This + is base64 encoded data in it's general format as + mandated in RFC 3548. If the data is to be used as + part of a MIME document body, line breaks must be + introduced at 76 byte intervals (GSMime does + this when automatically encoding data for you). If the + data is to be used in a PEM document line breaks must + be introduced at 74 byte intervals. +
    +
    + + encodeBase64String: + source + + Converts the ASCII or UTF8 string + source into base64 encoded data using the + + +encodeBase64: + + method. If the original data is not an ASCII or + UTF8 string, you should use the + + +encodeBase64: + + method directly. + + + + encodingFromCharset: + charset + + Return the string encoding corresponding to the + specified MIME characterset name.
    As a + special case, returns NSASCIIStringEncoding if + charset is nil.
    + Returns 0 if charset cannot be found. +
    NB. We treat iso-10646-ucs-2 as utf-16, which + should work for most text, but is not strictly + correct.
    The correspondence between + charsets and encodings is not a direct one to one + mapping, so successive calls to + + +encodingFromCharset: + + and + + +charsetFromEncoding: + + may not produce the original input. +
    +
    + + addContent: + newContent + + Adds a part to a multipart document + + + + addHeader: + info + +

    + This method may be called to add a header to the + document. The header must be a mutable + dictionary object that contains at least the + fields that are standard for all headers. +

    +

    + Certain well-known headers are restricted to one + occurrence in an email, and when extra copies + are added they replace originals. +

    +

    + The mime-version header is special... it is inserted + before any other mime headers rather than being + added at the end. +

    +
    +
    + + addHeader: + name + value: + value + parameters: + parameters + + Convenience method to create a new header and + add it to the receiver.
    Returns the newly + created header.
    See + [GSMimeHeader -initWithName:value:parameters:] and -addHeader: methods. +
    +
    + + allHeaders + +

    + This method returns an array containing GSMimeHeader + objects representing the headers associated with + the document. +

    +

    + The order of the headers in the array is the order of + the headers in the document. +

    +
    +
    + + content + + This returns the content data of the document in the + same format in which the data was placed in the + document. This may be one of - + + text an NSString object + binary an NSData object + multipart + + an NSArray object containing GSMimeDocument objects + + + If you want to be sure that you get a particular type of + data, use the + + -convertToData + + or + + -convertToText + + method. + + + + contentByID: + key + + Search the content of this document to locate a part + whose content ID matches the specified key + . Recursively descend into other documents.
    Wraps + the supplied key in angle brackets if they + are not present.
    Return nil if no + match is found, the matching GSMimeDocument + otherwise. +
    +
    + + contentByLocation: + key + + Search the content of this document to locate a part + whose content ID matches the specified key + . Recursively descend into other documents.
    Wraps + the supplied key in angle brackets if they + are not present.
    Return nil if no + match is found, the matching GSMimeDocument + otherwise. +
    +
    + + contentByName: + key + + Search the content of this document to locate a part + whose content-type name or content-disposition name + matches the specified key. Recursively + descend into other documents.
    Return + nil if no match is found, the matching + GSMimeDocument otherwise. +
    +
    + + contentFile + + Convenience method to fetch the content file + name from the content-type or content-disposition + header. + + + + contentID + + Convenience method to fetch the content ID from + the header. + + + + contentLocation + + Convenience method to fetch the content + location from the header. + + + + contentName + + Convenience method to fetch the content name + from the header. + + + + contentSubtype + + Convenience method to fetch the content + sub-type from the header. + + + + contentType + + Convenience method to fetch the content type + from the header. + + + + contentsByName: + key + + Search the content of this document to locate all + parts whose content-type name or content-disposition + name matches the specified key. Do + NOT recurse into other documents.
    + Return nil if no match is found, an + array of matching GSMimeDocument instances otherwise. +
    +
    + + convertTo7BitSafe + + Converts any binary parts of the receiver's + content to be base64 (or quoted-printable for text + parts) encoded rather than 8bit or binary encoded... + a convenience method to make the results of the + + -rawMimeData + + method safe for sending via routes which only + support 7bit data. + + + + convertToBase64 + + Description forthcoming. + + + + convertToBinary + + Converts any base64 (or quoted-printable) encoded + parts of the receiver's content to be binary encoded + instead... a convenience method to shrink down the + size of the message when converted to data using the + + -rawMimeData + + method. + + + + convertToData + + Return the content as an NSData object (unless it is + multipart)
    Perform conversion from text + to data using the charset specified in the content-type + header, or infer the charset, and update the header + accordingly.
    If the content can not be + represented as a plain NSData object, this + method returns nil. +
    +
    + + convertToText + + Return the content as an NSString object (unless it + is multipart) If the content cannot be represented as + text, this returns nil. + + + + copyWithZone: + z + + Returns a copy of the receiver. + + + + deleteContent: + aPart + + Deletes all ocurrances of parts identical to + aPart from the receiver.
    + Recursively deletes from enclosed documents as + necessary. +
    +
    + + deleteHeader: + aHeader + + This method removes all occurrences of header objects + identical to the one supplied as an argument. + + + + deleteHeaderNamed: + name + + This method removes all occurrences of headers whose + name matches the supplied string. + + + + estimatedSize + + How big this document might be when represented as raw + MIME data. + + + + headerNamed: + name + + This method returns the first header whose + name equals the supplied argument. + + + + headersNamed: + name + + This method returns an array of GSMimeHeader objects + for all headers whose names equal the supplied + argument. + + + + makeBoundary + +

    + Make a probably unique string suitable for use as + the boundary parameter in the content of a multipart + document. +

    +

    + This implementation provides base64 encoded data + consisting of an MD5 digest of some pseudo + random stuff, plus an incrementing counter. The + inclusion of the counter guarantees that we + won't produce two identical strings in the same run + of the program. +

    +

    + The boundary has a suffix of '=_' to ensure it's not + mistaken for quoted-printable data. +

    +
    +
    + + makeContentID + + Create new content ID header, set it as the content + ID of the document and return it.
    This is a + convenience method which simply places angle + brackets around an + [NSProcessInfo -globallyUniqueString] to form the header value. +
    +
    + + makeHeader: + name + value: + value + parameters: + parameters + + Deprecated... use + + -setHeader:value:parameters: + + + + + makeMessageID + + Create new message ID header, set it as the message + ID of the document and return it.
    This is a + convenience method which simply places angle + brackets around an + [NSProcessInfo -globallyUniqueString] to form the header value. +
    +
    + + rawMimeData + + Return an NSData object representing the MIME + document as raw data ready to be sent via an email + system.
    Calls + + -rawMimeData: + + with the isOuter flag set to YES. +
    +
    + + rawMimeData: + isOuter + +

    + Return an NSData object representing the MIME + document as raw data ready to be sent via an + email system. +

    +

    + The isOuter flag denotes whether this + document is the outermost part of a MIME + message, or is a part of a multipart message. +

    +

    + Long lines are folded at the default column. +

    +
    +
    + + rawMimeData: + isOuter + foldedAt: + fold + +

    + Return an NSData object representing the MIME + document as raw data ready to be sent via an + email system. +

    +

    + The isOuter flag denotes whether this + document is the outermost part of a MIME + message, or is a part of a multipart message. +

    +

    + The fold number specifes the column at + which lines are considered to be 'long', and get + broken/folded. +

    +

    + During generation of the document this method will + perform some consistency checks and try to + automatically generate missing header + information needed to build the mime data + (eg. filling in the boundary parameter in the + content-type header for multipart + documents).
    However, you should not + depend on automatic behaviors but should fill in + as much detail as possible before generating data. +

    +
    +
    + + setContent: + newContent + + Sets a new value for the content of the document. + + + + setContent: + newContent + type: + type + + Convenience method calling + + -setContent:type:name: + + to set document content and type with a + nil value for name... useful for + top-level documents rather than parts within a + document (parts should really be named). + + + + setContent: + newContent + type: + type + name: + name + +

    + Convenience method to set the content of the + document along with creating a content-type + header for it. +

    +

    + The type parameter may be a simple common + content type (text, multipart, or + application), in which case the default + subtype for that type is used. + Alternatively it may be full detail of a + content type header value, which will + be parsed into 'type', 'subtype' and 'parameters'. +
    NB. In this case, if the parsed data + contains a 'name' parameter and the + name argument is non-nil, the argument + value will override the parsed value. +

    +

    + You can get the same effect by calling + + -setContent: + + to set the document content, then creating a + GSMimeHeader + instance, initialising it with the content + type information you want using + [GSMimeHeader -initWithName:value:parameters:], and calling the -setHeader: method to attach it to the document. +

    +

    + Using this method imposes a few extra checks and + restrictions on the combination of content + and type/subtype you may use... so you may want to + use the more primitive methods in order to bypass + these checks if you are using unusual + type/subtype information or if you need to + provide additional parameters in the header. +

    +
    +
    + + setContentType: + newType + +

    + Convenience method to set the content type of + the document without altering any content. The + supplied newType may be full type + information including subtype and parameters + as found after the colon in a mime Content-Type + header. +

    +
    +
    + + setHeader: + info + + This method may be called to set a header in the + document. Any other headers with the same name + will be removed from the document. + + + + setHeader: + name + value: + value + parameters: + parameters + + Convenience method to create a new header and + add it to the receiver replacing any existing header of + the same name.
    Returns the newly + created header.
    See + [GSMimeHeader -initWithName:value:parameters:] and -setHeader: methods. +
    +
    +
    +
    + + + Software documentation for the GSMimeHeader class + + + GNUstepBase/GSMime.h + NSCopying + + Description forthcoming. + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + headerWithName: + n + value: + v + parameters: + p + + Description forthcoming. + + + + makeQuoted: + v + always: + flag + + Makes the value into a quoted string if necessary (ie + if it contains any special / non-token characters). If + flag is YES then the value is + made into a quoted string even if it does not contain + special characters. + + + + makeToken: + t + + Convert the supplied string to a standardized token + by making it lowercase and removing all illegal + characters. + + + + makeToken: + t + preservingCase: + preserve + + Convert the supplied string to a standardized token + by removing all illegal characters. If + preserve is NO then the + result is converted to lowercase.
    Returns an + autoreleased (and possibly modified) copy of + the original. +
    +
    + + copyWithZone: + z + + Description forthcoming. + + + + estimatedSize + + How big this header might be when represented as raw + MIME data. + + + + fullValue + + Returns the full value of the header including any + parameters and preserving case. This is an + unfolded (long) line with no + escape sequences (ie contains a unicode string not + necessarily plain ASCII).
    If you just + want the plain value excluding any parameters, use the + + -value + + method instead. +
    +
    + + initWithName: + n + value: + v + + Convenience method calling + + -initWithName:value:parameters: + + with the supplied argument and nil + parameters. + + + + initWithName: + n + value: + v + parameters: + p + + Initialise a GSMimeHeader supplying a name, a + value and a dictionary of any parameters occurring + after the value. + + + + name + + Returns the name of this header... a lowercase + string. + + + + namePreservingCase: + preserve + + Returns the name of this header as originally set + (without conversion to lowercase) if + preserve is YES, but as a + lowercase string if preserve is + NO. + + + + objectForKey: + k + + Return extra information specific to a particular + header type. + + + + objects + + Returns a dictionary of all the additional objects + for the header. + + + + parameterForKey: + k + + Return the named parameter value. + + + + parameters + + Returns the parameters of this header... a + dictionary whose keys are all lowercase strings, + and whose values are strings which may contain mixed + case. + + + + parametersPreservingCase: + preserve + + Returns the parameters of this header... a + dictionary whose keys are strings preserving the + case originally used to set the values or all + lowercase depending on the preserve + argument. + + + + rawMimeData + + Returns the full text of the header, built from its + component parts, and including a terminating + CR-LF + + + + rawMimeDataPreservingCase: + preserve + + Description forthcoming. + + + + rawMimeDataPreservingCase: + preserve + foldedAt: + fold + + Returns the full text of the header, built from its + component parts, and including a terminating + CR-LF.
    If preserve is + YES then we attempt to build the text + using the same case as it was originally parsed/set + from, otherwise we use common conventions of + capitalising the header names and using + lowercase parameter names.
    If + fold is greater than zero, lines with more + than the specified number of characters are considered + 'long' and are folded into multiple lines. +
    +
    + + rawMimeDataPreservingCase: + preserve + foldedAt: + fold + to: + md + + Description forthcoming. + + + + setObject: + o + forKey: + k + + Method to store specific information for particular + types of header. This is used for non-standard parts + of headers.
    Setting a nil value for + o will remove any existing value set using + the k as its key. +
    +
    + + setParameter: + v + forKey: + k + + Sets a parameter of this header... converts name to + lowercase and removes illegal characters.
    + If a nil parameter name is supplied, + removes any parameter with the specified key. +
    +
    + + setParameters: + d + + Sets all parameters of this header... converts names + to lowercase and removes illegal characters from them. + + + + setValue: + s + + Sets the value of this header (without changing + parameters).
    If given a + nil argument, set an empty string + value. +
    +
    + + text + + Returns the full text of the header, built from its + component parts, and including a terminating + CR-LF + + + + value + + Returns the value of this header (excluding any + parameters).
    Use the + + -fullValue + + method if you want parameter included. +
    +
    +
    +
    + + + Software documentation for the GSMimeParser class + + + GNUstepBase/GSMime.h + +

    + This class provides support for parsing MIME messages + into GSMimeDocument objects. Each parser object + maintains an associated document into which data + is stored. +

    +

    + You supply the document to be parsed as one or more + data items passed to the + + -parse: + + method, and (if the method always returns + YES, you give it a final + nil argument to mark the end of the + document. +

    +

    + On completion of parsing a valid document, the + [GSMimeParser -mimeDocument] method returns the resulting parsed document. +

    +

    + If you need to parse faulty documents (eg where a faulty + mail client has produced an email which does not + conform to the MIME standards), you should look at + the + + -setBuggyQuotes: + + and + + -setDefaultCharset: + + methods, which are designed to cope with the most + common faults. +

    +
    + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + documentFromData: + mimeData + + Convenience method to parse a single data item + as a MIME message and return the resulting document. + + + + mimeParser + + Create and return a parser. + + + + contextFor: + info + + Return a coding context object to be used for + decoding data according to the scheme specified in + the header. +

    + The default implementation supports the following + transfer encodings specified in either a + transfer-encoding of + content-transfer-encoding header - +

    + + base64 quoted-printable + binary (no coding actually performed) + 7bit (no coding actually performed) + 8bit (no coding actually performed) + chunked (for HTTP/1.1) + x-uuencode + + To add new coding schemes to the parser, you need to + override this method to return a new coding + context for your scheme when the info + argument indicates that this is appropriate. +
    +
    + + data + + Return the data accumulated in the parser. If the + parser is still parsing headers, this will be the + header data read so far. If the parse has parsed the + body of the message, this will be the data of the + body, with any transfer encoding removed. + + + + decodeData: + sData + fromRange: + aRange + intoData: + dData + withContext: + con + +

    + Decodes the raw data from the specified range in + the source data object and appends it to the + destination data object. The context object + provides information about the content encoding + type in use, and the state of the decoding + operation. +

    +

    + This method may be called repeatedly to + incrementally decode information as it + arrives on some communications channel. It should + be called with a nil source data item (or + with the atEnd flag of the context set to + YES) in order to flush any + information held in the context to the output + data object. +

    +

    + You may override this method in order to implement + additional coding schemes, but usually it + should be enough for you to implement a custom + GSMimeCodingContext subclass fotr + this method to use. +

    + Correct the size of the output buffer (shrink back + from the original allocation to the actual unchunked + size). +
    +
    + + excess + + If there was more data passed to the parser than + actually needed to form the document, this method + returns that excess data, othrwise it returns + nil. + + + + expectNoHeaders + + This method may be called to tell the parser that it + should not expect to parse any headers, and that the + data it will receive is body data.
    If the parse + is already in the body, or is complete, this method has + no effect.
    This is for use when some other + utility has been used to parse headers, and you + have set the headers of the document owned by the + parser accordingly. You can then use the + GSMimeParser to read the body data into the + document. +
    +
    + + isComplete + + Returns YES if the document parsing is + known to be completed successfully. Returns + NO if either more data is needed, or if + the parser encountered an error. + + + + isHttp + + Returns YES if the parser is parsing + an HTTP document rather than a true MIME document. + + + + isInBody + + Returns YES if all the document + headers have been parsed but the document body + parsing may not yet be complete. + + + + isInHeaders + + Returns YES if parsing of the document + headers has not yet been completed. + + + + mimeDocument + + Returns the GSMimeDocument instance into which data + is being parsed or has been parsed. + + + + parse: + d + +

    + This method is called repeatedly to pass raw mime + data into the parser. It returns YES as + long as it wants more data to + complete parsing of a document, and + NO if parsing is complete, either due + to having reached the end of a document or due to an + error. +

    +

    + Since it is not always possible to determine if the + end of a MIME document has been reached from its + content, the method may need to be called with a + nil or empty argument after you have + passed all the data to it... this tells it that + the data is complete. +

    +

    + The parser attempts to be as flexible as possible and + to continue parsing wherever it can. If an error + occurs in parsing, the + + -isComplete + + method will always return NO, even + after the + + -parse: + + method has been called with a nil + argument. +

    +

    + A multipart document will be parsed to content + consisting of an NSArray of GSMimeDocument + instances representing each part.
    + Otherwise, a document will become content of + type NSData, unless it is of content type + text, in which case it will be an NSString. +
    If a document has no content type + specified, it will be treated as text + , unless it is identifiable as a file (eg. t + has a content-disposition header containing a + filename parameter). +

    +
    +
    + + parseHeader: + aHeader + +

    + This method is called to parse a header line + for the current document, split its + contents into a GSMimeHeader object, and add + that information to the document.
    The method + is normally used internally by the + + -parse: + + method, but you may also call it to parse an + entire header line and add it to the document + (this may be useful in conjunction with the + + -expectNoHeaders + + method, to parse a document body data into a + document where the headers are available from a + separate source). +

    + + GSMimeParser *parser = [GSMimeParser mimeParser]; + + [parser parseHeader: @"content-type: text/plain"]; + [parser expectNoHeaders]; + [parser parse: bodyData]; + [parser parse: nil]; + +

    + The standard implementation of this method scans the + header name and then calls + + -scanHeaderBody:into: + + to complete the parsing of the header. +

    +

    + This method also performs consistency checks on + headers scanned so it is recommended that it is + not overridden, but that subclasses override + + -scanHeaderBody:into: + + to implement custom scanning. +

    +

    + As a special case, for HTTP support, this method also + parses lines in the format of HTTP responses as if + they were headers named http. The + resulting header object contains additional + object values - +

    + + HttpMajorVersion + The first part of the version number + HttpMinorVersion + The second part of the version number + NSHTTPPropertyServerHTTPVersionKey + The full HTTP protocol version number + NSHTTPPropertyStatusCodeKey + The HTTP status code (numeric) + NSHTTPPropertyStatusReasonKey + + The text message (if any) after the status code + + +
    +
    + + parseHeaders: + d + remaining: + body + + Parses headers from the supplied data returning + YES if more data is needed before the + end of thge headers are reached.
    If + body is not NULL and the end of the + headers were reached leaving some unused data, that + remaining data is returned.
    NB. The + returned data is a reference to part of the + original memory buffer provided in d, + so you must copy it if you intend to use it after + modifying or deallocating the original data. +
    +
    + + scanHeaderBody: + scanner + into: + info + +

    + This method is called to parse a header line and + split its contents into the supplied + GSMimeHeader + instance. +

    +

    + On entry, the header (info) is already + partially filled, the name is a lowercase + representation of the header name. The + the scanner must be set to a scan + location immediately after the colon in the + original header string (ie to the header value + string). +

    +

    + If the header is parsed successfully, the method + should return YES, otherwise + NO. +

    +

    + You would not normally call this method directly + yourself, but may override it to support + parsing of new headers.
    If you do call + this yourself, you need to be aware that it may + change the state of the document in the parser. +

    +

    + You should be aware of the parsing that the + standard implementation performs, and that + needs to be done for certain headers in + order to permit the parser to work generally - +

    + + content-disposition + + + Value + + The content disposition (excluding + parameters) as a lowercase string. + + + + content-type + + + Subtype + The MIME subtype lowercase + Type + The MIME type lowercase + value + + The full MIME type (xxx/yyy) in lowercase + + + + content-transfer-encoding + + + Value + + The transfer encoding type in lowercase + + + + http + + + HttpVersion + + The HTTP protocol version number + + HttpMajorVersion + + The first component of the version number + + HttpMinorVersion + + The second component of the version number + + HttpStatus + + The response status value (numeric code) + + Value + The text message (if any) + + + transfer-encoding + + + Value + + The transfer encoding type in lowercase + + + + +
    +
    + + scanName: + scanner + + A convenience method to use a scanner (that is + set up to scan a header line) to scan a name - a simple + word. + + Leading whitespace is ignored. + + + + + scanPastSpace: + scanner + + A convenience method to scan past any whitespace in the + scanner in preparation for scanning + something more interesting that comes after it. + Returns YES if any space was read, + NO otherwise. + + + + scanSpecial: + scanner + + A convenience method to use a scanner (that is + set up to scan a header line) to scan in a special + character that terminated a token previously + scanned. If the token was terminated by whitespace + and no other special character, the string returned + will contain a single space character. + + + + scanToken: + scanner + + A convenience method to use a scanner (that is + set up to scan a header line) to scan a header token - + either a quoted string or a simple word. + + Leading whitespace is ignored. + + Backslash escapes in quoted text are + converted + + + + + + setBuggyQuotes: + flag + + Method to inform the parser that the data it is + parsing is likely to contain fields with buggy use + of backslash quotes... and it should try to be tolerant + of them and treat them as is they were escaped + backslashes. This is for use with things like + microsoft internet explorer, which puts the + backslashes used as file path separators in + parameters without quoting them. + + + + setDefaultCharset: + aName + + This is a method to inform the parser that body parts + with no content-type header (which are treated as + text/plain) should use the specified + characterset rather than the default + (us-ascii).
    This also controls the + parsing of headers... in a legal MIME document + these must consist solely of us-ascii characters, but + setting a different default characterset (such as + latin1) will permit many illegal header lines + (produced by faulty mail clients) to be parsed. +
    HTTP requests use headers in the latin1 + characterset, so this is the header line + characterset used most commonly by faulty + clients. +
    +
    + + setHeadersOnly + + Method to inform the parser that only the headers + should be parsed and any remaining data be treated + as excess + + + + setIsHttp + + Method to inform the parser that the data it is + parsing is an HTTP document rather than true MIME. + This method is called internally if the parser detects + an HTTP response line at the start of the headers it is + parsing. + + +
    +
    + + + Software documentation for the GSMimeSMTPClient class + + + GNUstepBase/GSMime.h + + The GSMimeSMTPClient class provides the ability to send + EMails ([GSMimeDocument] instances) via an SMTP + server. + + + abort + + Shut down any message send in progress and abort any + queued messages. + + + + delegate + + Returns the current delegate. + + + + flush: + limit + + Tries to flush any queued messages to the SMTP + server, completing by the specified + limit date.
    If limit is + nil then a date in the distant future + is used.
    If the queue is emptied in time, this + method returns YES, otherwise it + returns NO. +
    +
    + + lastError + + Returns the last error encountered, or + nil if there is none recorded. + + + + queueSize + + Returns the number of messages currently in the + queue. + + + + send: + message + + Add the message to the queue of emails to be + sent by the receiver. + + + + send: + message + envelopeID: + envid + + Add the message to the queue of emails to be + sent by the receiver.
    Also adds an envelope ID + string to be used to uniquely identify the + message for delivery receipting purposes. +
    For this to work, the SMTP gateway being used + must support the SMTP service extension for delivery + status notification (RFC 3460). +
    +
    + + setDelegate: + d + + Set the delegate to receive callback methods indicating + when a message is sent, failed, or removed from the + queue unsent. + + + + setHostname: + s + + Set the host for the SMTP server. If this is not set + (or is set to nil) then the + GSMimeSMTPClientHost user default is + used. If the host is nil or an empty + string then 'localhost' is used. + + + + setIdentity: + s + + Set the host for the SMTP client to identify itsself to + the server. If this is not set (or is set to + nil) then the GSMimeSMTPClientIdentity + user default is used. If the identity is + nil or an empty string then a name of + the current host is use. + + + + setMaximum: + m + + Sets the maximum number of messages which may remain + in the queue. If this is exceeded then any unsuccessful + send attempt results in excess queued messages + discarded as unsent.
    The method returns + the previous setting. +
    +
    + + setOriginator: + s + + Set the originator for any emails sent by the SMTP + client.
    This overrides the value in the + 'from' header of an email.
    If this is not set + (or is set to nil) then the + GSMimeSMTPClientOriginator user + default is used. If the originator is + nil or an empty string then the value + in the 'from' header of the email is used. +
    +
    + + setPort: + s + + Set the port for the SMTP server. If this is not set + (or is set to nil) then the + GSMimeSMTPClientPort user default is + used. If the port is not an integer in the 1-65535 + range, then '25' (the default SMTP port) is used. + + + + setUsername: + s + + Set the username for authentication to the SMTP server. + If this is not set (or is set to nil) then + the GSMimeSMTPClientUsername user default is used. If + the username is nil or an empty string + then authentication is not attempted. + + + + state + + returns the receivers current state. + + + + stateDesc + + Returns a string describing the receiver's current + state + + +
    +
    + + + Software documentation for the GSMimeSerializer class + + + GNUstepBase/GSMime.h + NSCopying + + Instances of the GSMimeSerializer class are used to + serialise GSMimeDocument objects to NSMutableData + objects, producing data in a form suitable for + sending as an Email over the SMTP protocol or in + other forms. + + + + To make 8bit data 7bit-safe + + + + + Fold long lines at this position + + + + + To make 8bit text 7bit-safe + + + + + Output does not need to be 7bit-safe + + + + binarySerializer + + Returns an autorelease GSMimeSerializer configured + for transfer over binary safe protocols with unliumited + line lenth). + + + + smtp7bitSerializer + + Returns an autorelease GSMimeSerializer configured + for Email to be sent as 7bit data over SMTP. + + + + copyWithZone: + aZone + + Returns a copy of the receiver. + + + + dataEncoding + + Returns the default content transfer encoding used + when 8bit data needs to be made 7bit safe. This is + base64 by default. + + + + encodeDocument: + document + + Encodes the document and returns the + resulting raw mime data. + + + + encodePart: + document + to: + md + + Appends a document part to the supplied + data object. + + + + foldAt + + Returns the maximum line length (excluding the + trailing CRLF) to which we will encode data. See + also the + + -setFoldAt: + + method. + + + + setDataEncoding: + encoding + + Sets the content transfer encoding used + when 8bit data needs to be sent in a 7bit safe form. +
    Setting a nil/empty encoding + reverts to the default (base64).
    Setting an + unknown/inapplicable + encoding raises an exception. +
    +
    + + setFoldAt: + position + + This method allows you to control the + position at which lines in headers and the + body data are wrapped.
    RFC 2822 says that the + absolute maximum (except for 'binary' content + transfer encoding) is 998 (excluding CRLF), but + the recommended maximum is 78 so we use that by + default.
    Setting any ridiculously + short value (less than 20) or an + excessively long value + (greater than the 998 character limit supported by + SMTP) actually sets a value of zero, meaning that + there is no limit. +
    +
    + + setTextEncoding: + encoding + + Sets the content transfer encoding used + when 8bit text needs to be sent in a 7bit safe form. +
    Setting a nil/empty encoding + reverts to the default (quoted-printable).
    + Setting an unknown/inapplicable encoding + raises an exception. +
    +
    + + setUse8bit: + aFlag + + Sets whether we will allow 8bit data in the output. +
    The default is NO (because 8bit + data breaks some mail transfer agents). +
    +
    + + textEncoding + + Returns the default content transfer encoding used + when 8bit text needs to be made 7bit safe. This is + quoted-printable by default. + + + + use8bit + + Returns YES is we will allow 8bit data + in the output, NO if we encode everything + in a 7bit safe form. + + +
    +
    + + + Software documentation for the + NSObject(GSMimeSMTPClient) category + + + GNUstepBase/GSMime.h + + Informal protocol for delegates of the + GSMimeSMTPClient class. The default + implementations of these methods do nothing. + + + smtpClient: + client + mimeFailed: + doc + + Description forthcoming. + + + + smtpClient: + client + mimeSent: + doc + + Description forthcoming. + + + + smtpClient: + client + mimeUnsent: + doc + + Description forthcoming. + + + + + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSMime.html b/resources/documentation/Developer/BaseAdditions/Reference/GSMime.html index cde4654..57fa960 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/GSMime.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSMime.html @@ -16,9 +16,8 @@

    Authors

    -

    Version: 38957

    -

    Date: 2015-08-30 04:50:59 -0600 (Sun, 30 Aug 2015)

    -

    Copyright: (C) 2000 Free Software Foundation, Inc.

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    +

    Copyright: (C) 2000-2016 Free Software Foundation, Inc.


    @@ -44,7 +43,10 @@

    Contents -

    Software documentation for the GSMimeSMTPClient class
  • - Software documentation for the + Software documentation for the GSMimeSerializer class +
  • +
  • + Software documentation for the NSObject(GSMimeSMTPClient) category
  • @@ -113,9 +115,9 @@

    GSMimeCodingContext : NSObject



    Method summary
    @@ -133,7 +135,7 @@

    atEnd 

    decodeData: length: intoData: 

    - - (BOOL) decodeData: (const void*)sData length: (NSUInteger)length intoData: (NSMutableData*)dData;
    + - (BOOL) decodeData: (const void*)sData length: (NSUInteger)length intoData: (NSMutableData*)dData;
    Availability: Not in OpenStep/MacOS-X

    @@ -225,53 +227,69 @@

    GSMimeDocument : NSObject



    Method summary
    +
    +

    charsetForXml: 

    + + (NSString*) charsetForXml: (id)xml;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    documentWithContent: type: name: 

    - + (GSMimeDocument*) documentWithContent: (id)newContent type: (NSString*)type name: (NSString*)name;
    + + (GSMimeDocument*) documentWithContent: (id)newContent type: (NSString*)type name: (NSString*)name;
    Availability: Not in OpenStep/MacOS-X

    @@ -357,7 +375,7 @@

    documentWithC document using the specified content, type, and name value. This calls the - + -setContent:type:name: @@ -399,13 +417,13 @@

    encodeBase64String:  Converts the ASCII or UTF8 string source into base64 encoded data using the - + +encodeBase64: method. If the original data is not an ASCII or UTF8 string, you should use the - + +encodeBase64: @@ -432,12 +450,12 @@

    encodingFromCharset:&nb correct.
    The correspondence between charsets and encodings is not a direct one to one mapping, so successive calls to -
    + +encodingFromCharset: and - + +charsetFromEncoding: @@ -461,7 +479,7 @@

    addContent: 

    addHeader: 

    - - (void) addHeader: (GSMimeHeader*)info;
    + - (void) addHeader: (GSMimeHeader*)info;
    Availability: Not in OpenStep/MacOS-X

    @@ -504,7 +522,7 @@

    addHeader: 

    addHeader: value: parameters: 

    - - (GSMimeHeader*) addHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    + - (GSMimeHeader*) addHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    Availability: Not in OpenStep/MacOS-X

    @@ -513,8 +531,8 @@

    addHeader:  Convenience method to create a new header and add it to the receiver.
    Returns the newly created header.
    See -
    [GSMimeHeader -initWithName:value:parameters:] - and -addHeader: + [GSMimeHeader -initWithName:value:parameters:] + and -addHeader: methods.

    @@ -582,12 +600,12 @@

    content 

    If you want to be sure that you get a particular type of data, use the - + -convertToData or - + -convertToText @@ -661,7 +679,8 @@

    contentFile 

    Convenience method to fetch the content file - name from the header. + name from the content-type or content-disposition + header.

    @@ -755,18 +774,18 @@

    contentsByName: 

    -

    convertToBase64 

    - - (void) convertToBase64;
    +

    convertTo7BitSafe 

    + - (void) convertTo7BitSafe;
    Availability: Not in OpenStep/MacOS-X

    Converts any binary parts of the receiver's - content to be base64 encoded rather than 8bit or - binary encoded... a convenience method to make the - results of the - + content to be base64 (or quoted-printable for text + parts) encoded rather than 8bit or binary encoded... + a convenience method to make the results of the + -rawMimeData @@ -776,6 +795,19 @@

    convertToBase64 

    +
    +

    convertToBase64 

    + - (void) convertToBase64;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    convertToBinary 

    - (void) convertToBinary;
    @@ -784,11 +816,11 @@

    convertToBinary 
    - Converts any base64 encoded parts of the - receiver's content to be binary encoded instead - ... a convenience method to shrink down the size of the - message when converted to data using the - + Converts any base64 (or quoted-printable) encoded + parts of the receiver's content to be binary encoded + instead... a convenience method to shrink down the + size of the message when converted to data using the + -rawMimeData @@ -846,7 +878,7 @@

    copyWithZone: 

    deleteContent: 

    - - (void) deleteContent: (GSMimeDocument*)aPart;
    + - (void) deleteContent: (GSMimeDocument*)aPart;
    Availability: Not in OpenStep/MacOS-X

    @@ -862,7 +894,7 @@

    deleteContent: 

    deleteHeader: 

    - - (void) deleteHeader: (GSMimeHeader*)aHeader;
    + - (void) deleteHeader: (GSMimeHeader*)aHeader;
    Availability: Not in OpenStep/MacOS-X

    @@ -888,9 +920,23 @@

    deleteHeaderNamed: <


    +
    +

    estimatedSize 

    + - (NSUInteger) estimatedSize;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + How big this document might be when represented as raw + MIME data. + +
    +
    +

    headerNamed: 

    - - (GSMimeHeader*) headerNamed: (NSString*)name;
    + - (GSMimeHeader*) headerNamed: (NSString*)name;
    Availability: Not in OpenStep/MacOS-X

    @@ -963,7 +1009,7 @@

    makeBoundary 

    makeContentID 

    - - (GSMimeHeader*) makeContentID;
    + - (GSMimeHeader*) makeContentID;
    Availability: Not in OpenStep/MacOS-X

    @@ -981,14 +1027,14 @@

    makeContentID 

    makeHeader: value: parameters: 

    - - (GSMimeHeader*) makeHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    + - (GSMimeHeader*) makeHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    Availability: Not in OpenStep/MacOS-X

    Deprecated... use - + -setHeader:value:parameters: @@ -998,7 +1044,7 @@

    makeHeader:&nbs

    makeMessageID 

    - - (GSMimeHeader*) makeMessageID;
    + - (GSMimeHeader*) makeMessageID;
    Availability: Not in OpenStep/MacOS-X

    @@ -1025,7 +1071,7 @@

    rawMimeData 

    Return an NSData object representing the MIME document as raw data ready to be sent via an email system.
    Calls - + -rawMimeData: @@ -1076,7 +1122,7 @@

    rawMimeData: 

    rawMimeData: foldedAt: 

    - - (NSMutableData*) rawMimeData: (BOOL)isOuter foldedAt: (NSUInteger)fold;
    + - (NSMutableData*) rawMimeData: (BOOL)isOuter foldedAt: (NSUInteger)fold;
    Availability: Not in OpenStep/MacOS-X

    @@ -1154,7 +1200,7 @@

    setContent: type: 
    Convenience method calling - + -setContent:type:name: @@ -1207,17 +1253,17 @@

    setContent: type:

    You can get the same effect by calling - + -setContent: to set the document content, then creating a - GSMimeHeader + GSMimeHeader instance, initialising it with the content type information you want using - [GSMimeHeader -initWithName:value:parameters:] -, and calling the -setHeader: + [GSMimeHeader -initWithName:value:parameters:] +, and calling the -setHeader: method to attach it to the document.

    @@ -1267,7 +1313,7 @@

    setContentType: 

    setHeader: 

    - - (void) setHeader: (GSMimeHeader*)info;
    + - (void) setHeader: (GSMimeHeader*)info;
    Availability: Not in OpenStep/MacOS-X

    @@ -1282,7 +1328,7 @@

    setHeader: 

    setHeader: value: parameters: 

    - - (GSMimeHeader*) setHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    + - (GSMimeHeader*) setHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    Availability: Not in OpenStep/MacOS-X

    @@ -1292,8 +1338,8 @@

    setHeader:  add it to the receiver replacing any existing header of the same name.
    Returns the newly created header.
    See -
    [GSMimeHeader -initWithName:value:parameters:] - and -setHeader: + [GSMimeHeader -initWithName:value:parameters:] + and -setHeader: methods.

    @@ -1369,32 +1415,47 @@

    GSMimeHeader : NSObject



    Method summary
    +
    +

    headerWithName: value: parameters: 

    + + (GSMimeHeader*) headerWithName: (NSString*)n value: (NSString*)v parameters: (NSDictionary*)p;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    makeQuoted: always: 

    + (NSString*) makeQuoted: (NSString*)v always: (BOOL)flag;
    @@ -1458,6 +1519,20 @@

    copyWithZone: 


    +
    +

    estimatedSize 

    + - (NSUInteger) estimatedSize;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + How big this header might be when represented as raw + MIME data. + +
    +
    +

    fullValue 

    - (NSString*) fullValue;
    @@ -1472,7 +1547,7 @@

    fullValue 

    escape sequences (ie contains a unicode string not necessarily plain ASCII).
    If you just want the plain value excluding any parameters, use the - + -value @@ -1490,7 +1565,7 @@

    initWithName: value:&

    rawMimeDataPreservingCase: foldedAt: 

    - - (NSMutableData*) rawMimeDataPreservingCase: (BOOL)preserve foldedAt: (NSUInteger)fold;
    + - (NSMutableData*) rawMimeDataPreservingCase: (BOOL)preserve foldedAt: (NSUInteger)fold;
    Availability: Not in OpenStep/MacOS-X

    @@ -1673,22 +1748,14 @@

    rawMimeDat

    -

    setName: 

    - - (void) setName: (NSString*)s;
    +

    rawMimeDataPreservingCase: foldedAt: to: 

    + - (void) rawMimeDataPreservingCase: (BOOL)preserve foldedAt: (NSUInteger)fold to: (NSMutableData*)md;
    Availability: Not in OpenStep/MacOS-X

    - Sets the name of this header... and removes illegal - characters.
    If given a nil - or empty string argument, sets the name to 'unknown'. -
    NB. The value returned by the - - -name - - - method will be a lowercase version of thae name. + Description forthcoming.

    @@ -1749,8 +1816,9 @@

    setValue: 

    Sets the value of this header (without changing - parameters)
    If given a nil - argument, set an empty string value. + parameters).
    If given a + nil argument, set an empty string + value.

    @@ -1780,17 +1848,28 @@

    value 

    Returns the value of this header (excluding any parameters).
    Use the - + -fullValue - m,ethod if you want parameter included. + method if you want parameter included.



    Instance Variables for GSMimeHeader Class

    +

    lower

    + @protected NSString* lower;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +

    name

    @protected NSString* name;
    @@ -1869,7 +1948,7 @@

    GSMimeParser : NSObject

    You supply the document to be parsed as one or more data items passed to the - + -parse: @@ -1885,7 +1964,7 @@

    GSMimeParser : NSObject

    On completion of parsing a valid document, the - [GSMimeParser -mimeDocument] + [GSMimeParser -mimeDocument] method returns the resulting parsed document.

    @@ -1898,12 +1977,12 @@

    GSMimeParser : NSObject

    mail client has produced an email which does not conform to the MIME standards), you should look at the - + -setBuggyQuotes: and - + -setDefaultCharset: @@ -1919,35 +1998,35 @@

    GSMimeParser : NSObject



    Method summary

    documentFromData: 

    - + (GSMimeDocument*) documentFromData: (NSData*)mimeData;
    + + (GSMimeDocument*) documentFromData: (NSData*)mimeData;
    Availability: Not in OpenStep/MacOS-X

    @@ -1961,7 +2040,7 @@

    documentFromData: <

    mimeParser 

    - + (GSMimeParser*) mimeParser;
    + + (GSMimeParser*) mimeParser;
    Availability: Not in OpenStep/MacOS-X

    @@ -1974,7 +2053,7 @@

    mimeParser 

    contextFor: 

    - - (GSMimeCodingContext*) contextFor: (GSMimeHeader*)info;
    + - (GSMimeCodingContext*) contextFor: (GSMimeHeader*)info;
    Availability: Not in OpenStep/MacOS-X

    @@ -2046,7 +2125,7 @@

    data 

    decodeData: fromRange: intoData: withContext: 

    - - (BOOL) decodeData: (NSData*)sData fromRange: (NSRange)aRange intoData: (NSMutableData*)dData withContext: (GSMimeCodingContext*)con;
    + - (BOOL) decodeData: (NSData*)sData fromRange: (NSRange)aRange intoData: (NSMutableData*)dData withContext: (GSMimeCodingContext*)con;
    Availability: Not in OpenStep/MacOS-X

    @@ -2198,7 +2277,7 @@

    isInHeaders 

    mimeDocument 

    - - (GSMimeDocument*) mimeDocument;
    + - (GSMimeDocument*) mimeDocument;
    Availability: Not in OpenStep/MacOS-X

    @@ -2252,13 +2331,13 @@

    parse: 

    The parser attempts to be as flexible as possible and to continue parsing wherever it can. If an error occurs in parsing, the - + -isComplete method will always return NO, even after the - + -parse: @@ -2306,14 +2385,14 @@

    parseHeader: 

    contents into a GSMimeHeader object, and add that information to the document.
    The method is normally used internally by the - + -parse: method, but you may also call it to parse an entire header line and add it to the document (this may be useful in conjunction with the - + -expectNoHeaders @@ -2339,7 +2418,7 @@

    parseHeader: 

    The standard implementation of this method scans the header name and then calls - + -scanHeaderBody:into: @@ -2354,7 +2433,7 @@

    parseHeader: 

    This method also performs consistency checks on headers scanned so it is recommended that it is not overridden, but that subclasses override - + -scanHeaderBody:into: @@ -2428,7 +2507,7 @@

    parseHeaders: rem

    scanHeaderBody: into: 

    - - (BOOL) scanHeaderBody: (NSScanner*)scanner into: (GSMimeHeader*)info;
    + - (BOOL) scanHeaderBody: (NSScanner*)scanner into: (GSMimeHeader*)info;
    Availability: Not in OpenStep/MacOS-X

    @@ -2440,7 +2519,7 @@

    scanHeaderBody: into This method is called to parse a header line and split its contents into the supplied - GSMimeHeader + GSMimeHeader instance.

    @@ -2963,28 +3042,28 @@

    GSMimeSMTPClient : NSObject

    The GSMimeSMTPClient class provides the ability to send - EMails - GSMimeDocument - - instances) via an SMTP server. + EMails ([GSMimeDocument] instances) via an SMTP + server.
    Method summary
    @@ -3047,9 +3126,23 @@

    lastError 


    +
    +

    queueSize 

    + - (NSUInteger) queueSize;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the number of messages currently in the + queue. + +
    +
    +

    send: 

    - - (void) send: (GSMimeDocument*)message;
    + - (void) send: (GSMimeDocument*)message;
    Availability: Not in OpenStep/MacOS-X

    @@ -3063,7 +3156,7 @@

    send: 

    send: envelopeID: 

    - - (void) send: (GSMimeDocument*)message envelopeID: (NSString*)envid;
    + - (void) send: (GSMimeDocument*)message envelopeID: (NSString*)envid;
    Availability: Not in OpenStep/MacOS-X

    @@ -3130,6 +3223,23 @@

    setIdentity: 


    +
    +

    setMaximum: 

    + - (NSUInteger) setMaximum: (NSUInteger)m;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the maximum number of messages which may remain + in the queue. If this is exceeded then any unsuccessful + send attempt results in excess queued messages + discarded as unsent.
    The method returns + the previous setting. + +
    +
    +

    setOriginator: 

    - (void) setOriginator: (NSString*)s;
    @@ -3213,6 +3323,312 @@

    stateDesc 

    + Software documentation for the GSMimeSerializer class +

    +

    GSMimeSerializer : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSMime.h
    +
    +
    +
    +
    +
    Conforms to:
    +
    NSCopying
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Instances of the GSMimeSerializer class are used to + serialise GSMimeDocument objects to NSMutableData + objects, producing data in a form suitable for + sending as an Email over the SMTP protocol or in + other forms. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    binarySerializer 

    + + (GSMimeSerializer*) binarySerializer;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns an autorelease GSMimeSerializer configured + for transfer over binary safe protocols with unliumited + line lenth). + +
    +
    +
    +
    +

    smtp7bitSerializer 

    + + (GSMimeSerializer*) smtp7bitSerializer;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns an autorelease GSMimeSerializer configured + for Email to be sent as 7bit data over SMTP. + +
    +
    +
    +
    +

    copyWithZone: 

    + - (id) copyWithZone: (NSZone*)aZone;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a copy of the receiver. + +
    +
    +
    +
    +

    dataEncoding 

    + - (NSString*) dataEncoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the default content transfer encoding used + when 8bit data needs to be made 7bit safe. This is + base64 by default. + +
    +
    +
    +
    +

    encodeDocument: 

    + - (NSMutableData*) encodeDocument: (GSMimeDocument*)document;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Encodes the document and returns the + resulting raw mime data. + +
    +
    +
    +
    +

    encodePart: to: 

    + - (void) encodePart: (GSMimeDocument*)document to: (NSMutableData*)md;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Appends a document part to the supplied + data object. + +
    +
    +
    +
    +

    foldAt 

    + - (NSUInteger) foldAt;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the maximum line length (excluding the + trailing CRLF) to which we will encode data. See + also the + + -setFoldAt: + + + method. + +
    +
    +
    +
    +

    setDataEncoding: 

    + - (void) setDataEncoding: (NSString*)encoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the content transfer encoding used + when 8bit data needs to be sent in a 7bit safe form. +
    Setting a nil/empty encoding + reverts to the default (base64).
    Setting an + unknown/inapplicable + encoding raises an exception. + +
    +
    +
    +
    +

    setFoldAt: 

    + - (void) setFoldAt: (NSUInteger)position;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method allows you to control the + position at which lines in headers and the + body data are wrapped.
    RFC 2822 says that the + absolute maximum (except for 'binary' content + transfer encoding) is 998 (excluding CRLF), but + the recommended maximum is 78 so we use that by + default.
    Setting any ridiculously + short value (less than 20) or an + excessively long value + (greater than the 998 character limit supported by + SMTP) actually sets a value of zero, meaning that + there is no limit. + +
    +
    +
    +
    +

    setTextEncoding: 

    + - (void) setTextEncoding: (NSString*)encoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the content transfer encoding used + when 8bit text needs to be sent in a 7bit safe form. +
    Setting a nil/empty encoding + reverts to the default (quoted-printable).
    + Setting an unknown/inapplicable encoding + raises an exception. + +
    +
    +
    +
    +

    setUse8bit: 

    + - (void) setUse8bit: (BOOL)aFlag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets whether we will allow 8bit data in the output. +
    The default is NO (because 8bit + data breaks some mail transfer agents). + +
    +
    +
    +
    +

    textEncoding 

    + - (NSString*) textEncoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the default content transfer encoding used + when 8bit text needs to be made 7bit safe. This is + quoted-printable by default. + +
    +
    +
    +
    +

    use8bit 

    + - (BOOL) use8bit;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns YES is we will allow 8bit data + in the output, NO if we encode everything + in a 7bit safe form. + +
    +
    +
    +

    +

    Instance Variables for GSMimeSerializer Class

    +

    dataEncoding

    + @protected NSString* dataEncoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + To make 8bit data 7bit-safe + +
    +
    +

    foldAt

    + @protected NSUInteger foldAt;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Fold long lines at this position + +
    +
    +

    textEncoding

    + @protected NSString* textEncoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + To make 8bit text 7bit-safe + +
    +
    +

    use8bit

    + @protected BOOL use8bit;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Output does not need to be 7bit-safe + +
    +
    +


    + +

    Software documentation for the NSObject(GSMimeSMTPClient) category

    @@ -3235,14 +3651,14 @@

    NSObject(GSMimeSMTPClient)

    Method summary

    smtpClient: mimeFailed: 

    - - (void) smtpClient: (GSMimeSMTPClient*)client mimeFailed: (GSMimeDocument*)doc;
    + - (void) smtpClient: (GSMimeSMTPClient*)client mimeFailed: (GSMimeDocument*)doc;
    Availability: Not in OpenStep/MacOS-X

    @@ -3255,7 +3671,7 @@

    smtpClien

    smtpClient: mimeSent: 

    - - (void) smtpClient: (GSMimeSMTPClient*)client mimeSent: (GSMimeDocument*)doc;
    + - (void) smtpClient: (GSMimeSMTPClient*)client mimeSent: (GSMimeDocument*)doc;
    Availability: Not in OpenStep/MacOS-X

    @@ -3268,7 +3684,7 @@

    smtpClient:

    smtpClient: mimeUnsent: 

    - - (void) smtpClient: (GSMimeSMTPClient*)client mimeUnsent: (GSMimeDocument*)doc;
    + - (void) smtpClient: (GSMimeSMTPClient*)client mimeUnsent: (GSMimeDocument*)doc;
    Availability: Not in OpenStep/MacOS-X

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSTLS.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/GSTLS.gsdoc new file mode 100644 index 0000000..a43c4d2 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSTLS.gsdoc @@ -0,0 +1,529 @@ + + + + + GSTLS documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2012 Free Software Foundation, Inc. + + + + + + Software documentation for the GSTLSCertificateList + class + + + GNUstepBase/GSTLS.h + + Description forthcoming. + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + listFromFile: + f + + Description forthcoming. + + + + certificateList + + Description forthcoming. + + + + count + + Description forthcoming. + + + + expiresAt + + Description forthcoming. + + + + expiresAt: + index + + Description forthcoming. + + + + + + + Software documentation for the GSTLSCredentials class + + + GNUstepBase/GSTLS.h + + Description forthcoming. + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + credentialsFromCAFile: + ca + defaultCAFile: + dca + revokeFile: + rv + defaultRevokeFile: + drv + certificateFile: + cf + certificateKeyFile: + ck + certificateKeyPassword: + cp + asClient: + client + debug: + debug + + Description forthcoming. + + + + selfSigned: + debug + + Description forthcoming. + + + + credentials + + Description forthcoming. + + + + key + + Description forthcoming. + + + + list + + Description forthcoming. + + + + trust + + Description forthcoming. + + + + + + + Software documentation for the GSTLSDHParams class + + + GNUstepBase/GSTLS.h + + Description forthcoming. + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + current + + Description forthcoming. + + + + generate + + Description forthcoming. + + + + paramsFromFile: + f + + Description forthcoming. + + + + params + + Description forthcoming. + + + + + + + Software documentation for the GSTLSObject class + + + GNUstepBase/GSTLS.h + + Description forthcoming. + + + dataForTLSFile: + fileName + + Returns either the cached data for this file name + (if any), or the result of calling + [NSData +dataWithContentsOfFile:] if there is no cached data.
    This method is used internally to load certificates and keys. +
    +
    + + setData: + data + forTLSFile: + fileName + + Sets the known (cached) data content for + the specified file name.
    Calling this with a + nil data object will remove + any existing value from the cache.
    You may use + this method to control what data is used + for specified file names. +
    +
    +
    +
    + + + Software documentation for the GSTLSPrivateKey class + + + GNUstepBase/GSTLS.h + + Description forthcoming. + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + keyFromFile: + f + withPassword: + p + + Description forthcoming. + + + + key + + Description forthcoming. + + + + + + + Software documentation for the GSTLSSession class + + + GNUstepBase/GSTLS.h + + Description forthcoming. + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + sessionWithOptions: + options + direction: + isOutgoing + transport: + ioHandle + push: + pushFunc + pull: + pullFunc + + Description forthcoming. + + + + active + + Description forthcoming. + + + + age + + Returns the age of this instance (how + long since it was created). + + + + credentials + + Description forthcoming. + + + + debug + + Description forthcoming. + + + + disconnect: + reusable + + Description forthcoming. + + + + handshake + + Description forthcoming. + + + + initWithOptions: + options + direction: + isOutgoing + transport: + ioHandle + push: + pushFunc + pull: + pullFunc + + Description forthcoming. + + + + issuer + + If the session verified a certificate from the remote + end, returns the name of the certificate issuer in the + form "C=xxxx,O=yyyy,CN=zzzz" as described in RFC4514. + Otherwise returns nil. + + + + owner + + If the session verified a certificate from the remote + end, returns the name of the certificate owner in the + form "C=xxxx,O=yyyy,CN=zzzz" as described in RFC4514. + Otherwise returns nil. + + + + pending + + Returns the number of bytes of data available to be + read from the TLS buffers (using the + + -read:length: + + method). If this returns zero the TLS software + needs to perform a network read before any more data + can be returned. + + + + problem + + Description forthcoming. + + + + read: + buf + length: + len + + Description forthcoming. + + + + sessionInfo + + Get a report of the SSL/TLS status of the current + session. + + + + verify + + Description forthcoming. + + + + write: + buf + length: + len + + Description forthcoming. + + + + + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSTLS.html b/resources/documentation/Developer/BaseAdditions/Reference/GSTLS.html new file mode 100644 index 0000000..4a7ccba --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSTLS.html @@ -0,0 +1,1087 @@ + + + + + GSTLS documentation + + + + Up +
    +

    GSTLS documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    +

    Copyright: (C) 2012 Free Software Foundation, Inc.

    + + + +

    + Software documentation for the GSTLSCertificateList + class +

    +

    GSTLSCertificateList : GSTLSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSTLS.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    listFromFile: 

    + + (GSTLSCertificateList*) listFromFile: (NSString*)f;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    certificateList 

    + - (gnutls_x509_crt_t*) certificateList;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    count 

    + - (unsigned int) count;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    expiresAt 

    + - (NSDate*) expiresAt;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    expiresAt: 

    + - (NSDate*) expiresAt: (unsigned int)index;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +

    +

    Instance Variables for GSTLSCertificateList Class

    +

    count

    + @protected unsigned int count;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    crts

    + @protected gnutls_x509_crt_t* crts;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    path

    + @protected NSString* path;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    when

    + @protected NSTimeInterval when;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSTLSCredentials class +

    +

    GSTLSCredentials : GSTLSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSTLS.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    credentialsFromCAFile: defaultCAFile: revokeFile: defaultRevokeFile: certificateFile: certificateKeyFile: certificateKeyPassword: asClient: debug: 

    + + (GSTLSCredentials*) credentialsFromCAFile: (NSString*)ca defaultCAFile: (NSString*)dca revokeFile: (NSString*)rv defaultRevokeFile: (NSString*)drv certificateFile: (NSString*)cf certificateKeyFile: (NSString*)ck certificateKeyPassword: (NSString*)cp asClient: (BOOL)client debug: (BOOL)debug;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    selfSigned: 

    + + (GSTLSCredentials*) selfSigned: (BOOL)debug;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    credentials 

    + - (gnutls_certificate_credentials_t) credentials;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    key 

    + - (GSTLSPrivateKey*) key;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    list 

    + - (GSTLSCertificateList*) list;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    trust 

    + - (BOOL) trust;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +

    +

    Instance Variables for GSTLSCredentials Class

    +

    certcred

    + @protected gnutls_certificate_credentials_t certcred;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    dhParams

    + @protected GSTLSDHParams* dhParams;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    freeCred

    + @protected BOOL freeCred;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    key

    + @protected GSTLSPrivateKey* key;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    list

    + @protected GSTLSCertificateList* list;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    name

    + @protected NSString* name;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    trust

    + @protected BOOL trust;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    when

    + @protected NSTimeInterval when;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSTLSDHParams class +

    +

    GSTLSDHParams : GSTLSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSTLS.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    current 

    + + (GSTLSDHParams*) current;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    generate 

    + + (void) generate;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    paramsFromFile: 

    + + (GSTLSDHParams*) paramsFromFile: (NSString*)f;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    params 

    + - (gnutls_dh_params_t) params;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +

    +

    Instance Variables for GSTLSDHParams Class

    +

    params

    + @protected gnutls_dh_params_t params;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    path

    + @protected NSString* path;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    when

    + @protected NSTimeInterval when;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSTLSObject class +

    +

    GSTLSObject : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSTLS.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    dataForTLSFile: 

    + + (NSData*) dataForTLSFile: (NSString*)fileName;
    +
    +Availability: OpenStep
    +
    +
    + + Returns either the cached data for this file name + (if any), or the result of calling + [NSData +dataWithContentsOfFile:] + if there is no cached data.
    This method is used internally to load certificates and keys. + +
    +
    +
    +
    +

    setData: forTLSFile: 

    + + (void) setData: (NSData*)data forTLSFile: (NSString*)fileName;
    +
    +Availability: OpenStep
    +
    +
    + + Sets the known (cached) data content for + the specified file name.
    Calling this with a + nil data object will remove + any existing value from the cache.
    You may use + this method to control what data is used + for specified file names. + +
    +
    +
    + +

    + Software documentation for the GSTLSPrivateKey class +

    +

    GSTLSPrivateKey : GSTLSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSTLS.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    keyFromFile: withPassword: 

    + + (GSTLSPrivateKey*) keyFromFile: (NSString*)f withPassword: (NSString*)p;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    key 

    + - (gnutls_x509_privkey_t) key;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +

    +

    Instance Variables for GSTLSPrivateKey Class

    +

    key

    + @protected gnutls_x509_privkey_t key;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    password

    + @protected NSString* password;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    path

    + @protected NSString* path;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    when

    + @protected NSTimeInterval when;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSTLSSession class +

    +

    GSTLSSession : GSTLSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSTLS.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    sessionWithOptions: direction: transport: push: pull: 

    + + (GSTLSSession*) sessionWithOptions: (NSDictionary*)options direction: (BOOL)isOutgoing transport: (void*)ioHandle push: (GSTLSIOW)pushFunc pull: (GSTLSIOR)pullFunc;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    active 

    + - (BOOL) active;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    age 

    + - (NSTimeInterval) age;
    +
    +Availability: OpenStep
    +
    +
    + + Returns the age of this instance (how + long since it was created). + +
    +
    +
    +
    +

    credentials 

    + - (GSTLSCredentials*) credentials;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    debug 

    + - (BOOL) debug;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    disconnect: 

    + - (BOOL) disconnect: (BOOL)reusable;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    handshake 

    + - (BOOL) handshake;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    initWithOptions: direction: transport: push: pull: 

    + - (id) initWithOptions: (NSDictionary*)options direction: (BOOL)isOutgoing transport: (void*)ioHandle push: (GSTLSIOW)pushFunc pull: (GSTLSIOR)pullFunc;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    issuer 

    + - (NSString*) issuer;
    +
    +Availability: OpenStep
    +
    +
    + + If the session verified a certificate from the remote + end, returns the name of the certificate issuer in the + form "C=xxxx,O=yyyy,CN=zzzz" as described in RFC4514. + Otherwise returns nil. + +
    +
    +
    +
    +

    owner 

    + - (NSString*) owner;
    +
    +Availability: OpenStep
    +
    +
    + + If the session verified a certificate from the remote + end, returns the name of the certificate owner in the + form "C=xxxx,O=yyyy,CN=zzzz" as described in RFC4514. + Otherwise returns nil. + +
    +
    +
    +
    +

    pending 

    + - (size_t) pending;
    +
    +Availability: OpenStep
    +
    +
    + + Returns the number of bytes of data available to be + read from the TLS buffers (using the + + -read:length: + + + method). If this returns zero the TLS software + needs to perform a network read before any more data + can be returned. + +
    +
    +
    +
    +

    problem 

    + - (NSString*) problem;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    read: length: 

    + - (NSInteger) read: (void*)buf length: (NSUInteger)len;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    sessionInfo 

    + - (NSString*) sessionInfo;
    +
    +Availability: OpenStep
    +
    +
    + + Get a report of the SSL/TLS status of the current + session. + +
    +
    +
    +
    +

    verify 

    + - (int) verify;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    write: length: 

    + - (NSInteger) write: (const void*)buf length: (NSUInteger)len;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +

    +

    Instance Variables for GSTLSSession Class

    +

    active

    + @protected BOOL active;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    created

    + @protected NSTimeInterval created;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    credentials

    + @protected GSTLSCredentials* credentials;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    debug

    + @protected BOOL debug;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    handle

    + @protected void* handle;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    handshake

    + @protected BOOL handshake;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    issuer

    + @protected NSString* issuer;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    opts

    + @protected NSDictionary* opts;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    outgoing

    + @protected BOOL outgoing;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    owner

    + @protected NSString* owner;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    problem

    + @protected NSString* problem;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    session

    + @public gnutls_session_t session;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    setup

    + @protected BOOL setup;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSXML.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/GSXML.gsdoc new file mode 100644 index 0000000..787fa29 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSXML.gsdoc @@ -0,0 +1,2510 @@ + + + + + The XML and HTML parsing system + + + mishel@berest.dp.ua + + + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2000-2005 Free Software Foundation, Inc. + + + + + The XML and HTML parsing system +

    + The GNUstep XML parser is a collection Objective-C classes + wrapping the C XML parsing library (libxml). +

    +

    + The underlying C library handles high performance parsing, + while the ObjectiveC classes provide ease of + use/integration. +

    +
    + + + Software documentation for the GSHTMLParser class + + + GNUstepBase/GSXML.h + + The GSHTMLParser class is a simple subclass of + GSXMLParser which should parse reasonably well + formed HTML documents. If you wish to parse XHTML + documents, you should use GSXMLParser... the + GSHTMLParser class is for older 'legacy' + documents. + + + + + + Software documentation for the GSHTMLSAXHandler class + + + GNUstepBase/GSXML.h + + You may create a subclass of this class to handle + incremental parsing of html documents... this is + provided for handling legacy documents, as modern + html documents should use xhtml, and for those you + should simply subclass + GSSAXHandler + + + + + + Software documentation for the GSSAXHandler class + + + GNUstepBase/GSXML.h + +

    + XML SAX Handler. +

    +

    + GSSAXHandler is a callback-based interface to + the + GSXMLParser + which operates in a similar (though not identical) + manner to SAX. +

    +

    + Each GSSAXHandler object is associated with a + GSXMLParser object. As parsing progresses, + the methods of the GSSAXHandler are invoked by the + parser, so the handler is able to deal with the + elements and entities being parsed. +

    +

    + The callback methods in the GSSAXHandler class do + nothing - it is intended that you subclass + GSSAXHandler and override them. +

    +

    + If you create a GSXMLParser passing nil + as the GSSAXHandler, the parser will parse data to + create a + GSXMLDocument + instance which you can then examine as a whole + ... this is generally the preferred mechanism for + parsing as it permits the parser to validate + the parsed document againts a DTD, and your + software can then examine the document secure + in the knowledge that it contains the expected + structure. Use of a GSSAXHandler is + preferred for very large documents with + simple structure... in which case incremental + parsing is more efficient. +

    +
    + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + handler + + Create a new SAX handler. + + + + attribute: + name + value: + value + +
    Handle an attribute that has been read by the + parser. +
    +
    + + attributeDecl: + nameElement + name: + name + type: + type + typeDefValue: + defType + defaultValue: + value + +
    An attribute definition has been parsed. +
    +
    + + cdataBlock: + value + +
    Called when a cdata block has been parsed. +
    +
    + + characters: + name + +
    Receiving some chars from the parser. +
    +
    + + comment: + value + +
    A comment has been parsed. +
    +
    + + elementDecl: + name + type: + type + +
    An element definition has been parsed. +
    +
    + + endDocument + +
    Called when the document end has been + detected. +
    +
    + + endElement: + elementName + +
    Called when a closing tag has been processed. +
    +
    + + endElement: + elementName + prefix: + prefix + href: + href + +
    Called when a closing tag has been processed. +
    +
    + + entityDecl: + name + type: + type + public: + publicId + system: + systemId + content: + content + +
    An entity definition has been parsed. +
    +
    + + error: + e + + Called when an error message needs to be output. + + + + error: + e + colNumber: + colNumber + lineNumber: + lineNumber + + Called when an error message needs to be output. + + + + externalSubset: + name + externalID: + externalID + systemID: + systemID + + Called to find out whether there is an external + subset. + + + + fatalError: + e + + Called when a fatal error message needs to be + output. + + + + fatalError: + e + colNumber: + colNumber + lineNumber: + lineNumber + + Called when a fatal error message needs to be + output. + + + + getEntity: + name + + get an entity by name + + + + getParameterEntity: + name + + get a parameter entity by name + + + + globalNamespace: + name + href: + href + prefix: + prefix + +
    An old global namespace has been parsed. +
    +
    + + hasExternalSubset + + Called to find out whether there is an external + subset. + + + + hasInternalSubset + + Called to find out whether there is an internal + subset. + + + + ignoreWhitespace: + ch + +
    Receiving some ignorable whitespaces from the + parser. +
    +
    + + internalSubset: + name + externalID: + externalID + systemID: + systemID + + Called to find out whether there is an internal + subset. + + + + isStandalone + + Called to detemrine if the document is standalone. + + + + lib + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! +
    +
    + + loadEntity: + publicId + at: + location + + Called to return the filename from which an entity + should be loaded. + + + + namespaceDecl: + name + href: + href + prefix: + prefix + +
    An old global namespace has been parsed. +
    +
    + + notationDecl: + name + public: + publicId + system: + systemId + +
    What to do when a notation declaration has + been parsed. +
    +
    + + parser + + Return the parser object with which this handler is + associated. This may occasionally be useful. + + + + processInstruction: + targetName + data: + PIdata + +
    A processing instruction has been parsed. +
    +
    + + reference: + name + +
    Called when an entity reference is detected. +
    +
    + + startDocument + +
    Called when the document starts being + processed. +
    +
    + + startElement: + elementName + attributes: + elementAttributes + +
    Called when an opening tag has been + processed. +
    +
    + + startElement: + elementName + prefix: + prefix + href: + href + attributes: + elementAttributes + namespaces: + elementNamespaces + + Description forthcoming. + + + + unparsedEntityDecl: + name + public: + publicId + system: + systemId + notationName: + notation + +
    What to do when an unparsed entity + declaration is parsed. +
    +
    + + warning: + e + + Called when a warning message needs to be output. + + + + warning: + e + colNumber: + colNumber + lineNumber: + lineNumber + + Called when a warning message needs to be output. + + +
    +
    + + + Software documentation for the GSTreeSAXHandler class + + + GNUstepBase/GSXML.h + + The default handler for parsing documents... this will + build a GSXMLDocument for you. This handler may not + currently be subclassed, though that capability may + be added at a later date. + + + + + + Software documentation for the GSXMLAttribute class + + + GNUstepBase/GSXML.h + + A class wrapping attributes of an XML element node. + Generally when examining a GSXMLDocument, you need + not concern yourself with GSXMLAttribute objects as you + will probably use the + + [GSXMLNode -objectForKey:] + + method to return the string value of any attribute you + are interested in. + + + value + + Returns the string value of the attribute. + + + + + + + Software documentation for the GSXMLDocument class + + + GNUstepBase/GSXML.h + NSCopying + + A GSXML document wraps the document structure of the + underlying libxml library. + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + documentWithVersion: + version + + Create a new document with the specified + version. + + id d = [GSXMLDocument documentWithVersion: @"1.0"]; + + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]]; + [[d root] setObject: @"0.9" forKey: @"version"]; + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil]; + [n1 makeComment: @" this is a comment "]; + [n1 makePI: @"pi1" content: @"this is a process instruction"]; + [n1 makeChildWithNamespace: nil name: @"key" content: @"Year Of Birth"]; + [n1 makeChildWithNamespace: nil name: @"integer" content: @"65"]; + [n1 makeChildWithNamespace: nil name: @"key" content: @"Pets Names"]; + + + + + description + + Returns a string representation of the document (ie + the XML) or nil if the document does not + have reasonable contents. + + + + encoding + + Returns the name of the encoding for this document. + + + + lib + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! +
    +
    + + makeNodeWithNamespace: + ns + name: + name + content: + content + + Creates a new node within the document. + + GSXMLNode *n1, *n2; + GSXMLDocument *d; + + d = [GSXMLDocument documentWithVersion: @"1.0"]; + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]]; + [[d root] setObject: @"0.9" forKey: @"version"]; + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil]; + + + + + root + + Returns the root node of the document. + + + + setRoot: + node + + Sets the root of the document.
    NB. The + node must have been created as part of the + receiving document (eg. using the + -makeNodeWithNamespace:name:content: method). +
    +
    + + version + + Returns the version string for this document. + + + + writeToFile: + filename + atomically: + useAuxilliaryFile + + Uses the + + -description + + method to produce a string representation of the + document and writes that to filename. + + + + writeToURL: + url + atomically: + useAuxilliaryFile + + Uses the + + -description + + method to produce a string representation of the + document and writes that to url. + + +
    +
    + + + Software documentation for the GSXMLNamespace class + + + GNUstepBase/GSXML.h + NSCopying + + A GSXMLNamespace object wraps part of the document + structure of the underlying libxml library. + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + descriptionFromType: + type + + Return the string representation of the specified + numeric type. + + + + typeFromDescription: + desc + + Return the numeric constant value for the namespace + type named. This method is inefficient, so the + returned value should be saved for re-use later. + The possible values are - + XML_LOCAL_NAMESPACE + + + + href + + Returns the namespace reference + + + + lib + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! +
    +
    + + next + + return the next namespace. + + + + prefix + + Return the namespace prefix. + + + + type + + Return type of namespace + + + + typeDescription + + Return string representation of the type of the + namespace. + + +
    +
    + + + Software documentation for the GSXMLNode class + + + GNUstepBase/GSXML.h + NSCopying + + A GSXMLNode object wraps part of the document structure of + the underlying libxml library. It may have a parent, + siblings, and children. + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Description forthcoming. + + + + descriptionFromType: + type + + Return the string constant value for the node + type given. + + + + typeFromDescription: + desc + +

    + Converts a node type string to a numeric + constant which can be compared with the result + of the -type + method to determine what sort of node an instance + is. Because this method is quite inefficient, you + should cache the numeric type returned and re-use + the cached value. +

    + The node type names are - + + XML_ELEMENT_NODE + XML_ATTRIBUTE_NODE + XML_TEXT_NODE + XML_CDATA_SECTION_NODE + XML_ENTITY_REF_NODE + XML_ENTITY_NODE + XML_PI_NODE + XML_COMMENT_NODE + XML_DOCUMENT_NODE + XML_DOCUMENT_TYPE_NODE + XML_DOCUMENT_FRAG_NODE + XML_NOTATION_NODE + XML_HTML_DOCUMENT_NODE + XML_DTD_NODE + XML_ELEMENT_DECL + XML_ATTRIBUTE_DECL + XML_ENTITY_DECL + +
    +
    + + attributes + +

    + Return attributes and values as a dictionary +

    +
    +
    + + content + + Return node content as a string. This should return + meaningful information for text nodes and for + entity nodes containing only text nodes.
    If + entity substitution was not enabled during parsing, + an element containing text may actually contain both + text nodes and entity reference nodes, in this case + you should not use this method to get the content of + the element, but should examine the child nodes of the + element individually and perform any entity + reference you need to do explicitly.
    NB. + There are five standard entities which are + automatically substituted into the content + text rather than appearing as entity nodes in their + own right. These are '<', '>', ''', '"' + and '&'. If you with to receive content in which + these characters are represented by the original + entity escapes, you need to use the + + -escapedContent + + method. +
    +
    + + description + + Returns a string representation of the node and all + its children (ie the XML text) or nil if + the node does not have reasonable contents. + + + + document + + Return the document in which this node exists. + + + + escapedContent + + This performs the same function as the + + -content + + method, but retains escaped character information + (the standard five entities &lt;, &gt;, + &apos;, &quot;, and &amp;) which + are normally replaced with their standard equivalents + (<, >, ', ", and &). + + + + firstAttribute + + Return the first attribute in this node. + + + + firstChild + + Return the first child node of this node. + + - (GSXMLNode*) elementRecursive: (GSXMLNode*)node + { + while (node != nil) + { + if ([node type] == XML_ELEMENT_NODE) + { + return node; + } + if ([node firstChild] != nil) + { + node = [self elementRecursive: [node firstChild]]; + } + else + { + node = [node next]; + } + } + return node; + } + + + + + firstChildElement + + Return the first child element of this node. If you + wish to step through all children of the node + (including non-element nodes) you should use the + + -firstChild + + method instead. + + + + isElement + + Convenience method, equivalent to calling + + -type + + and comparing it with the result of passing + "XML_ELEMENT_NODE" to + + +typeFromDescription: + + (but faster). + + + + isText + + Convenience method, equivalent to calling + + -type + + and comparing it with the result of passing + "XML_TEXT_NODE" to + + +typeFromDescription: + + (but faster). + + + + lib + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! +
    +
    + + makeAttributeWithName: + name + value: + value + + Create and return an attribute (unless the named + attribute already exists, in which case we update + them value of the existing attribute and + return it. + + + + makeChildWithNamespace: + ns + name: + name + content: + content + +

    + Creation of a new child element, added at the + end of parent children list. ns and + content parameters are optional (may be + nil). If content is non + nil, a child list containing the + TEXTs and ENTITY_REFs node will be created. Return + previous node. +

    + + + GSXMLNode *n1, *n2; + GSXMLDocument *d, *d1; + + d = [GSXMLDocument documentWithVersion: @"1.0"]; + [d setRoot: [d makeNodeWithNamespace: nil + name: @"plist" + content: nil]]; + [[d root] setObject: @"0.9" forKey: @"version"]; + n1 = [[d root] makeChildWithNamespace: nil + name: @"dict" + content: nil]; + [n1 makeChildWithNamespace: nil name: @"key" content: @"Year Of Birth"]; + [n1 makeChildWithNamespace: nil name: @"integer" content: @"65"]; + + [n1 makeChildWithNamespace: nil name: @"key" content: @"Pets Names"]; + [n1 makeChildWithNamespace: nil name: @"array" content: nil]; + + +
    +
    + + makeComment: + content + + Creation of a new comment element, added at the + end of parent children list. + + d = [GSXMLDocument documentWithVersion: @"1.0"]; + + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]]; + [[d root] setObject: @"0.9" forKey: @"version"]; + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil]; + [n1 makeComment: @" this is a comment "]; + + + + + makeNamespaceHref: + href + prefix: + prefix + + Create a namespace attached to this node. + + + + makePI: + name + content: + content + + Creation of a new process instruction element, + added at the end of parent children list. + + d = [GSXMLDocument documentWithVersion: @"1.0"]; + + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]]; + [[d root] setObject: @"0.9" forKey: @"version"]; + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil]; + [n1 makeComment: @" this is a comment "]; + [n1 makePI: @"pi1" content: @"this is a process instruction"]; + + + + + makeText: + content + + Creation of a new text element, added at the end + of parent children list. + + d = [GSXMLDocument documentWithVersion: @"1.0"]; + + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]]; + [[d root] setObject: @"0.9" forKey: @"version"]; + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil]; + [n1 makeText: @" this is a text "]; + + + + + name + + Return the node-name + + + + namespace + + Return the namespace of the node. + + + + namespaceDefinitions + + Return namespace definitions for the node + + + + next + + Return the next node at this level. This method can + return any type of node, and it may be more + convenient to use the + + -nextElement + + node if you are parsing a document where you wish to + ignore non-element nodes such as whitespace text + separating elements. + + + + nextElement + + Returns the next element node, skipping past any + other node types (such as text nodes). If there is no + element node to be returned, this method returns + nil.
    NB. This method is not + available in java, as the method name conflicts + with that of java's Enumerator class. +
    +
    + + objectForKey: + key + + Return the attribute value for the specified + key. + + + + parent + + Return the parent of this node. + + + + previous + + Return the previous node at this level. + + + + previousElement + + Return the previous element node at this level. +
    NB. This method is not available in java, as + the method name conflicts with that of java's + Enumerator class. +
    +
    + + propertiesAsDictionaryWithKeyTransformationSel: + keyTransformSel + +

    + Return attributes and values as a dictionary, but + applies the specified selector to each key before + adding the key and value to the dictionary. The + selector must be a method of NSString taking no + arguments and returning an object suitable for + use as a dictionary key. +

    +

    + This method exists for the use of GSWeb... it is + probably not of much use elsewhere. +

    +
    +
    + + setNamespace: + space + + Sets the namespace of the receiver to the value + specified.
    Supplying a nil + namespace removes any namespace previously set or + any namespace that the node inherited from a parent + when it was created. +
    +
    + + setObject: + value + forKey: + key + + Set (or reset) an attribute carried by a node. + + [n1 setObject: @"prop1" forKey: @"name1"]; + [n1 setObject: @"prop2" forKey: @"name2"]; + [n1 setObject: @"prop3" forKey: @"name3"]; + + + + + type + + Return node-type. The most efficient way of testing + node types is to use this method and compare the + return value with a value you previously obtained + using the + + +typeFromDescription: + + method. + + + + typeDescription + + Return node type as a string. + + +
    +
    + + + Software documentation for the GSXMLParser class + + + GNUstepBase/GSXML.h + +

    + The XML parser object is the pivotal part of parsing an + XML document - it will either build a tree representing + the document (if initialized without a GSSAXHandler), + or will cooperate with a GSSAXHandler object to provide + parsing without the overhead of building a tree. +

    +

    + The parser may be initialized with an input source (in + which case it will expect to be asked to parse the + entire input in a single operation), or without. If + it is initialised without an input source, incremental + parsing can be done by feeding successive parts of + the XML document into the parser as NSData objects. +

    +
    + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + loadEntity: + publicId + at: + location + +

    + This method controls the loading of external + entities into the system. If it returns an empty + string, the entity is not loaded. If it returns a + filename, the entity is loaded from that file. + If it returns nil, the default entity + loading mechanism is used. +

    +

    + The default entity loading mechanism is to construct + a file name from the locationURL, by replacing all path + separators with underscores, then attempt to + locate that file in the DTDs resource directory of + the main bundle, and all the standard system + locations. +

    +

    + As a special case, the default loader examines the + publicID and if it is a GNUstep DTD, the loader + constructs a special name from the ID (by + replacing dots with underscores and spaces with + hyphens) and looks for a file with that name and + a '.dtd' extension in the GNUstep bundles. +

    +

    + NB. This method will only be called if there is no + SAX handler in use, or if the corresponding method in + the SAX handler returns nil. +

    +
    +
    + + parser + + Creation of a new Parser (for incremental parsing) + by calling + + -initWithSAXHandler: + + + + + parserWithContentsOfFile: + path + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfFile: + + GSXMLParser *p = [GSXMLParser parserWithContentsOfFile: @"macos.xml"]; + + if ([p parse]) + { + [[p document] dump]; + } + else + { + printf("error parse file\n"); + } + + + + + parserWithContentsOfURL: + url + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfURL: + + + + parserWithData: + data + + Creation of a new Parser by calling + + -initWithSAXHandler:withData: + + + + + parserWithSAXHandler: + handler + +

    + Creation of a new Parser by calling + + -initWithSAXHandler: + +

    +

    + If the handler object supplied is + nil, the parser will build a tree + representing the parsed file rather than + attempting to get the handler to + deal with the parsed elements and entities. +

    +
    +
    + + parserWithSAXHandler: + handler + withContentsOfFile: + path + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfFile: + + NSAutoreleasePool *arp = [NSAutoreleasePool new]; + GSSAXHandler *h = [GSDebugSAXHandler handler]; + GSXMLParser *p = [GSXMLParser parserWithSAXHandler: h + withContentsOfFile: @"macos.xml"]; + if ([p parse]) + { + printf("ok\n"); + } + RELEASE(arp); + + + + + parserWithSAXHandler: + handler + withContentsOfURL: + url + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfURL: + + + + parserWithSAXHandler: + handler + withData: + data + + Creation of a new Parser by calling + + -initWithSAXHandler:withData: + + + + + setDTDs: + aPath + + Sets a directory in which to look for DTDs when + resolving external references. Can be used whjen + DTDs have not been installed in the normal locatioons. + + + + xmlEncodingStringForStringEncoding: + encoding + + Return the name of the string encoding + (for XML) to use for the specified OpenStep + encoding. + + + + abortParsing + + If called by a SAX callback routine, this method will + terminate the parsiong process. + + + + columnNumber + + If executed during a parse operation, returns the + current column number. + + + + doValidityChecking: + yesno + + Sets whether the document needs to be validated. + + + + document + + Return the document produced as a result of parsing + data. + + + + errNo + + Return error code for last parse operation. + + + + getWarnings: + yesno + + Sets whether warnings are generated. + + + + initWithSAXHandler: + handler + +

    + Initialisation of a new Parser with SAX + handler. +

    +

    + If the handler object supplied is + nil, the parser will use an instance + of + GSTreeSAXHandler + to build a tree representing the parsed file. This + tree will then be available (via the + + -document + + method) as a + GSXMLDocumenton completion of parsing.

    +

    + The source for the parsing process is not + specified - so parsing must be done + incrementally by feeding data to the + parser. +

    +
    +
    + + initWithSAXHandler: + handler + withContentsOfFile: + path + +

    + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + +

    +

    + Sets the input source for the parser to be the + specified file - so parsing of the entire file + will be performed rather than incremental parsing. +

    +
    +
    + + initWithSAXHandler: + handler + withContentsOfURL: + url + +

    + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + +

    +

    + Sets the input source for the parser to be the + specified URL - so parsing of the entire + document will be performed rather than + incremental parsing. +

    +
    +
    + + initWithSAXHandler: + handler + withData: + data + +

    + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + +

    +

    + Sets the input source for the parser to be the + specified data object (which must + contain an XML document), so parsing of the + entire document will be performed rather than + incremental parsing. +

    +
    +
    + + initWithSAXHandler: + handler + withInputStream: + stream + +

    + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + +

    +

    + Sets the input source for the parser to be the + specified input stream, so parsing + of the entire document will be performed rather than + incremental parsing. +

    +
    +
    + + keepBlanks: + yesno + + Set and return the previous value for blank text nodes + support. ignorableWhitespace nodes are only + generated when running the parser in validating + mode and when the current element doesn't allow CDATA + or mixed content. + + + + lineNumber + + If executed during a parse operation, returns the + current line number. + + + + messages + + Returns the string into which warning and error + messages are saved, or nil if they + are being written to stderr. + + + + parse + + Parse source. Return YES if parsed as + valid, otherwise NO. If validation + against a DTD is not enabled, the return value + simply indicates whether the xml was well formed. +
    This method should be called once to parse + the entire document. + + GSXMLParser *p = [GSXMLParser parserWithContentsOfFile:@"macos.xml"]; + + if ([p parse]) + { + [[p doc] dump]; + } + else + { + printf("error parse file\n"); + } + +
    +
    + + parse: + data + +

    + Pass data to the parser for incremental + parsing. This method should be called many + times, with each call passing another block of + data from the same document. After the + whole of the document has been parsed, the method + should be called with an empty or nil + data object to indicate end of parsing. + On this final call, the return value indicates whether + the document was valid or not. If validation to a DTD + is not enabled, the return value simply indicates + whether the xml was well formed. +

    + + GSXMLParser *p = [GSXMLParser parserWithSAXHandler: nil source: nil]; + + while ((data = getMoreData()) != nil) + { + if ([p parse: data] == NO) + { + NSLog(@"parse error"); + } + } + // Do something with document parsed + [p parse: nil]; // Completed parsing of document. + +
    +
    + + publicID + + Return the public ID of the document being parsed. + + + + resolveEntities: + yesno + + Description forthcoming. + + + + saveMessages: + yesno + + Sets up (or removes) a mutable string to which error + and warning messages are saved. Using an argument of + NO will cause these messages to be + written to stderr (the default).
    NB. A SAX + handler which overrides the error and warning + logging messages may stop this mechanism operating. +
    +
    + + substituteEntities: + yesno + + Set and return the previous value for entity support. + Initially the parser always keeps entity + references instead of substituting entity values + in the output. + + + + systemID + + Return the system ID of the document being parsed. + + +
    +
    + + + Software documentation for the GSXMLRPC class + + + GNUstepBase/GSXML.h + NSURLHandleClient + +

    + The GSXMLRPC class provides methods for constructing + and parsing XMLRPC method call and response documents + ... so that calls may be constructed of standard + objects. +

    +

    + The correspondence between XMLRPC values and + Objective-C objects is as follows - +

    + + + i4 (or + int) is an + NSNumber + other than a real/float or boolean. + + + boolean is an + NSNumber + created as a BOOL. + + + string is an + NSString + object. + + + double is an + NSNumber + created as a float or + double. + + + dateTime.iso8601 is an + NSDate + object. + + + base64 is an + NSData + object. + + + array is an + NSArray + object. + + + struct is an + NSDictionaryobject. + +

    + If you attempt to use any other type of + object in the construction of an + XMLRPC document, the + [NSObject -description] method of that object will be used to create a striong, and the resulting object will be encoded as an XMLRPC string element. +

    +

    + In particular, the names of members in a + struct must be strings, so if + you provide an + NSDictionaryobject to represent a struct the keys of the dictionary will be converted to strings if necessary.

    +

    + The class also provides a method for + making a synchronous XMLRPC method + call (with timeout), or an + asynchronous call in which + the call completion is handled by a + delegate. +

    +

    + You may also use the class to + implement an XMLRPC server, by + calling the + -parseMethod:params: method to parse the data POSTed to your server, and -buildResponseWithParams: (or -buildResponseWithFaultCode:andString:) to produce the data to be sent back to the client. +

    +

    + In order to simply make a synchronous + XMLRPC call to a server, all you + need to do is write code like: +

    + + GSXMLRPC *server = [[GSXMLRPC alloc] initWithURL: @"http://server/path"]; + id result = [server makeMethodCall: name params: p timeout: 30]; + +

    + Saying that you want to call the specified method + ('name') on the server, passing the parameters + ('p') and with a 30 second timeout.
    If there + is a network or http-level error or a timeout, the + result will be an error string, otherwise it will be + an array (on success) or a dictionary containing the + fault details. +

    +
    + + URLHandle: + sender + resourceDataDidBecomeAvailable: + newData + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + + + + URLHandle: + sender + resourceDidFailLoadingWithReason: + reason + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + + + + URLHandleResourceDidBeginLoading: + sender + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + + + + URLHandleResourceDidCancelLoading: + sender + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + + + + URLHandleResourceDidFinishLoading: + sender + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + + + + buildMethod: + method + params: + params + + Given a method name and an array of + parameters, this method constructs + the XML document for the corresponding XMLRPC call and + returns the document as an NSData object containing + UTF-8 text.
    The params array may be + empty or nil if there are no parameters + to be passed.
    The method returns + nil if passed an invalid + method name (a method name may + contain any of the ascii alphanumeric characters + and underscore, fullstop, colon, or slash).
    This + method is used internally when sending an + XMLRPC method call to a remote system, + but you can also call it yourself. +
    +
    + + buildMethodCall: + method + params: + params + + Given a method name and an array of + parameters, this method constructs + the XML document for the corresponding XMLRPC call and + returns the document as a string.
    The + params array may be empty or + nil if there are no parameters to be + passed.
    The method returns + nil if passed an invalid + method name (a method name may + contain any of the ascii alphanumeric characters + and underscore, fullstop, colon, or slash).
    +
    +
    + + buildResponseWithFaultCode: + code + andString: + s + + Constructs an XML document for an XMLRPC fault + response with the specified code and + string. The resulting document is returned as a + string.
    This method is intended for use by + applications acting as XMLRPC servers. +
    +
    + + buildResponseWithParams: + params + + Builds an XMLRPC response with the specified array + of parameters and returns the document as a string. +
    The params array may be empty or + nil if there are no parameters to be + returned (an empty params element will + be created).
    This method is intended for use by + applications acting as XMLRPC servers. +
    +
    + + compact + + Return the value set by a prior call to + + -setCompact: + + (or NO... the default). + + + + delegate + + Returns the delegate previously set by the + + -setDelegate: + + method.
    The delegate handles completion of + asynchronous method calls to the URL specified + when the receiver was initialised (if any). +
    +
    + + initWithURL: + url + + Initialise the receiver to make XMLRPC calls to + the specified URL.
    This method just calls + -initWithURL:certificate:privateKey:password: with nil arguments for the SSL credentials. +
    +
    + + initWithURL: + url + certificate: + cert + privateKey: + pKey + password: + pwd + + Initialise the receiver to make XMLRPC calls to + the specified url and (optionally) with the + specified SSL parameters.
    The + url argument may be nil, in + which case the receiver will be unable to make XMLRPC + calls, but can be used to parse incoming requests + and build responses.
    If the SSL credentials are + non-nil, connections to the remote server will be + authenticated using the supplied certificate + so that the remote system knows who is contacting it. +
    +
    + + makeMethodCall: + method + params: + params + timeout: + seconds + + Calls + + -sendMethodCall:params:timeout: + + and waits for the response.
    Returns the response + parameters (an array), the response fault (a + dictionary), or a failure reason (a string). +
    +
    + + parseMethod: + request + params: + params + + Parses XML data containing an XMLRPC method call. +
    Returns the name of the method call.
    + Empties, and then places the method parameters (if + any) in the params argument.
    NB. Any + containers (arrays or dictionaries) in the + parsed parameters will be mutable, so you can modify + this data structure as you like.
    Raises an + exception if parsing fails.
    This method is + intended for the use of XMLRPC server + applications. +
    +
    + + parseResponse: + resp + params: + params + + Parses XML data containing an XMLRPC method + response.
    Returns nil for + success, the fault dictionary on failure.
    + Places the response parameters (if any) in the + params argument.
    NB. Any containers + (arrays or dictionaries) in the parsed parameters + will be mutable, so you can modify this data structure + as you like.
    Raises an exception if parsing + fails.
    Used internally when making a method + call to a remote server. +
    +
    + + result + + Returns the result of the last method call, or + nil if there has been no method call or + one is in progress.
    The result may be one of - + + + A mutable array... the parameters of a success + response. + + + A dictionary... containing a fault response. + + + A string... describing a low-level failure (eg. + timeout). + + + NB. Any containers (arrays or dictionaries) in the + parsed parameters of a success response will be + mutable, so you can modify this data structure as + you like. +
    +
    + + sendMethodCall: + method + params: + params + timeout: + seconds + + Send an asynchronous XMLRPC method call + with the specified timeout.
    A delegate should + have been set to handle the result of this call, but + if one was not set the state of the asynchronous call + may be polled by calling the + + -result + + method, which will return nil + as long as the call has not completed. +
    The call may be cancelled by calling the + + -timeout: + + method
    This method + returns YES if the call was started, + NO if it could not be started (eg + because another call is in progress or because of + bad arguments).
    NB. For the asynchronous + operation to proceed, the current + NSRunLoop + must be run. +
    +
    + + setCompact: + flag + + Specify whether to generate compact XML (omit + indentation and other white space and omit + <string> element markup).
    + Compact representation saves some space (can be + important when sent over slow/low bandwidth + connections), but sacrifices readability. +
    +
    + + setDebug: + flag + + Specify whether to perform debug trace on I/O +
    Return the previous value +
    +
    + + setDelegate: + aDelegate + + Sets the delegate object which will receive callbacks + when an XMLRPC call completes.
    NB. this + delegate is not retained, and should be + removed before it is deallocated (call + + -setDelegate: + + again with a nil argument to remove the + delegate). +
    +
    + + setTimeZone: + timeZone + + Sets the time zone for use when sending/receiving + date/time values.
    The XMLRPC specification + says that timezone is server dependent so you will + need to set it according to the server you are + connecting to.
    If this is not set, UCT is + assumed. +
    +
    + + timeZone + + Return the time zone currently set. + + + + timeout: + t + + Handles timeouts, passing information to delegate + ... you don't need to call this method, but you + may call it in order to cancel an + asynchronous request as if it had timed out. + + +
    +
    + + + Software documentation for the GSXPathBoolean class + + + GNUstepBase/GSXML.h + + For XPath queries returning true/false. + + + booleanValue + + Returns the the value of the receiver... YES/NO, + true/false. + + + + + + + Software documentation for the GSXPathContext class + + + GNUstepBase/GSXML.h + +

    + Use of the GSXPathContext class is simple... you just + need to look up xpath to learn the syntax of xpath + expressions, then you can apply those + expressions to a context to retrieve data from + a document. +

    + + GSXMLParser *p = [GSXMLParser parserWithContentsOfFile: @"xp.xml"]; + + if ([p parse]) + { + GSXMLDocument *d = [p document]; + GSXPathContext *c = [[GSXPathContext alloc] initWithDocument: document]; + GSXPathString *result = [c evaluateExpression: @"string(/body/text())"]; + + GSPrintf(stdout, @"Got %@", [result stringValue]); + } + else + { + GSPrintf(stderr, "error parsing file\n"); + } + +
    + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + evaluateExpression: + XPathExpression + + Evaluates the supplied expression and returns the + resulting node or node set. If the expression is + invalid, returns nil. + + + + initWithDocument: + d + + Initialises the receiver as an xpath parser for + the supplied document. + + + + registerNamespaceWithPrefix: + prefix + href: + href + + Description forthcoming. + + +
    +
    + + + Software documentation for the GSXPathNodeSet class + + + GNUstepBase/GSXML.h + + For XPath queries returning a node set.
    An XPATH + node set is an ordered set of nodes returned as a result + of an expression. The order of the nodes in the set is the + same as the order in the xml document from which they + were extracted. +
    + + count + + Returns the number of nodes in the receiver. + + + + length + + Deprecated + + + + nodeAtIndex: + index + + Please note that index starts from 0. +
    Returns the node from the receiver at the + specified index, or nil + if no such node exists. +
    +
    +
    +
    + + + Software documentation for the GSXPathNumber class + + + GNUstepBase/GSXML.h + + For XPath queries returning a number. + + + doubleValue + + Returns the floating point (double + ) value of the receiver. + + + + + + + Software documentation for the GSXPathObject class + + + GNUstepBase/GSXML.h + + XPath queries return a GSXPathObject. GSXPathObject in + itself is an abstract class; there are four types of + completely different GSXPathObject types, listed + below. I'm afraid you need to check the returned type + of each GSXPath query to make sure it's what you meant it + to be.
    +

    + You don't create GSXPathObject instances, instead the + XPATH system creates them and returns them as the + result of the + [GSXPathContext -evaluateExpression:] method. +

    +
    + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + + + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + + +
    +
    + + + Software documentation for the GSXPathString class + + + GNUstepBase/GSXML.h + + For XPath queries returning a string. + + + stringValue + + Returns the string value of the receiver. + + + + + + + Software documentation for the GSXMLDocument(XSLT) + category + + + GNUstepBase/GSXML.h + + Description forthcoming. + + + xsltTransformFile: + xmlFile + stylesheet: + xsltStylesheet + + Performs an XSLT transformation on the specified + file using the stylesheet provided.
    Returns an + autoreleased GSXMLDocument containing the + transformed XML, or nil on + failure. +
    +
    + + xsltTransformFile: + xmlFile + stylesheet: + xsltStylesheet + params: + params + + Performs an XSLT transformation on the specified + file using the stylesheet and parameters provided. See + the libxslt documentation for details of the supported + parameters.
    Returns an autoreleased + GSXMLDocument containing the transformed XML, + or nil on failure. +
    +
    + + xsltTransformXml: + xmlData + stylesheet: + xsltStylesheet + + Performs an XSLT transformation on the specified + file using the stylesheet provided.
    Returns an + autoreleased GSXMLDocument containing the + transformed XML, or nil on + failure. +
    +
    + + xsltTransformXml: + xmlData + stylesheet: + xsltStylesheet + params: + params + + Performs an XSLT transformation on the specified + file using the stylesheet and parameters provided.See + the libxslt documentation for details of the supported + parameters.
    Returns an autoreleased + GSXMLDocument containing the transformed XML, + or nil on failure. +
    +
    + + xsltTransform: + xsltStylesheet + + Performs an XSLT transformation on the current + document using the supplied stylesheet.
    + Returns an autoreleased GSXMLDocument containing + the transformed XML, or nil on failure. +
    +
    + + xsltTransform: + xsltStylesheet + params: + params + + Performs an XSLT transformation on the current + document using the supplied stylesheet and + paramaters (params may be + nil). See the libxslt documentation for + details of the supported parameters.
    Returns + an autoreleased GSXMLDocument containing the transformed + XML, or nil on failure. +
    +
    +
    +
    + + + Software documentation for the GSXMLRPC(Delegate) + category + + + GNUstepBase/GSXML.h + + Delegates should implement this method in order to + be informed of the success or failure of an XMLRPC method + call which was initiated by the + + -sendMethodCall:params:timeout: + + method.
    +
    + + completedXMLRPC: + sender + + Called by the sender when an XMLRPC + method call completes (either success or failure). + The delegate may then call the + + -result + + method to retrieve the result of the method call + from the sender. + + +
    +
    + + + Software documentation for the NSString(GSXML) + category + + + GNUstepBase/GSXML.h + + Convenience methods for managing XML escape + sequences in an NSString. + + + stringByEscapingXML + + Deals with standard XML internal entities.
    + Converts the five XML special characters in the + receiver ('>', '<', '&', ''' and + '"') to their escaped equivalents, and + return the escaped string.
    Also converts + non-ascii characters to the corresponding numeric + entity escape sequences.
    You should perform + any non-standard entity substitution you require + after you have called this method. +
    +
    + + stringByUnescapingXML + + Deals with standard XML internal entities.
    + Converts the five XML escape sequences + ('&gt;', '&lt;', '&amp;', + '&apos;' and '&quot;') to the unicode + characters they represent, and returns the + unescaped string.
    Also converts numeric + entity escape sequences to the corresponding unicode + characters.
    You should perform any + non-standard entity substitution you require + before you have called this method. +
    +
    +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSXML.html b/resources/documentation/Developer/BaseAdditions/Reference/GSXML.html index 3984638..14c78b0 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/GSXML.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/GSXML.html @@ -19,6 +19,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2000-2005 Free Software Foundation, Inc.

    @@ -183,7 +184,7 @@

    GSSAXHandler : NSObject

    GSSAXHandler is a callback-based interface to the - GSXMLParser + GSXMLParser which operates in a similar (though not identical) manner to SAX. @@ -219,7 +220,7 @@

    GSSAXHandler : NSObject

    If you create a GSXMLParser passing nil as the GSSAXHandler, the parser will parse data to create a - GSXMLDocument + GSXMLDocument instance which you can then examine as a whole ... this is generally the preferred mechanism for @@ -241,48 +242,48 @@

    GSSAXHandler : NSObject



    Method summary

    handler 

    - + (GSSAXHandler*) handler;
    + + (GSSAXHandler*) handler;
    Availability: Not in OpenStep/MacOS-X

    @@ -310,7 +311,7 @@

    attribute: value: <

    attributeDecl: name: type: typeDefValue: defaultValue: 

    - - (void) attributeDecl: (NSString*)nameElement name: (NSString*)name type: (NSInteger)type typeDefValue: (NSInteger)defType defaultValue: (NSString*)value;
    + - (void) attributeDecl: (NSString*)nameElement name: (NSString*)name type: (NSInteger)type typeDefValue: (NSInteger)defType defaultValue: (NSString*)value;
    Availability: Not in OpenStep/MacOS-X

    @@ -366,7 +367,7 @@

    comment: 

    elementDecl: type: 

    - - (void) elementDecl: (NSString*)name type: (NSInteger)type;
    + - (void) elementDecl: (NSString*)name type: (NSInteger)type;
    Availability: Not in OpenStep/MacOS-X

    @@ -423,7 +424,7 @@

    endElement: prefi

    entityDecl: type: public: system: content: 

    - - (void) entityDecl: (NSString*)name type: (NSInteger)type public: (NSString*)publicId system: (NSString*)systemId content: (NSString*)content;
    + - (void) entityDecl: (NSString*)name type: (NSInteger)type public: (NSString*)publicId system: (NSString*)systemId content: (NSString*)content;
    Availability: Not in OpenStep/MacOS-X

    @@ -450,7 +451,7 @@

    error: 

    error: colNumber: lineNumber: 

    - - (void) error: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    + - (void) error: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    Availability: Not in OpenStep/MacOS-X

    @@ -491,7 +492,7 @@

    fatalError: 

    fatalError: colNumber: lineNumber: 

    - - (void) fatalError: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    + - (void) fatalError: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    Availability: Not in OpenStep/MacOS-X

    @@ -545,7 +546,7 @@

    globalNamespace:&

    hasExternalSubset 

    - - (NSInteger) hasExternalSubset;
    + - (NSInteger) hasExternalSubset;
    Availability: Not in OpenStep/MacOS-X

    @@ -559,7 +560,7 @@

    hasExternalSubset <

    hasInternalSubset 

    - - (NSInteger) hasInternalSubset;
    + - (NSInteger) hasInternalSubset;
    Availability: Not in OpenStep/MacOS-X

    @@ -602,7 +603,7 @@

    internalSu

    isStandalone 

    - - (NSInteger) isStandalone;
    + - (NSInteger) isStandalone;
    Availability: Not in OpenStep/MacOS-X

    @@ -672,7 +673,7 @@

    notationDecl: 

    parser 

    - - (GSXMLParser*) parser;
    + - (GSXMLParser*) parser;
    Availability: Not in OpenStep/MacOS-X

    @@ -786,7 +787,7 @@

    warning: 

    warning: colNumber: lineNumber: 

    - - (void) warning: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    + - (void) warning: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    Availability: Not in OpenStep/MacOS-X

    @@ -837,7 +838,7 @@

    parser

    Software documentation for the GSTreeSAXHandler class

    -

    GSTreeSAXHandler : GSSAXHandler

    +

    GSTreeSAXHandler : GSSAXHandler

    Declared in:
    @@ -859,7 +860,7 @@

    GSTreeSAXHandler : Software documentation for the GSXMLAttribute class

    -

    GSXMLAttribute : GSXMLNode

    +

    GSXMLAttribute : GSXMLNode

    Declared in:
    @@ -875,7 +876,7 @@

    GSXMLAttribute : + [GSXMLNode -objectForKey:] @@ -885,7 +886,7 @@

    GSXMLAttribute : -value +
  • -value

  • @@ -932,27 +933,27 @@

    GSXMLDocument : NSObject



    Method summary

    documentWithVersion: 

    - + (GSXMLDocument*) documentWithVersion: (NSString*)version;
    + + (GSXMLDocument*) documentWithVersion: (NSString*)version;
    Availability: Not in OpenStep/MacOS-X

    @@ -1022,7 +1023,7 @@

    lib 

    makeNodeWithNamespace: name: content: 

    - - (GSXMLNode*) makeNodeWithNamespace: (GSXMLNamespace*)ns name: (NSString*)name content: (NSString*)content;
    + - (GSXMLNode*) makeNodeWithNamespace: (GSXMLNamespace*)ns name: (NSString*)name content: (NSString*)content;
    Availability: Not in OpenStep/MacOS-X

    @@ -1046,7 +1047,7 @@

    makeNodeW

    root 

    - - (GSXMLNode*) root;
    + - (GSXMLNode*) root;
    Availability: Not in OpenStep/MacOS-X

    @@ -1059,7 +1060,7 @@

    root 

    setRoot: 

    - - (GSXMLNode*) setRoot: (GSXMLNode*)node;
    + - (GSXMLNode*) setRoot: (GSXMLNode*)node;
    Availability: Not in OpenStep/MacOS-X

    @@ -1068,7 +1069,7 @@

    setRoot: 

    Sets the root of the document.
    NB. The node must have been created as part of the receiving document (eg. using the - -makeNodeWithNamespace:name:content: + -makeNodeWithNamespace:name:content: method).
    @@ -1096,7 +1097,7 @@

    writeToFile: ato
    Uses the - + -description @@ -1115,7 +1116,7 @@

    writeToURL: atomi
    Uses the - + -description @@ -1200,19 +1201,19 @@

    GSXMLNamespace : NSObject



    Method summary

    descriptionFromType: 

    - + (NSString*) descriptionFromType: (NSInteger)type;
    + + (NSString*) descriptionFromType: (NSInteger)type;
    Availability: Not in OpenStep/MacOS-X

    @@ -1226,7 +1227,7 @@

    descriptionFromType:&nb

    typeFromDescription: 

    - + (NSInteger) typeFromDescription: (NSString*)desc;
    + + (NSInteger) typeFromDescription: (NSString*)desc;
    Availability: Not in OpenStep/MacOS-X

    @@ -1276,7 +1277,7 @@

    lib 

    next 

    - - (GSXMLNamespace*) next;
    + - (GSXMLNamespace*) next;
    Availability: Not in OpenStep/MacOS-X

    @@ -1302,7 +1303,7 @@

    prefix 

    type 

    - - (NSInteger) type;
    + - (NSInteger) type;
    Availability: Not in OpenStep/MacOS-X

    @@ -1388,44 +1389,44 @@

    GSXMLNode : NSObject



    Method summary

    descriptionFromType: 

    - + (NSString*) descriptionFromType: (NSInteger)type;
    + + (NSString*) descriptionFromType: (NSInteger)type;
    Availability: Not in OpenStep/MacOS-X

    @@ -1439,7 +1440,7 @@

    descriptionFromType: 

    typeFromDescription: 

    - + (NSInteger) typeFromDescription: (NSString*)desc;
    + + (NSInteger) typeFromDescription: (NSString*)desc;
    Availability: Not in OpenStep/MacOS-X

    @@ -1451,7 +1452,7 @@

    typeFromDescription: -type + of the -type method to determine what sort of node an instance is. Because this method is quite inefficient, you @@ -1565,7 +1566,7 @@

    content 

    and '&'. If you with to receive content in which these characters are represented by the original entity escapes, you need to use the - + -escapedContent @@ -1591,7 +1592,7 @@

    description 

    document 

    - - (GSXMLDocument*) document;
    + - (GSXMLDocument*) document;
    Availability: Not in OpenStep/MacOS-X

    @@ -1611,7 +1612,7 @@

    escapedContent 

    This performs the same function as the - + -content @@ -1626,7 +1627,7 @@

    escapedContent 

    firstAttribute 

    - - (GSXMLAttribute*) firstAttribute;
    + - (GSXMLAttribute*) firstAttribute;
    Availability: Not in OpenStep/MacOS-X

    @@ -1639,7 +1640,7 @@

    firstAttribute 

    firstChild 

    - - (GSXMLNode*) firstChild;
    + - (GSXMLNode*) firstChild;
    Availability: Not in OpenStep/MacOS-X

    @@ -1675,7 +1676,7 @@

    firstChild 

    firstChildElement 

    - - (GSXMLNode*) firstChildElement;
    + - (GSXMLNode*) firstChildElement;
    Availability: Not in OpenStep/MacOS-X

    @@ -1684,7 +1685,7 @@

    firstChildElement 

    + -firstChild @@ -1702,13 +1703,13 @@

    isElement 

    Convenience method, equivalent to calling - + -type and comparing it with the result of passing "XML_ELEMENT_NODE" to - + +typeFromDescription: @@ -1726,13 +1727,13 @@

    isText 

    Convenience method, equivalent to calling - + -type and comparing it with the result of passing "XML_TEXT_NODE" to - + +typeFromDescription: @@ -1757,7 +1758,7 @@

    lib 

    makeAttributeWithName: value: 

    - - (GSXMLAttribute*) makeAttributeWithName: (NSString*)name value: (NSString*)value;
    + - (GSXMLAttribute*) makeAttributeWithName: (NSString*)name value: (NSString*)value;
    Availability: Not in OpenStep/MacOS-X

    @@ -1773,7 +1774,7 @@

    makeAttributeWithNam

    makeChildWithNamespace: name: content: 

    - - (GSXMLNode*) makeChildWithNamespace: (GSXMLNamespace*)ns name: (NSString*)name content: (NSString*)content;
    + - (GSXMLNode*) makeChildWithNamespace: (GSXMLNamespace*)ns name: (NSString*)name content: (NSString*)content;
    Availability: Not in OpenStep/MacOS-X

    @@ -1821,7 +1822,7 @@

    makeChildWit

    makeComment: 

    - - (GSXMLNode*) makeComment: (NSString*)content;
    + - (GSXMLNode*) makeComment: (NSString*)content;
    Availability: Not in OpenStep/MacOS-X

    @@ -1845,7 +1846,7 @@

    makeComment: 

    makeNamespaceHref: prefix: 

    - - (GSXMLNamespace*) makeNamespaceHref: (NSString*)href prefix: (NSString*)prefix;
    + - (GSXMLNamespace*) makeNamespaceHref: (NSString*)href prefix: (NSString*)prefix;
    Availability: Not in OpenStep/MacOS-X

    @@ -1858,7 +1859,7 @@

    makeNamespaceHref: 

    makePI: content: 

    - - (GSXMLNode*) makePI: (NSString*)name content: (NSString*)content;
    + - (GSXMLNode*) makePI: (NSString*)name content: (NSString*)content;
    Availability: Not in OpenStep/MacOS-X

    @@ -1883,7 +1884,7 @@

    makePI: content: 

    makeText: 

    - - (GSXMLNode*) makeText: (NSString*)content;
    + - (GSXMLNode*) makeText: (NSString*)content;
    Availability: Not in OpenStep/MacOS-X

    @@ -1920,7 +1921,7 @@

    name 

    namespace 

    - - (GSXMLNamespace*) namespace;
    + - (GSXMLNamespace*) namespace;
    Availability: Not in OpenStep/MacOS-X

    @@ -1933,7 +1934,7 @@

    namespace 

    namespaceDefinitions 

    - - (GSXMLNamespace*) namespaceDefinitions;
    + - (GSXMLNamespace*) namespaceDefinitions;
    Availability: Not in OpenStep/MacOS-X

    @@ -1946,7 +1947,7 @@

    namespaceDefinitions 

    next 

    - - (GSXMLNode*) next;
    + - (GSXMLNode*) next;
    Availability: Not in OpenStep/MacOS-X

    @@ -1955,7 +1956,7 @@

    next 

    Return the next node at this level. This method can return any type of node, and it may be more convenient to use the - + -nextElement @@ -1968,7 +1969,7 @@

    next 

    nextElement 

    - - (GSXMLNode*) nextElement;
    + - (GSXMLNode*) nextElement;
    Availability: Not in OpenStep/MacOS-X

    @@ -2000,7 +2001,7 @@

    objectForKey: 

    parent 

    - - (GSXMLNode*) parent;
    + - (GSXMLNode*) parent;
    Availability: Not in OpenStep/MacOS-X

    @@ -2013,7 +2014,7 @@

    parent 

    previous 

    - - (GSXMLNode*) previous;
    + - (GSXMLNode*) previous;
    Availability: Not in OpenStep/MacOS-X

    @@ -2026,7 +2027,7 @@

    previous 

    previousElement 

    - - (GSXMLNode*) previousElement;
    + - (GSXMLNode*) previousElement;
    Availability: Not in OpenStep/MacOS-X

    @@ -2076,7 +2077,7 @@

    p

    setNamespace: 

    - - (void) setNamespace: (GSXMLNamespace*)space;
    + - (void) setNamespace: (GSXMLNamespace*)space;
    Availability: Not in OpenStep/MacOS-X

    @@ -2113,7 +2114,7 @@

    setObject: forKey: 

    type 

    - - (NSInteger) type;
    + - (NSInteger) type;
    Availability: Not in OpenStep/MacOS-X

    @@ -2123,7 +2124,7 @@

    type 

    node types is to use this method and compare the return value with a value you previously obtained using the - + +typeFromDescription: @@ -2222,36 +2223,38 @@

    GSXMLParser : NSObject



    Method summary
    @@ -2317,7 +2320,7 @@

    loadEntity: at: 

    parser 

    - + (GSXMLParser*) parser;
    + + (GSXMLParser*) parser;
    Availability: Not in OpenStep/MacOS-X

    @@ -2325,7 +2328,7 @@

    parser 

    Creation of a new Parser (for incremental parsing) by calling - + -initWithSAXHandler: @@ -2335,14 +2338,14 @@

    parser 

    parserWithContentsOfFile: 

    - + (GSXMLParser*) parserWithContentsOfFile: (NSString*)path;
    + + (GSXMLParser*) parserWithContentsOfFile: (NSString*)path;
    Availability: Not in OpenStep/MacOS-X

    Creation of a new Parser by calling - -initWithSAXHandler:withContentsOfFile: + -initWithSAXHandler:withContentsOfFile:
    @@ -2364,14 +2367,14 @@ 

    parserWithContentsOfF

    parserWithContentsOfURL: 

    - + (GSXMLParser*) parserWithContentsOfURL: (NSURL*)url;
    + + (GSXMLParser*) parserWithContentsOfURL: (NSURL*)url;
    Availability: Not in OpenStep/MacOS-X

    @@ -2379,14 +2382,14 @@

    parserWithContentsOfUR

    parserWithData: 

    - + (GSXMLParser*) parserWithData: (NSData*)data;
    + + (GSXMLParser*) parserWithData: (NSData*)data;
    Availability: Not in OpenStep/MacOS-X

    Creation of a new Parser by calling - + -initWithSAXHandler:withData: @@ -2396,7 +2399,7 @@

    parserWithData: 

    parserWithSAXHandler: 

    - + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler;
    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler;
    Availability: Not in OpenStep/MacOS-X

    @@ -2407,7 +2410,7 @@

    parserWithSAXHandler:&nbs

    Creation of a new Parser by calling - + -initWithSAXHandler: @@ -2432,14 +2435,14 @@

    parserWithSAXHandler:&nbs

    parserWithSAXHandler: withContentsOfFile: 

    - + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withContentsOfFile: (NSString*)path;
    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withContentsOfFile: (NSString*)path;
    Availability: Not in OpenStep/MacOS-X

    Creation of a new Parser by calling - -initWithSAXHandler:withContentsOfFile: + -initWithSAXHandler:withContentsOfFile:
    @@ -2460,14 +2463,14 @@ 

    parser

    parserWithSAXHandler: withContentsOfURL: 

    - + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withContentsOfURL: (NSURL*)url;
    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withContentsOfURL: (NSURL*)url;
    Availability: Not in OpenStep/MacOS-X

    @@ -2475,14 +2478,14 @@

    parserW

    parserWithSAXHandler: withData: 

    - + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withData: (NSData*)data;
    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withData: (NSData*)data;
    Availability: Not in OpenStep/MacOS-X

    Creation of a new Parser by calling - + -initWithSAXHandler:withData: @@ -2536,7 +2539,7 @@

    abortParsing 

    columnNumber 

    - - (NSInteger) columnNumber;
    + - (NSInteger) columnNumber;
    Availability: Not in OpenStep/MacOS-X

    @@ -2563,7 +2566,7 @@

    doValidityChecking: 

    document 

    - - (GSXMLDocument*) document;
    + - (GSXMLDocument*) document;
    Availability: Not in OpenStep/MacOS-X

    @@ -2577,7 +2580,7 @@

    document 

    errNo 

    - - (NSInteger) errNo;
    + - (NSInteger) errNo;
    Availability: Not in OpenStep/MacOS-X

    @@ -2603,7 +2606,7 @@

    getWarnings: 

    initWithSAXHandler: 

    - - (id) initWithSAXHandler: (GSSAXHandler*)handler;
    + - (id) initWithSAXHandler: (GSSAXHandler*)handler;
    Availability: Not in OpenStep/MacOS-X

    @@ -2626,16 +2629,16 @@

    initWithSAXHandler: handler object supplied is nil, the parser will use an instance of - GSTreeSAXHandler + GSTreeSAXHandler to build a tree representing the parsed file. This tree will then be available (via the - + -document method) as a - GSXMLDocument + GSXMLDocument on completion of parsing.

    @@ -2656,7 +2659,7 @@

    initWithSAXHandler: 

    initWithSAXHandler: withContentsOfFile: 

    - - (id) initWithSAXHandler: (GSSAXHandler*)handler withContentsOfFile: (NSString*)path;
    + - (id) initWithSAXHandler: (GSSAXHandler*)handler withContentsOfFile: (NSString*)path;
    Availability: Not in OpenStep/MacOS-X

    @@ -2669,7 +2672,7 @@

    initWith Initialisation of a new Parser with SAX handler (if not nil) by calling - + -initWithSAXHandler: @@ -2692,7 +2695,7 @@

    initWith

    initWithSAXHandler: withContentsOfURL: 

    - - (id) initWithSAXHandler: (GSSAXHandler*)handler withContentsOfURL: (NSURL*)url;
    + - (id) initWithSAXHandler: (GSSAXHandler*)handler withContentsOfURL: (NSURL*)url;
    Availability: Not in OpenStep/MacOS-X

    @@ -2705,7 +2708,7 @@

    initWithS Initialisation of a new Parser with SAX handler (if not nil) by calling - + -initWithSAXHandler: @@ -2729,7 +2732,7 @@

    initWithS

    initWithSAXHandler: withData: 

    - - (id) initWithSAXHandler: (GSSAXHandler*)handler withData: (NSData*)data;
    + - (id) initWithSAXHandler: (GSSAXHandler*)handler withData: (NSData*)data;
    Availability: Not in OpenStep/MacOS-X

    @@ -2742,7 +2745,7 @@

    initWithSAXHandler Initialisation of a new Parser with SAX handler (if not nil) by calling - + -initWithSAXHandler: @@ -2762,6 +2765,43 @@

    initWithSAXHandler

    +

    +
    +

    +
    +

    initWithSAXHandler: withInputStream: 

    + - (id) initWithSAXHandler: (GSSAXHandler*)handler withInputStream: (NSInputStream*)stream;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + + +

    +

    + + +

    +

    + + Sets the input source for the parser to be the + specified input stream, so parsing + of the entire document will be performed rather than + incremental parsing. +

    +

    + +


    @@ -2784,7 +2824,7 @@

    keepBlanks: 

    lineNumber 

    - - (NSInteger) lineNumber;
    + - (NSInteger) lineNumber;
    Availability: Not in OpenStep/MacOS-X

    @@ -2819,9 +2859,12 @@

    parse 


    - Parse source. Return YES if parsed, - otherwise NO. This method should be - called once to parse the entire document. + Parse source. Return YES if parsed as + valid, otherwise NO. If validation + against a DTD is not enabled, the return value + simply indicates whether the xml was well formed. +
    This method should be called once to parse + the entire document.
      GSXMLParser       *p = [GSXMLParser parserWithContentsOfFile:@"macos.xml"];
    @@ -2860,7 +2903,9 @@ 

    parse: 

    should be called with an empty or nil data object to indicate end of parsing. On this final call, the return value indicates whether - the document was valid or not. + the document was valid or not. If validation to a DTD + is not enabled, the return value simply indicates + whether the xml was well formed.

    @@ -2896,6 +2941,19 @@

    publicID 


    +
    +

    resolveEntities: 

    + - (BOOL) resolveEntities: (BOOL)yesno;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    saveMessages: 

    - (void) saveMessages: (BOOL)yesno;
    @@ -3143,8 +3201,8 @@

    GSXMLRPC : NSObject

    You may also use the class to implement an XMLRPC server, by calling the - -parseMethod:params: - method to parse the data POSTed to your server, and -buildResponseWithParams: + -parseMethod:params: + method to parse the data POSTed to your server, and -buildResponseWithParams: (or -buildResponseWithFaultCode:andString:) to produce the data to be sent back to the client.

    @@ -3183,31 +3241,31 @@

    GSXMLRPC : NSObject

    Method summary
    @@ -3336,7 +3394,7 @@

    buildMethodCall: para

    buildResponseWithFaultCode: andString: 

    - - (NSString*) buildResponseWithFaultCode: (NSInteger)code andString: (NSString*)s;
    + - (NSString*) buildResponseWithFaultCode: (NSInteger)code andString: (NSString*)s;
    Availability: Not in OpenStep/MacOS-X

    @@ -3379,7 +3437,7 @@

    compact 

    Return the value set by a prior call to - + -setCompact: @@ -3397,7 +3455,7 @@

    delegate 

    Returns the delegate previously set by the - + -setDelegate: @@ -3418,7 +3476,7 @@

    initWithURL: 

    Initialise the receiver to make XMLRPC calls to the specified URL.
    This method just calls - -initWithURL:certificate:privateKey:password: + -initWithURL:certificate:privateKey:password: with nil arguments for the SSL credentials.
    @@ -3449,14 +3507,14 @@

    initW

    makeMethodCall: params: timeout: 

    - - (id) makeMethodCall: (NSString*)method params: (NSArray*)params timeout: (NSInteger)seconds;
    + - (id) makeMethodCall: (NSString*)method params: (NSArray*)params timeout: (NSInteger)seconds;
    Availability: Not in OpenStep/MacOS-X

    Calls - + -sendMethodCall:params:timeout: @@ -3553,7 +3611,7 @@

    result 

    sendMethodCall: params: timeout: 

    - - (BOOL) sendMethodCall: (NSString*)method params: (NSArray*)params timeout: (NSInteger)seconds;
    + - (BOOL) sendMethodCall: (NSString*)method params: (NSArray*)params timeout: (NSInteger)seconds;
    Availability: Not in OpenStep/MacOS-X

    @@ -3564,14 +3622,14 @@

    sendMethodCall:&nbs have been set to handle the result of this call, but if one was not set the state of the asynchronous call may be polled by calling the - + -result method, which will return nil as long as the call has not completed.
    The call may be cancelled by calling the - + -timeout: @@ -3608,13 +3666,14 @@

    setCompact: 

    setDebug: 

    - - (void) setDebug: (BOOL)flag;
    + - (int) setDebug: (int)flag;
    Availability: Not in OpenStep/MacOS-X

    Specify whether to perform debug trace on I/O +
    Return the previous value

    @@ -3631,7 +3690,7 @@

    setDelegate: 

    when an XMLRPC call completes.
    NB. this delegate is not retained, and should be removed before it is deallocated (call - + -setDelegate: @@ -3692,7 +3751,7 @@

    timeout: 

    Software documentation for the GSXPathBoolean class

    -

    GSXPathBoolean : GSXPathObject

    +

    GSXPathBoolean : GSXPathObject

    Declared in:
    @@ -3709,7 +3768,7 @@

    GSXPathBoolean : -booleanValue +
  • -booleanValue

  • @@ -3779,14 +3838,14 @@

    GSXPathContext : NSObject



    Method summary

    evaluateExpression: 

    - - (GSXPathObject*) evaluateExpression: (NSString*)XPathExpression;
    + - (GSXPathObject*) evaluateExpression: (NSString*)XPathExpression;
    Availability: Not in OpenStep/MacOS-X

    @@ -3801,7 +3860,7 @@

    evaluateExpression: 

    initWithDocument: 

    - - (id) initWithDocument: (GSXMLDocument*)d;
    + - (id) initWithDocument: (GSXMLDocument*)d;
    Availability: Not in OpenStep/MacOS-X

    @@ -3863,7 +3922,7 @@

    _lib

    Software documentation for the GSXPathNodeSet class

    -

    GSXPathNodeSet : GSXPathObject

    +

    GSXPathNodeSet : GSXPathObject

    Declared in:
    @@ -3884,14 +3943,14 @@

    GSXPathNodeSet : -count -
  • -length
  • -
  • -nodeAtIndex:
  • +
  • -count
  • +
  • -length
  • +
  • -nodeAtIndex:

  • count 

    - - (NSUInteger) count;
    + - (NSUInteger) count;
    Availability: Not in OpenStep/MacOS-X

    @@ -3904,7 +3963,7 @@

    count 

    length 

    - - (NSUInteger) length;
    + - (NSUInteger) length;
    Availability: Not in OpenStep/MacOS-X

    @@ -3917,7 +3976,7 @@

    length 

    nodeAtIndex: 

    - - (GSXMLNode*) nodeAtIndex: (NSUInteger)index;
    + - (GSXMLNode*) nodeAtIndex: (NSUInteger)index;
    Availability: Not in OpenStep/MacOS-X

    @@ -3935,7 +3994,7 @@

    nodeAtIndex: 

    Software documentation for the GSXPathNumber class

    -

    GSXPathNumber : GSXPathObject

    +

    GSXPathNumber : GSXPathObject

    Declared in:
    @@ -3952,7 +4011,7 @@

    GSXPathNumber : -doubleValue +
  • -doubleValue

  • @@ -3998,7 +4057,7 @@

    GSXPathObject : NSObject

    You don't create GSXPathObject instances, instead the XPATH system creates them and returns them as the result of the - [GSXPathContext -evaluateExpression:] + [GSXPathContext -evaluateExpression:] method.

    @@ -4045,7 +4104,7 @@

    _lib

    Software documentation for the GSXPathString class

    -

    GSXPathString : GSXPathObject

    +

    GSXPathString : GSXPathObject

    Declared in:
    @@ -4062,7 +4121,7 @@

    GSXPathString : -stringValue +
  • -stringValue

  • @@ -4083,7 +4142,7 @@

    Software documentation for the GSXMLDocument(XSLT) category

    -

    GSXMLDocument(XSLT)

    +

    GSXMLDocument(XSLT)

    Declared in:
    @@ -4100,17 +4159,17 @@

    +xsltTransformFile:stylesheet: -
  • +xsltTransformFile:stylesheet:params:
  • -
  • +xsltTransformXml:stylesheet:
  • -
  • +xsltTransformXml:stylesheet:params:
  • -
  • -xsltTransform:
  • -
  • -xsltTransform:params:
  • +
  • +xsltTransformFile:stylesheet:
  • +
  • +xsltTransformFile:stylesheet:params:
  • +
  • +xsltTransformXml:stylesheet:
  • +
  • +xsltTransformXml:stylesheet:params:
  • +
  • -xsltTransform:
  • +
  • -xsltTransform:params:

  • xsltTransformFile: stylesheet: 

    - + (GSXMLDocument*) xsltTransformFile: (NSString*)xmlFile stylesheet: (NSString*)xsltStylesheet;
    + + (GSXMLDocument*) xsltTransformFile: (NSString*)xmlFile stylesheet: (NSString*)xsltStylesheet;
    Availability: Not in OpenStep/MacOS-X

    @@ -4127,7 +4186,7 @@

    xsltTrans

    xsltTransformFile: stylesheet: params: 

    - + (GSXMLDocument*) xsltTransformFile: (NSString*)xmlFile stylesheet: (NSString*)xsltStylesheet params: (NSDictionary*)params;
    + + (GSXMLDocument*) xsltTransformFile: (NSString*)xmlFile stylesheet: (NSString*)xsltStylesheet params: (NSDictionary*)params;
    Availability: Not in OpenStep/MacOS-X

    @@ -4145,7 +4204,7 @@

    xs

    xsltTransformXml: stylesheet: 

    - + (GSXMLDocument*) xsltTransformXml: (NSData*)xmlData stylesheet: (NSData*)xsltStylesheet;
    + + (GSXMLDocument*) xsltTransformXml: (NSData*)xmlData stylesheet: (NSData*)xsltStylesheet;
    Availability: Not in OpenStep/MacOS-X

    @@ -4162,7 +4221,7 @@

    xsltTransf

    xsltTransformXml: stylesheet: params: 

    - + (GSXMLDocument*) xsltTransformXml: (NSData*)xmlData stylesheet: (NSData*)xsltStylesheet params: (NSDictionary*)params;
    + + (GSXMLDocument*) xsltTransformXml: (NSData*)xmlData stylesheet: (NSData*)xsltStylesheet params: (NSDictionary*)params;
    Availability: Not in OpenStep/MacOS-X

    @@ -4180,7 +4239,7 @@

    xsl

    xsltTransform: 

    - - (GSXMLDocument*) xsltTransform: (GSXMLDocument*)xsltStylesheet;
    + - (GSXMLDocument*) xsltTransform: (GSXMLDocument*)xsltStylesheet;
    Availability: Not in OpenStep/MacOS-X

    @@ -4196,7 +4255,7 @@

    xsltTransform: 

    xsltTransform: params: 

    - - (GSXMLDocument*) xsltTransform: (GSXMLDocument*)xsltStylesheet params: (NSDictionary*)params;
    + - (GSXMLDocument*) xsltTransform: (GSXMLDocument*)xsltStylesheet params: (NSDictionary*)params;
    Availability: Not in OpenStep/MacOS-X

    @@ -4218,7 +4277,7 @@

    Software documentation for the GSXMLRPC(Delegate) category

    -

    GSXMLRPC(Delegate)

    +

    GSXMLRPC(Delegate)

    Declared in:
    @@ -4233,7 +4292,7 @@

    + -sendMethodCall:params:timeout: @@ -4242,12 +4301,12 @@

    -completedXMLRPC: +
  • -completedXMLRPC:

  • completedXMLRPC: 

    - - (void) completedXMLRPC: (GSXMLRPC*)sender;
    + - (void) completedXMLRPC: (GSXMLRPC*)sender;
    Availability: Not in OpenStep/MacOS-X

    @@ -4257,7 +4316,7 @@

    completedXMLRPC: < Called by the sender when an XMLRPC method call completes (either success or failure). The delegate may then call the - + -result @@ -4290,8 +4349,8 @@

    NSString(GSXML)

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.gsdoc new file mode 100644 index 0000000..c7224b9 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.gsdoc @@ -0,0 +1,13 @@ + + + + + Macros + + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.html index 22ced26..f5aa5eb 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/MacrosTOC.html @@ -11,48 +11,80 @@

    Macros

    - ASSIGN
    - ASSIGNCOPY
    - AUTORELEASE
    - CALL_BLOCK
    - CALL_BLOCK_NO_ARGS
    - CHECK_INDEX_RANGE_ERROR
    - CREATE_AUTORELEASE_POOL
    - DESTROY
    - GSLocalizedStaticString
    - GSOnceFLog
    - GSOnceMLog
    - GS_API_LATEST
    - GS_API_MACOSX
    - GS_API_NONE
    - GS_API_OPENSTEP
    - GS_API_OSSPEC
    - GS_API_VERSION
    - GS_INITIALIZED_LOCK
    - GS_MAX_OBJECTS_FROM_STACK
    - GS_RANGE_CHECK
    - GS_USEIDLIST
    - GS_USEIDPAIRLIST
    - NSDebugFLLog
    - NSDebugFLog
    - NSDebugFRLog
    - NSDebugLLog
    - NSDebugLog
    - NSDebugMLLog
    - NSDebugMLog
    - NSDebugMRLog
    - NSWarnFLog
    - NSWarnLog
    - NSWarnMLog
    - OS_API_VERSION
    - RECREATE_AUTORELEASE_POOL
    - RELEASE
    - RETAIN
    - TEST_AUTORELEASE
    - TEST_RELEASE
    - TEST_RETAIN
    - _
    - __
    + ALog
    + ASSIGN
    + ASSIGNCOPY
    + ASSIGNMUTABLECOPY
    + AUTORELEASE
    + BLOCK_SCOPE
    + CALL_BLOCK
    + CALL_BLOCK_NO_ARGS
    + CALL_BLOCK_RET
    + CALL_BLOCK_RET_NO_ARGS
    + CALL_NON_NULL_BLOCK
    + CALL_NON_NULL_BLOCK_NO_ARGS
    + CHECK_INDEX_RANGE_ERROR
    + CREATE_AUTORELEASE_POOL
    + DEALLOC
    + DEFINE_BLOCK_TYPE
    + DEFINE_BLOCK_TYPE_NO_ARGS
    + DESTROY
    + DLog
    + ENTER_POOL
    + GSLocalizedStaticString
    + GSOnceFLog
    + GSOnceMLog
    + GS_API_LATEST
    + GS_API_MACOSX
    + GS_API_NONE
    + GS_API_OPENSTEP
    + GS_API_OSSPEC
    + GS_API_VERSION
    + GS_CLANG_MINREQ
    + GS_DEPRECATED_FUNC
    + GS_EXPOSE
    + GS_GCC_MINREQ
    + GS_INITIALIZED_LOCK
    + GS_LOCALISATION_BUNDLE
    + GS_MAX_OBJECTS_FROM_STACK
    + GS_NORETURN_METHOD
    + GS_PART_MAP_ENUMERATOR
    + GS_RANGE_CHECK
    + GS_UNIMPLEMENTED
    + GS_UNUSED_ARG
    + GS_UNUSED_FUNC
    + GS_UNUSED_IVAR
    + GS_USEIDLIST
    + GS_USEIDPAIRLIST
    + IF_NO_ARC
    + IF_NO_GC
    + LEAVE_POOL
    + MAC_OS_X_VERSION_MAX_ALLOWED
    + NSDebugFLLog
    + NSDebugFLog
    + NSDebugFRLog
    + NSDebugLLog
    + NSDebugLog
    + NSDebugMLLog
    + NSDebugMLog
    + NSDebugMRLog
    + NSWarnFLog
    + NSWarnLog
    + NSWarnMLog
    + NS_CONSUMED
    + NS_CONSUMES_SELF
    + NS_RETURNS_NOT_RETAINED
    + NS_RETURNS_RETAINED
    + OS_API_VERSION
    + RECREATE_AUTORELEASE_POOL
    + RELEASE
    + RETAIN
    + TEST_AUTORELEASE
    + TEST_RELEASE
    + TEST_RETAIN
    + _
    + __
    + __has_feature

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.gsdoc new file mode 100644 index 0000000..cf51372 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.gsdoc @@ -0,0 +1,65 @@ + + + + + NSArray+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSArray(GNUstepBase) + category + + + GNUstepBase/NSArray+GNUstepBase.h + + Description forthcoming. + + + insertionPosition: + item + usingFunction: + sorter + context: + context + +

    + Method for working with sorted arrays - use a + binary chop to determine the insertion location + for an object. If equal objects already exist in the + array, they will be located immediately before the + insertion position. +

    +

    + The comparator function takes two items as arguments, + the first is the item to be added, the + second is the item already in the + array. The function should return + NSOrderedAscending if the + item to be added is 'less than' the + item in the array, NSOrderedDescending + if it is greater, and NSOrderedSame if it is equal. +

    +
    +
    + + insertionPosition: + item + usingSelector: + comp + + Description forthcoming. + + +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.html index 587729d..27ba7b1 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSArray+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -42,13 +43,13 @@

    NSArray(GNUstepBase)

    Method summary

    insertionPosition: usingFunction: context: 

    - - (NSUInteger) insertionPosition: (id)item usingFunction: (NSComparisonResult(*)(id,id,void*))sorter context: (void*)context;
    + - (NSUInteger) insertionPosition: (id)item usingFunction: (NSComparisonResult(*)(id,id,void*))sorter context: (void*)context;
    Availability: Not in OpenStep/MacOS-X

    @@ -87,7 +88,7 @@

    insertionPosition: usingSelector: 

    - - (NSUInteger) insertionPosition: (id)item usingSelector: (SEL)comp;
    + - (NSUInteger) insertionPosition: (id)item usingSelector: (SEL)comp;
    Availability: Not in OpenStep/MacOS-X

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.gsdoc new file mode 100644 index 0000000..b875662 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.gsdoc @@ -0,0 +1,39 @@ + + + + + NSAttributedString+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the + NSAttributedString(GNUstepBase) + category + + + GNUstepBase/NSAttributedString+GNUstepBase.h + + Description forthcoming. + + + attributedSubstringWithRange: + aRange + + Deprecated synonym for + attributedSubstringFromRange: + for consistency with NSString + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.html index 1a2b3d3..19f3a36 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSAttributedString+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -43,7 +44,7 @@

    NSAttributedString(GNUste

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.gsdoc new file mode 100644 index 0000000..7d1095f --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.gsdoc @@ -0,0 +1,40 @@ + + + + + NSBundle+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSBundle(GNUstepBase) + category + + + GNUstepBase/NSBundle+GNUstepBase.h + + Description forthcoming. + + + pathForLibraryResource: + name + ofType: + ext + inDirectory: + bundlePath + + Description forthcoming. + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.html index ad243fd..3160825 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSBundle+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -42,7 +43,7 @@

    NSBundle(GNUstepBase)

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.gsdoc new file mode 100644 index 0000000..9db9397 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.gsdoc @@ -0,0 +1,57 @@ + + + + + NSCalendarDate+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the + NSCalendarDate(GNUstepBase) + category + + + GNUstepBase/NSCalendarDate+GNUstepBase.h + + Description forthcoming. + + + isoYear + + According to the ISO definition of a week, each + year begins with the Monday of the week containing the + 4th of January. If we a have a date early in January or + late in December we therefore may need to adjust the + year to match the definition of a week.
    This + method is used to return the ISO year rather than + the normal calendar year. +
    +
    + + weekOfYear + + The ISO standard week of the year is based on the first + week of the year being that week (starting on monday) + for which the thursday is on or after the first of + january.
    This has the effect that, if + january first is a friday, saturday or sunday, the + days of that week (up to and including the sunday) are + considered to be in week 53 of the preceding + year. Similarly if the last day of the year is a + monday tuesday or wednesday, these days are part of + week 1 of the next year. +
    +
    +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.html index 11ef3b3..b404235 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSCalendarDate+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -43,13 +44,13 @@

    NSCalendarDate(GNUstepBase Method summary

    isoYear 

    - - (NSUInteger) isoYear;
    + - (NSUInteger) isoYear;
    Availability: Not in OpenStep/MacOS-X

    @@ -68,7 +69,7 @@

    isoYear 

    weekOfYear 

    - - (NSInteger) weekOfYear;
    + - (NSInteger) weekOfYear;
    Availability: Not in OpenStep/MacOS-X

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.gsdoc new file mode 100644 index 0000000..845c307 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.gsdoc @@ -0,0 +1,193 @@ + + + + + NSData+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSData(GNUstepBase) + category + + + GNUstepBase/NSData+GNUstepBase.h + + Description forthcoming. + + + dataWithRandomBytesOfLength: + length + + Returns an autoreleased data instance initialised + with pseudo-random bytes of the specified + length.
    On failure returns + nil. This may be due to:
    A zero + length or unreasonably large + length argument or,
    Failure to + allocate memory to hold the random data or,
    + Failure of the underlying random data generation. +
    +
    + + escapedRepresentation + + Returns an NSString object containing a backslash + escaped representation of the receiver. + + + + escapedRepresentation: + length + + Returns a buffer containing an ASCII backslash + escaped representation of the receiver, (and + optionally the size of the buffer excluding the + trailing nul terminator). + + + + gunzipped + + Returns data formed by gunzipping the contents of + the receiver.
    If the receiver did not contain + data produced by gzip, this method simply returns the + receiver.
    If the gnuzipping failed, this + method returns nil.
    Otherwise, + the returned object is an autorelease mutable data + object. +
    +
    + + gzipped: + level + + Returns data formed by gzipping the contents of the + receiver using the specified compression + level (from 0 to 9 with 0 meaning no + compression and 9 meaning maximum compression). + Use a value outside the 0 to 9 range (eg -1) to employ + the default compression.
    NB. It is permissable + to gzip an empty data object, and it is also permissable + to gzip a data object which already contains gzipped + data.
    Returns nil on failure. +
    +
    + + hexadecimalRepresentation + + Returns an NSString object containing an ASCII + hexadecimal representation of the receiver. + This means that the returned object will contain + exactly twice as many characters as there are bytes + as the receiver, as each byte in the receiver is + represented by two hexadecimal digits.
    + The high order four bits of each byte is encoded before + the low order four bits. Capital letters 'A' to 'F' are + used to represent values from 10 to 15. +
    +
    + + hexadecimalRepresentation: + length + + Returns a buffer containing an ASCII string with a + nul terminated hexadecimal representation of the + receiver, (and optionally the size of the buffer + excluding the trailing nul terminator). + + + + initWithHexadecimalRepresentation: + string + + Initialises the receiver with the supplied + string data which contains a hexadecimal + coding of the bytes. The parsing of the + string is fairly tolerant, ignoring + whitespace and permitting both upper and lower + case hexadecimal digits (the + + -hexadecimalRepresentation + + method produces a string using only + uppercase digits with no white space).
    If + the string does not contain one or more + pairs of hexadecimal digits then an exception is + raised. +
    +
    + + isGzipped + + Returns YES if the receiver is a + non-empty data object with a gzip header, + NO otherwise. + + + + md5Digest + + Creates an MD5 digest of the information stored in + the receiver and returns it as an autoreleased 16 byte + NSData object.
    If you need to produce a + digest of string information, you need to decide + what character encoding is to be used and convert your + string to a data object of that encoding type first + using the + [NSString -dataUsingEncoding:] method - + + myDigest = [[myString dataUsingEncoding: NSUTF8StringEncoding] md5Digest]; + + If you need to use the digest in a human readable form, + you will probably want it to be seen as 32 hexadecimal + digits, and can do that using the + + -hexadecimalRepresentation + + method. +
    +
    + + uudecodeInto: + decoded + name: + namePtr + mode: + modePtr + + Decodes the source data from uuencoded and return + the result.
    Returns the encoded file name in + namePtr if it is not null. Returns the + encoded file mode in modePtr if it is + not null. +
    +
    + + uuencodeInto: + encoded + name: + name + mode: + mode + + Encode the source data to uuencoded.
    Uses the + supplied name as the filename in the + encoded data, and says that the file + mode is as specified.
    If no + name is supplied, uses + untitled as the name. +
    +
    +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.html index 7a666eb..e118cda 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSData+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -42,23 +43,23 @@

    NSData(GNUstepBase)

    Method summary

    dataWithRandomBytesOfLength: 

    - + (id) dataWithRandomBytesOfLength: (NSUInteger)length;
    + + (id) dataWithRandomBytesOfLength: (NSUInteger)length;
    Availability: Not in OpenStep/MacOS-X

    @@ -92,7 +93,7 @@

    escapedRepresenta

    escapedRepresentation: 

    - - (char*) escapedRepresentation: (NSUInteger*)length;
    + - (char*) escapedRepresentation: (NSUInteger*)length;
    Availability: Not in OpenStep/MacOS-X

    @@ -169,7 +170,7 @@

    hexadecimalRe

    hexadecimalRepresentation: 

    - - (char*) hexadecimalRepresentation: (NSUInteger*)length;
    + - (char*) hexadecimalRepresentation: (NSUInteger*)length;
    Availability: Not in OpenStep/MacOS-X

    @@ -197,7 +198,7 @@

    init string is fairly tolerant, ignoring whitespace and permitting both upper and lower case hexadecimal digits (the - + -hexadecimalRepresentation @@ -250,7 +251,7 @@

    md5Digest 

    If you need to use the digest in a human readable form, you will probably want it to be seen as 32 hexadecimal digits, and can do that using the - + -hexadecimalRepresentation @@ -261,7 +262,7 @@

    md5Digest 

    uudecodeInto: name: mode: 

    - - (BOOL) uudecodeInto: (NSMutableData*)decoded name: (NSString**)namePtr mode: (NSInteger*)modePtr;
    + - (BOOL) uudecodeInto: (NSMutableData*)decoded name: (NSString**)namePtr mode: (NSInteger*)modePtr;
    Availability: Not in OpenStep/MacOS-X

    @@ -278,7 +279,7 @@

    uudecodeInto:&n

    uuencodeInto: name: mode: 

    - - (BOOL) uuencodeInto: (NSMutableData*)encoded name: (NSString*)name mode: (NSInteger)mode;
    + - (BOOL) uuencodeInto: (NSMutableData*)encoded name: (NSString*)name mode: (NSInteger)mode;
    Availability: Not in OpenStep/MacOS-X

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.gsdoc new file mode 100644 index 0000000..bddb39b --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.gsdoc @@ -0,0 +1,46 @@ + + + + + NSFileHandle+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the + NSFileHandle(GNUstepBase) category + + + GNUstepBase/NSFileHandle+GNUstepBase.h + + Description forthcoming. + + + fileHandleAsServerAtAddress: + address + service: + service + protocol: + protocol + + Description forthcoming. + + + + socketAddress + + Description forthcoming. + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.html index 8abeba7..8cee41f 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSFileHandle+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -42,8 +43,8 @@

    NSFileHandle(GNUstepBase) Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.gsdoc new file mode 100644 index 0000000..9cb09ce --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.gsdoc @@ -0,0 +1,114 @@ + + + + + NSLock+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSLock(GNUstepBase) + category + + + GNUstepBase/NSLock+GNUstepBase.h + + Returns IDENT which will be initialized to an + instance of a CLASSNAME in a thread safe manner. If + IDENT has been previously initialized this macro merely + returns IDENT. IDENT is considered uninitialized, if + it contains nil. CLASSNAME must be either + NSLock, NSRecursiveLock or one of their subclasses. + See + [NSLock(GNUstepBase) +newLockAt:] for details. This macro is intended for code that cannot insure that a lock can be initialized in thread safe manner otherwise. + + NSLock *my_lock = nil; + + void function (void) + { + [GS_INITIALIZED_LOCK(my_lock, NSLock) lock]; + do_work (); + [my_lock unlock]; + } + + + + + newLockAt: + location + + Initializes the id pointed to + by location with a new instance of the + receiver's class in a thread safe manner, unless + it has been previously initialized. Returns the contents + pointed to by location. The + location is considered unintialized if it + contains nil.
    This method is + used in the GS_INITIALIZED_LOCK macro to initialize + lock variables when it cannot be insured that they can + be initialized in a thread safe environment. + + NSLock *my_lock = nil; + + void function (void) + { + [GS_INITIALIZED_LOCK(my_lock, NSLock) lock]; + do_work (); + [my_lock unlock]; + } + + +
    +
    +
    +
    + + + Software documentation for the + NSRecursiveLock(GNUstepBase) + category + + + GNUstepBase/NSLock+GNUstepBase.h + + Description forthcoming. + + + newLockAt: + location + + Initializes the id pointed to + by location with a new instance of the + receiver's class in a thread safe manner, unless + it has been previously initialized. Returns the contents + pointed to by location. The + location is considered unintialized if it + contains nil.
    This method is + used in the GS_INITIALIZED_LOCK macro to initialize + lock variables when it cannot be insured that they can + be initialized in a thread safe environment. + + NSLock *my_lock = nil; + + void function (void) + { + [GS_INITIALIZED_LOCK(my_lock, NSLock) lock]; + do_work (); + [my_lock unlock]; + } + + +
    +
    +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.html index 4290d92..b029445 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSLock+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -51,12 +52,33 @@

    NSLock(GNUstepBase)


    - Description forthcoming. + Returns IDENT which will be initialized to an + instance of a CLASSNAME in a thread safe manner. If + IDENT has been previously initialized this macro merely + returns IDENT. IDENT is considered uninitialized, if + it contains nil. CLASSNAME must be either + NSLock, NSRecursiveLock or one of their subclasses. + See + [NSLock(GNUstepBase) +newLockAt:] + for details. This macro is intended for code that cannot insure that a lock can be initialized in thread safe manner otherwise. + +
    + NSLock *my_lock = nil;
    +
    + void function (void)
    + {
    +   [GS_INITIALIZED_LOCK(my_lock, NSLock) lock];
    +   do_work ();
    +   [my_lock unlock];
    + }
    +
    + 
    +
    Method summary
    @@ -117,7 +139,7 @@

    NSRecursiveLock(GNUstepBase<

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.gsdoc new file mode 100644 index 0000000..18479b0 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.gsdoc @@ -0,0 +1,77 @@ + + + + + NSMutableString+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the + NSMutableString(GNUstepBase) + category + + + GNUstepBase/NSMutableString+GNUstepBase.h + + Description forthcoming. + + + deletePrefix: + prefix + + Description forthcoming. + + + + deleteSuffix: + suffix + + Description forthcoming. + + + + immutableProxy + + Description forthcoming. + + + + replaceString: + replace + withString: + by + + Description forthcoming. + + + + trimLeadSpaces + + Description forthcoming. + + + + trimSpaces + + Description forthcoming. + + + + trimTailSpaces + + Description forthcoming. + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.html index 46471cf..260c8ac 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSMutableString+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -43,13 +44,13 @@

    NSMutableString(GNUstepBase<

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.gsdoc new file mode 100644 index 0000000..8cd4302 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.gsdoc @@ -0,0 +1,45 @@ + + + + + NSNumber+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSNumber(GNUstepBase) + category + + + GNUstepBase/NSNumber+GNUstepBase.h + + Description forthcoming. + + + valueFromString: + string + + Parses string as a + double, + int, or + + unsigned int + + depending on what characters are present. Uses + atof and atoi which don't + report errors, so be careful if the + string might contain an invalid value. + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.html index a98532d..2123053 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSNumber+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -42,7 +43,7 @@

    NSNumber(GNUstepBase)

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.gsdoc new file mode 100644 index 0000000..3ae724d --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.gsdoc @@ -0,0 +1,467 @@ + + + + + NSObject+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSObject(GNUstepBase) + informal protocol + + + GNUstepBase/NSObject+GNUstepBase.h + + Description forthcoming. + + + compare: + anObject + + WARNING: The + + -compare: + + method for NSObject is deprecated due to subclasses + declaring the same selector with conflicting + signatures. Comparision of arbitrary objects is + not just meaningless but also dangerous as most + concrete implementations expect comparable objects + as arguments often accessing instance variables + directly. This method will be removed in a future + release. + + + + isInstance + + For backward compatibility only... use + "class_isMetaClass()" on the class of + the receiver instead. + + + + makeImmutable + + Transmutes the receiver into an immutable + version of the same object. Returns + YES if the receiver has become + immutable, NO otherwise.
    The + default implementation returns NO. +
    Mutable classes which have an immutable + counterpart they can efficiently change into, + should override to transmute themselves and return + YES.
    Immutable classes should + override this to simply return YES + with no further action.
    This method is used in + methods which are declared to return immutable + objects (eg. an NSArray), but which create and + build mutable ones internally. +
    +
    + + makeImmutableCopyOnFail: + force + + DEPRECATED... do not use. Transmutes the + receiver into an immutable version of the same + object and returns the result.
    If the + receiver is not a mutable object or cannot be + simply transmuted, then this method either returns + the receiver unchanged or, if the force flag + is set to YES, returns an autoreleased copy + of the receiver.
    Mutable classes should override + this default implementation.
    This method is + used in methods which are declared to return immutable + objects (eg. an NSArray), but which create and + build mutable ones internally. +
    +
    + + notImplemented: + aSel + + Message sent when an implementation wants to + explicitly exclude a method (but cannot due to + compiler constraint), and wants to make sure it is + not called by mistake. Default implementation raises an + exception at runtime. + + + + shouldNotImplement: + aSel + + Message sent when an implementation wants to + explicitly exclude a method (but cannot due to + compiler constraint) and forbid that subclasses + implement it. Default implementation raises an + exception at runtime. If a subclass does + implement this method, however, the superclass's + implementation will not be called, so this + is not a perfect mechanism. + + + + subclassResponsibility: + aSel + + Message sent when an implementation wants to + explicitly require a subclass to implement a + method (but cannot at compile time since there is no + abstract keyword in Objective-C). + Default implementation raises an exception at + runtime to alert developer that he/she forgot to + override a method. + + +
    +
    + + + Software documentation for the NSObject(GSAtExit) + informal protocol + + + GNUstepBase/NSObject+GNUstepBase.h + + This is an informal protocol... classes may implement + the method and register themselves to have it called on + process exit. + + + atExit + + This method is called on exit for any class which + implements it and which has called + + +registerAtExit + + to register it to be called.
    The order in which + methods for different classes is called is the + reverse of the order in which the classes were + registered, but it's best to assume the method + can not depend on any other class being in a usable + state at the point when the method is called (rather + like +load).
    Typical use would be to release + memory occupied by class data structures so that + memory usage analysis software will not think the + memory has been leaked. +
    +
    +
    +
    + + + Software documentation for the NSObject(GSCleanup) + informal protocol + + + GNUstepBase/NSObject+GNUstepBase.h + + Category for methods handling leaked memory cleanup + on exit of process (for use when debugging memory leaks). +
    You enable this by calling the + + +setShouldCleanUp: + + method (done implicitly by gnustep-base if the + GNUSTEP_SHOULD_CLEAN_UP environment + variable is set to YES).
    Your + class then has two options for performing cleanup when + the process ends: +

    + 1. Use the +leak: + method to register objects which are simply to be + retained until the process ends, and then either + ignored or released depending on the cleanup + setting in force. This mechanism is simple and + should be sufficient for many classes. +

    +

    + 2. Implement a + + +atExit + + method to be run when the process ends and, within + your + + +initialize + + implementation, call + + +shouldCleanUp + + to determine whether cleanup should be done, and if it + returns YES then call + + +registerAtExit + + to have your + + +atExit + + method called when the process terminates. +

    +

    + The order in which 'leaked' objects are released and + + +atExit + + methods are called on process exist is the reverse + of the order in which they werse set up suing this API. +

    +
    + + leak: + anObject + + This method simply retains its argument so that it + will never be deallocated during normal operation, but + keeps track of it so that it is released during + process exit if cleanup is enabled.
    Returns + its argument. +
    +
    + + leakAt: + anAddress + + This method retains the object at *anAddress so that + it will never be deallocated during normal operation, + but keeps track of the address so that the object is + released and the address is zeroed during process + exit if cleanup is enabled.
    Returns the object + at *anAddress. +
    +
    + + registerAtExit + + Sets the receiver to have its + + +atExit + + method called at the point when the process + terminates.
    Returns YES on + success and NO on failure (if the + class does not implement the method or if it is + already registered to call it).
    Implemented + as a call to + + +registerAtExit: + + with the selector for the + + +atExit + + method as its argument. +
    +
    + + registerAtExit: + aSelector + + Sets the receiver to have the specified method called + at the point when the process terminates.
    Returns + YES on success and NO on + failure (if the class does not implement the method + ir if it is already registered to call it). +
    +
    + + setShouldCleanUp: + aFlag + + Specifies the default cleanup behavior on process + exit... the value returned by the NSObject + implementation of the + + +shouldCleanUp + + method.
    Calling this method with a + YES argument implicitly enables the + support for cleanup at exit.
    The GNUstep + Base library calls this method with the value obtained + from the GNUSTEP_SHOULD_CLEAN_UP environment variable + when NSObject is initialised. +
    +
    + + shouldCleanUp + + Returns a flag indicating whether the receiver + should clean up its data structures etc at process + exit.
    The NSObject implementation returns the + value set by the + + +setShouldCleanUp: + + method but subclasses may override this. +
    +
    +
    +
    + + + Software documentation for the + NSObject(MemoryFootprint) informal + protocol + + + GNUstepBase/NSObject+GNUstepBase.h + + This is an informal protocol; classes may implement the + + +contentSizeOf:excluding: + + method to report how much memory is used by any + objects/pointers it acts as a container for. +
    Code may call the + + -sizeInBytesExcluding: + + or -sizeInBytes + method to determine how much heap memory an object + (and its content) occupies. +
    + + contentSizeOf: + obj + excluding: + exclude + + This method returns the size of the memory used by the + object instance variables of the target object + (excluding any in the specified set).
    + This is not the memory occupied by instance variable + pointers. It is the memory referenced by any + objects inside the target.
    This method is + not intended to be overridden, rather it is provided + for use as a helper for the + + -sizeOfContentExcluding: + + method.
    This method must not be called for a + mutable object unless it is protected by a locking + mechanism to prevent mutation while it is + examining the instance variables of the object. + + @interface foo : bar + { + id a; // Some object + id b; // More storage + unsigned capacity; // Buffer size + char *p; // The buffer + } + @end + @implementation foo + - (NSUInteger) sizeOfContentExcluding: (NSHashTable*)exclude +{ + NSUInteger size; + + // get the size of the objects (a and b) + size = [NSObject contentSizeOf: self + excluding: exclude]; + // add the memory pointed to by p + size += capacity * sizeof(char); + return size; +} +@end + +
    +
    + + sizeInBytes + + Convenience method calling + + -sizeInBytesExcluding: + + with a newly created exclusion hash table, and + destroying the table once the size is + calculated. + + + + sizeInBytesExcluding: + exclude + + This method returns the memory usage of the receiver, + excluding any objects already present in the + exclude table.
    The argument is a + hash table configured to hold non-retained pointer + objects and is used to inform the receiver that its + size should not be counted again if it's already in + the table.
    The NSObject implementation returns + zero if the receiver is in the table, but otherwise + adds itself to the table and returns its memory + footprint (the sum of all of its instance + variables, plus the result of calling + + -sizeOfContentExcluding: + + for the instance).
    Classes should not override + this method, instead they should implement + + -sizeOfContentExcluding: + + to return the extra memory usage of the pointer/object + instance variables (heap memory) they add to their + superclass.
    NB. mutable objects must + either prevent mutation while calculating their + content size, or must override + + -sizeOfContentExcluding: + + to refrain from dealing with content which might change. +
    +
    + + sizeOfContentExcluding: + exclude + + This method is called by + + -sizeInBytesExcluding: + + to calculate the size of any objects or heap memory + contained by the receiver.
    The base class + implementation simply returns zero (as it is + not possible to safely calculate content sizes of + mutable objects), but subclasses should override it + to provide correct information where possible (eg if the + object is immutable or if locking is used to prevent + mutation while calculating content size).
    + Subclasses may use the + + +contentSizeOf:excluding: + + method as a convenience to provide the sizes of + object instance variables. +
    +
    + + sizeOfInstance + + Helper method called by + + -sizeInBytesExcluding: + + to return the size of the instance excluding any + contents (things referenced by pointers). + + +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.html index 04c7fa7..cab9e09 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSObject+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -64,12 +65,13 @@

    NSObject(GNUstepBase)

    Method summary
    @@ -81,7 +83,7 @@

    compare: 

    WARNING: The - + -compare: @@ -106,11 +108,34 @@

    isInstance 

    For backward compatibility only... use - - class_isMetaClass() - - - on the class of the receiver instead. + "class_isMetaClass()" on the class of + the receiver instead. + +
    +
    +
    +
    +

    makeImmutable 

    + - (BOOL) makeImmutable;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Transmutes the receiver into an immutable + version of the same object. Returns + YES if the receiver has become + immutable, NO otherwise.
    The + default implementation returns NO. +
    Mutable classes which have an immutable + counterpart they can efficiently change into, + should override to transmute themselves and return + YES.
    Immutable classes should + override this to simply return YES + with no further action.
    This method is used in + methods which are declared to return immutable + objects (eg. an NSArray), but which create and + build mutable ones internally.

    @@ -123,16 +148,16 @@

    makeImmutabl
    Method summary
    @@ -232,7 +257,7 @@

    atExit 

    This method is called on exit for any class which implements it and which has called - + +registerAtExit @@ -270,7 +295,7 @@

    NSObject(GSCleanup)

    Category for methods handling leaked memory cleanup on exit of process (for use when debugging memory leaks).
    You enable this by calling the - + +setShouldCleanUp: @@ -283,7 +308,7 @@

    NSObject(GSCleanup)

    - 1. Use the +leak: + 1. Use the +leak: method to register objects which are simply to be retained until the process ends, and then either @@ -298,7 +323,7 @@

    NSObject(GSCleanup)

    2. Implement a - + +atExit @@ -309,18 +334,18 @@

    NSObject(GSCleanup)

    implementation, call - + +shouldCleanUp to determine whether cleanup should be done, and if it returns YES then call - + +registerAtExit to have your - + +atExit @@ -333,7 +358,7 @@

    NSObject(GSCleanup)

    The order in which 'leaked' objects are released and - + +atExit @@ -346,12 +371,12 @@

    NSObject(GSCleanup)

    Method summary
    @@ -398,7 +423,7 @@

    registerAtExit 
    Sets the receiver to have its - + +atExit @@ -408,12 +433,12 @@

    registerAtExit  class does not implement the method or if it is already registered to call it).
    Implemented as a call to - + +registerAtExit: with the selector for the - + +atExit @@ -450,20 +475,16 @@

    setShouldCleanUp:&nbs Specifies the default cleanup behavior on process exit... the value returned by the NSObject implementation of the - - +shouldClanUp - + + +shouldCleanUp + method.
    Calling this method with a - YES argument implicitly calls the - - +enableAtExit - - - method as well.
    The GNUstep Base library - calls this method with the value obtained from the - GNUSTEP_SHOULD_CLEAN_UP environment - variable when NSObject is initialised. + YES argument implicitly enables the + support for cleanup at exit.
    The GNUstep + Base library calls this method with the value obtained + from the GNUSTEP_SHOULD_CLEAN_UP environment variable + when NSObject is initialised.


    @@ -480,7 +501,7 @@

    shouldCleanUp  The NSObject implementation returns the value set by the - + +setShouldCleanUp: @@ -507,25 +528,196 @@

    NSObject(MemoryFootprint)
    - This is an informal protocol... classes may implement - the method to report how much memory is used by the - instance and any objects it acts as a container for. + This is an informal protocol; classes may implement the + + +contentSizeOf:excluding: + + + method to report how much memory is used by any + objects/pointers it acts as a container for. +
    Code may call the + + -sizeInBytesExcluding: + + + or -sizeInBytes + + method to determine how much heap memory an object + (and its content) occupies.
    Method summary
    +
    +

    contentSizeOf: excluding: 

    + + (NSUInteger) contentSizeOf: (NSObject*)obj excluding: (NSHashTable*)exclude;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method returns the size of the memory used by the + object instance variables of the target object + (excluding any in the specified set).
    + This is not the memory occupied by instance variable + pointers. It is the memory referenced by any + objects inside the target.
    This method is + not intended to be overridden, rather it is provided + for use as a helper for the + + -sizeOfContentExcluding: + + + method.
    This method must not be called for a + mutable object unless it is protected by a locking + mechanism to prevent mutation while it is + examining the instance variables of the object. + +
    + @interface	foo : bar
    + {
    +   id	a;		// Some object
    +   id b;		// More storage
    +   unsigned capacity;	// Buffer size
    +   char *p;		// The buffer
    + }
    + @end
    + @implementation foo
    + - (NSUInteger) sizeOfContentExcluding: (NSHashTable*)exclude
    +{ 
    +  NSUInteger	size;
    +
    +  // get the size of the objects (a and b)
    +  size = [NSObject contentSizeOf: self
    +			 excluding: exclude];
    +  // add the memory pointed to by p
    +  size += capacity * sizeof(char);
    +  return size;
    +}
    +@end
    + 
    + + +
    +
    +
    +
    +

    sizeInBytes 

    + - (NSUInteger) sizeInBytes;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method calling + + -sizeInBytesExcluding: + + + with a newly created exclusion hash table, and + destroying the table once the size is + calculated. + +
    +
    +

    sizeInBytesExcluding: 

    - - (NSUInteger) sizeInBytesExcluding: (NSHashTable*)exclude;
    + - (NSUInteger) sizeInBytesExcluding: (NSHashTable*)exclude;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method returns the memory usage of the receiver, + excluding any objects already present in the + exclude table.
    The argument is a + hash table configured to hold non-retained pointer + objects and is used to inform the receiver that its + size should not be counted again if it's already in + the table.
    The NSObject implementation returns + zero if the receiver is in the table, but otherwise + adds itself to the table and returns its memory + footprint (the sum of all of its instance + variables, plus the result of calling + + -sizeOfContentExcluding: + + + for the instance).
    Classes should not override + this method, instead they should implement + + -sizeOfContentExcluding: + + + to return the extra memory usage of the pointer/object + instance variables (heap memory) they add to their + superclass.
    NB. mutable objects must + either prevent mutation while calculating their + content size, or must override + + -sizeOfContentExcluding: + + + to refrain from dealing with content which might change. + +
    +
    +
    +
    +

    sizeOfContentExcluding: 

    + - (NSUInteger) sizeOfContentExcluding: (NSHashTable*)exclude;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method is called by + + -sizeInBytesExcluding: + + + to calculate the size of any objects or heap memory + contained by the receiver.
    The base class + implementation simply returns zero (as it is + not possible to safely calculate content sizes of + mutable objects), but subclasses should override it + to provide correct information where possible (eg if the + object is immutable or if locking is used to prevent + mutation while calculating content size).
    + Subclasses may use the + + +contentSizeOf:excluding: + + + method as a convenience to provide the sizes of + object instance variables. + +
    +
    +
    +
    +

    sizeOfInstance 

    + - (NSUInteger) sizeOfInstance;
    Availability: Not in OpenStep/MacOS-X

    - Description forthcoming. + Helper method called by + + -sizeInBytesExcluding: + + + to return the size of the instance excluding any + contents (things referenced by pointers).

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.gsdoc new file mode 100644 index 0000000..ad4bac8 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.gsdoc @@ -0,0 +1,60 @@ + + + + + NSProcessInfo+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the + NSProcessInfo(GNUstepBase) category + + + GNUstepBase/NSProcessInfo+GNUstepBase.h + + Description forthcoming. + + + debugLoggingEnabled + + Returns a indication of whether debug logging is + enabled. This returns YES unless a + call to + + -setDebugLoggingEnabled: + + has been used to turn logging off. + + + + debugSet + + This method returns a set of debug levels set using + the --GNU-Debug=... command line option and/or the + GNU-Debug user default.
    You can modify + this set to change the debug logging under your + programs control... but such modifications are not + thread-safe. +
    +
    + + setDebugLoggingEnabled: + flag + + This method permits you to turn all debug logging on + or off without modifying the set of debug levels in use. + + +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.html index e5eb3e0..9d5fac2 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSProcessInfo+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -42,9 +43,9 @@

    NSProcessInfo(GNUstepBase)

    Method summary
    @@ -58,7 +59,7 @@

    debugLogging Returns a indication of whether debug logging is enabled. This returns YES unless a call to - + -setDebugLoggingEnabled: diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.gsdoc new file mode 100644 index 0000000..b9646c0 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.gsdoc @@ -0,0 +1,107 @@ + + + + + NSString+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSString(GNUstepBase) + category + + + GNUstepBase/NSString+GNUstepBase.h + + Provides some additional (non-standard) utility + methods. + + + stringWithFormat: + format + arguments: + argList + + Alternate way to invoke + stringWithFormat if you have or wish to + build an explicit va_list structure. + + + + stringByDeletingPrefix: + prefix + + Returns a string formed by removing the + prefix string from the receiver. Raises an + exception if the prefix is not + present. + + + + stringByDeletingSuffix: + suffix + + Returns a string formed by removing the + suffix string from the receiver. Raises an + exception if the suffix is not + present. + + + + stringByReplacingString: + replace + withString: + by + + Returns a string in which any (and all) occurrences + of replace in the receiver have been replaced + with by. Returns the receiver if + replace does not occur within the + receiver. NB. an empty string is not considered + to exist within the receiver. + + + + stringByTrimmingLeadSpaces + + Returns a string formed by removing leading white + space from the receiver. + + + + stringByTrimmingSpaces + + Returns a string formed by removing both leading + and trailing white space from the receiver. + + + + stringByTrimmingTailSpaces + + Returns a string formed by removing trailing white + space from the receiver. + + + + substringFromRange: + aRange + + An obsolete name for + + -substringWithRange: + + ... deprecated. + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.html index 44c5174..a9ef470 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSString+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -43,14 +44,14 @@

    NSString(GNUstepBase)

    Method summary
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.gsdoc new file mode 100644 index 0000000..ae485c6 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.gsdoc @@ -0,0 +1,66 @@ + + + + + NSTask+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2008 Free Software Foundation, Inc. + + + + + + Software documentation for the NSTask(GNUstepBase) + category + + + GNUstepBase/NSTask+GNUstepBase.h + + Description forthcoming. + + + executableExtensions + + Returns the set of extensions known to indicate an + executable file type on systems which require + that (currently mswindows). + + + + executablePath: + aFile + + Checks the specified file to see if it is executable + or if by appending one of the + + +executableExtensions + + it can be made executable. The return value is the + actual executable path or nil if the + file cannot be executed. + + + + launchPathForTool: + name + + Returns the launch path for a tool given the + name of a tool.
    Locates the tool by + looking in the standard directories and, if not + found there, looking in the PATH set in the + environment.
    On ms-windows, this also + tries appending common executable path extensions to + the tool name in order to find it.
    + Returns the path found, or nil if the + tool could not be located. +
    +
    +
    +
    + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.html index 75841a1..6b3580c 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSTask+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2008 Free Software Foundation, Inc.

    @@ -42,9 +43,9 @@

    NSTask(GNUstepBase)

    Method summary
    @@ -72,7 +73,7 @@

    executablePath:  + +executableExtensions diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.gsdoc new file mode 100644 index 0000000..5905fc5 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.gsdoc @@ -0,0 +1,29 @@ + + + + + NSThread+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSThread(GNUstepBase) + category + + + GNUstepBase/NSThread+GNUstepBase.h + + Description forthcoming. + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.html index 5cdc2c0..49ee4f5 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSThread+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.gsdoc new file mode 100644 index 0000000..d98d9f2 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.gsdoc @@ -0,0 +1,97 @@ + + + + + NSURL+GNUstepBase documentation + + + rfm@gnu.org + + + Generated at 2023-12-20 19:35:46 -0500 + 2003-2010 Free Software Foundation, Inc. + + + + + + Software documentation for the NSURL(GNUstepBase) + category + + + GNUstepBase/NSURL+GNUstepBase.h + + Description forthcoming. + + + fullPath + + Returns the full path for this URL including any + trailing slash. + + + + pathWithEscapes + + Returns the full path for this URL, without + decoding percent-escapes.
    This is useful if + you need to distinguish between "/" and "%2F" in the + path. The normal + + -path + + method will convert all "%2F" value in the path into + "/" so that you have no way of knowing whether a "/" is + part of a path component ir is a path separator. +
    +
    +
    +
    + + + Software documentation for the + NSURL(GNUstepBaseAdditions) + category + + + GNUstepBase/NSURL+GNUstepBase.h + + Description forthcoming. + + + cacheKey + + Returns a string (encapsulating the scheme, host + and port of the receiver) suitable for use as a key to + store the receiver in a cache of objects used to + access resources using the same network connection. + + + + initWithScheme: + scheme + user: + user + password: + password + host: + host + port: + port + fullPath: + fullPath + parameterString: + parameterString + query: + query + fragment: + fragment + + Builds a URL from components as returned by the + methods of the same names. + + + + + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.html index b52d578..57f88ef 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/NSURL+GNUstepBase.html @@ -16,6 +16,7 @@

    Authors

    +

    Date: Generated at 2023-12-20 19:35:46 -0500

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    @@ -56,8 +57,8 @@

    NSURL(GNUstepBase)

    Method summary
    @@ -86,9 +87,9 @@

    pathWithEscapes  This is useful if you need to distinguish between "/" and "%2F" in the path. The normal - + -path - + method will convert all "%2F" value in the path into "/" so that you have no way of knowing whether a "/" is @@ -120,9 +121,26 @@

    NSURL(GNUstepBaseAdditions Method summary
    +
    +

    cacheKey 

    + - (NSString*) cacheKey;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string (encapsulating the scheme, host + and port of the receiver) suitable for use as a key to + store the receiver in a cache of objects used to + access resources using the same network connection. + +
    +
    +

    initWithScheme: user: password: host: port: fullPath: parameterString: query: fragment: 

    - (id) initWithScheme: (NSString*)scheme user: (NSString*)user password: (NSString*)password host: (NSString*)host port: (NSNumber*)port fullPath: (NSString*)fullPath parameterString: (NSString*)parameterString query: (NSString*)query fragment: (NSString*)fragment;
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/OrderedSymbolDeclarations.plist b/resources/documentation/Developer/BaseAdditions/Reference/OrderedSymbolDeclarations.plist new file mode 100644 index 0000000..3fc615e --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/OrderedSymbolDeclarations.plist @@ -0,0 +1,517 @@ +{ + GCObject = ( + "+gcCollectGarbage", + "+gcIsCollecting", + "+gcObjectWillBeDeallocated:", + "-gcDecrementRefCount", + "-gcDecrementRefCountOfContainedObjects", + "-gcIncrementRefCount", + "-gcIncrementRefCountOfContainedObjects" + ); + "GCObject(Extra)" = ( + "-gcNextObject", + "-gcPreviousObject", + "-gcSetNextObject:", + "-gcSetPreviousObject:", + "-gcAlreadyVisited", + "-gcSetVisited:" + ); + GSLazyLock = ( + "-_becomeThreaded:" + ); + GSLazyRecursiveLock = ( + "-_becomeThreaded:" + ); + GSMimeCodingContext = ( + "-atEnd", + "-decodeData:length:intoData:", + "-setAtEnd:" + ); + GSMimeDocument = ( + "+charsetForXml:", + "+charsetFromEncoding:", + "+decodeBase64:", + "+decodeBase64String:", + "+documentWithContent:type:name:", + "+encodeBase64:", + "+encodeBase64String:", + "+encodingFromCharset:", + "-addContent:", + "-addHeader:", + "-addHeader:value:parameters:", + "-allHeaders", + "-content", + "-contentByID:", + "-contentByLocation:", + "-contentByName:", + "-copyWithZone:", + "-contentFile", + "-contentID", + "-contentLocation", + "-contentName", + "-contentSubtype", + "-contentType", + "-contentsByName:", + "-convertTo7BitSafe", + "-convertToBase64", + "-convertToBinary", + "-convertToData", + "-convertToText", + "-deleteContent:", + "-deleteHeader:", + "-deleteHeaderNamed:", + "-estimatedSize", + "-headerNamed:", + "-headersNamed:", + "-makeBoundary", + "-makeContentID", + "-makeHeader:value:parameters:", + "-makeMessageID", + "-rawMimeData", + "-rawMimeData:", + "-rawMimeData:foldedAt:", + "-setContent:", + "-setContent:type:", + "-setContent:type:name:", + "-setContentType:", + "-setHeader:", + "-setHeader:value:parameters:" + ); + GSMimeHeader = ( + "+headerWithName:value:parameters:", + "+makeQuoted:always:", + "+makeToken:preservingCase:", + "+makeToken:", + "-copyWithZone:", + "-estimatedSize", + "-fullValue", + "-initWithName:value:", + "-initWithName:value:parameters:", + "-name", + "-namePreservingCase:", + "-objectForKey:", + "-objects", + "-parameterForKey:", + "-parameters", + "-parametersPreservingCase:", + "-rawMimeData", + "-rawMimeDataPreservingCase:", + "-rawMimeDataPreservingCase:foldedAt:", + "-rawMimeDataPreservingCase:foldedAt:to:", + "-setObject:forKey:", + "-setParameter:forKey:", + "-setParameters:", + "-setValue:", + "-text", + "-value" + ); + GSMimeParser = ( + "+documentFromData:", + "+mimeParser", + "-contextFor:", + "-data", + "-decodeData:fromRange:intoData:withContext:", + "-excess", + "-expectNoHeaders", + "-isComplete", + "-isHttp", + "-isInBody", + "-isInHeaders", + "-mimeDocument", + "-parse:", + "-parseHeaders:remaining:", + "-parseHeader:", + "-scanHeaderBody:into:", + "-scanName:", + "-scanPastSpace:", + "-scanSpecial:", + "-scanToken:", + "-setBuggyQuotes:", + "-setDefaultCharset:", + "-setHeadersOnly", + "-setIsHttp" + ); + GSMimeSMTPClient = ( + "-abort", + "-delegate", + "-flush:", + "-lastError", + "-queueSize", + "-send:", + "-send:envelopeID:", + "-setDelegate:", + "-setHostname:", + "-setIdentity:", + "-setMaximum:", + "-setOriginator:", + "-setPort:", + "-setUsername:", + "-state", + "-stateDesc" + ); + GSMimeSerializer = ( + "+binarySerializer", + "+smtp7bitSerializer", + "-copyWithZone:", + "-dataEncoding", + "-encodeDocument:", + "-encodePart:to:", + "-foldAt", + "-setFoldAt:", + "-setDataEncoding:", + "-setTextEncoding:", + "-setUse8bit:", + "-textEncoding", + "-use8bit" + ); + GSSAXHandler = ( + "+handler", + "-lib", + "-parser", + "-attribute:value:", + "-attributeDecl:name:type:typeDefValue:defaultValue:", + "-characters:", + "-cdataBlock:", + "-comment:", + "-elementDecl:type:", + "-endDocument", + "-endElement:", + "-endElement:prefix:href:", + "-entityDecl:type:public:system:content:", + "-error:", + "-error:colNumber:lineNumber:", + "-externalSubset:externalID:systemID:", + "-fatalError:", + "-fatalError:colNumber:lineNumber:", + "-getEntity:", + "-getParameterEntity:", + "-globalNamespace:href:prefix:", + "-hasExternalSubset", + "-hasInternalSubset", + "-ignoreWhitespace:", + "-internalSubset:externalID:systemID:", + "-isStandalone", + "-loadEntity:at:", + "-namespaceDecl:href:prefix:", + "-notationDecl:public:system:", + "-processInstruction:data:", + "-reference:", + "-startDocument", + "-startElement:attributes:", + "-startElement:prefix:href:attributes:namespaces:", + "-unparsedEntityDecl:public:system:notationName:", + "-warning:", + "-warning:colNumber:lineNumber:" + ); + GSTLSCertificateList = ( + "+listFromFile:", + "-certificateList", + "-count", + "-expiresAt", + "-expiresAt:" + ); + GSTLSCredentials = ( + "+credentialsFromCAFile:defaultCAFile:revokeFile:defaultRevokeFile:certificateFile:certificateKeyFile:certificateKeyPassword:asClient:debug:", + "+selfSigned:", + "-credentials", + "-key", + "-list", + "-trust" + ); + GSTLSDHParams = ( + "+current", + "+generate", + "+paramsFromFile:", + "-params" + ); + GSTLSObject = ( + "+dataForTLSFile:", + "+setData:forTLSFile:" + ); + GSTLSPrivateKey = ( + "+keyFromFile:withPassword:", + "-key" + ); + GSTLSSession = ( + "+sessionWithOptions:direction:transport:push:pull:", + "-initWithOptions:direction:transport:push:pull:", + "-active", + "-age", + "-credentials", + "-debug", + "-disconnect:", + "-handshake", + "-issuer", + "-owner", + "-pending", + "-problem", + "-read:length:", + "-sessionInfo", + "-write:length:", + "-verify" + ); + GSXMLAttribute = ( + "-value" + ); + GSXMLDocument = ( + "+documentWithVersion:", + "-description", + "-encoding", + "-lib", + "-makeNodeWithNamespace:name:content:", + "-root", + "-setRoot:", + "-version", + "-writeToFile:atomically:", + "-writeToURL:atomically:" + ); + "GSXMLDocument(XSLT)" = ( + "+xsltTransformFile:stylesheet:params:", + "+xsltTransformFile:stylesheet:", + "+xsltTransformXml:stylesheet:params:", + "+xsltTransformXml:stylesheet:", + "-xsltTransform:params:", + "-xsltTransform:" + ); + GSXMLNamespace = ( + "+descriptionFromType:", + "+typeFromDescription:", + "-href", + "-lib", + "-next", + "-prefix", + "-type", + "-typeDescription" + ); + GSXMLNode = ( + "+descriptionFromType:", + "+typeFromDescription:", + "-attributes", + "-content", + "-description", + "-document", + "-escapedContent", + "-firstAttribute", + "-firstChild", + "-firstChildElement", + "-isElement", + "-isText", + "-lib", + "-makeAttributeWithName:value:", + "-makeChildWithNamespace:name:content:", + "-makeComment:", + "-makeNamespaceHref:prefix:", + "-makePI:content:", + "-makeText:", + "-name", + "-namespace", + "-namespaceDefinitions", + "-next", + "-nextElement", + "-objectForKey:", + "-parent", + "-previous", + "-previousElement", + "-propertiesAsDictionaryWithKeyTransformationSel:", + "-setObject:forKey:", + "-type", + "-typeDescription", + "-setNamespace:" + ); + GSXMLParser = ( + "+loadEntity:at:", + "+parser", + "+parserWithContentsOfFile:", + "+parserWithContentsOfURL:", + "+parserWithData:", + "+parserWithSAXHandler:", + "+parserWithSAXHandler:withContentsOfFile:", + "+parserWithSAXHandler:withContentsOfURL:", + "+parserWithSAXHandler:withData:", + "+setDTDs:", + "+xmlEncodingStringForStringEncoding:", + "-abortParsing", + "-columnNumber", + "-document", + "-doValidityChecking:", + "-errNo", + "-getWarnings:", + "-initWithSAXHandler:", + "-initWithSAXHandler:withContentsOfFile:", + "-initWithSAXHandler:withContentsOfURL:", + "-initWithSAXHandler:withData:", + "-initWithSAXHandler:withInputStream:", + "-keepBlanks:", + "-lineNumber", + "-messages", + "-parse", + "-parse:", + "-publicID", + "-saveMessages:", + "-resolveEntities:", + "-substituteEntities:", + "-systemID" + ); + GSXMLRPC = ( + "-buildMethod:params:", + "-buildMethodCall:params:", + "-buildResponseWithFaultCode:andString:", + "-buildResponseWithParams:", + "-compact", + "-delegate", + "-initWithURL:", + "-initWithURL:certificate:privateKey:password:", + "-makeMethodCall:params:timeout:", + "-parseMethod:params:", + "-parseResponse:params:", + "-result", + "-sendMethodCall:params:timeout:", + "-setCompact:", + "-setDebug:", + "-setDelegate:", + "-setTimeZone:", + "-timeout:", + "-timeZone", + "-URLHandle:resourceDataDidBecomeAvailable:", + "-URLHandle:resourceDidFailLoadingWithReason:", + "-URLHandleResourceDidBeginLoading:", + "-URLHandleResourceDidCancelLoading:", + "-URLHandleResourceDidFinishLoading:" + ); + "GSXMLRPC(Delegate)" = ( + "-completedXMLRPC:" + ); + GSXPathBoolean = ( + "-booleanValue" + ); + GSXPathContext = ( + "-initWithDocument:", + "-evaluateExpression:", + "-registerNamespaceWithPrefix:href:" + ); + GSXPathNodeSet = ( + "-count", + "-length", + "-nodeAtIndex:" + ); + GSXPathNumber = ( + "-doubleValue" + ); + GSXPathString = ( + "-stringValue" + ); + "NSArray(GNUstepBase)" = ( + "-insertionPosition:usingFunction:context:", + "-insertionPosition:usingSelector:" + ); + "NSAttributedString(GNUstepBase)" = ( + "-attributedSubstringWithRange:" + ); + "NSBundle(GNUstepBase)" = ( + "+pathForLibraryResource:ofType:inDirectory:" + ); + "NSCalendarDate(GNUstepBase)" = ( + "-isoYear", + "-weekOfYear" + ); + "NSData(GNUstepBase)" = ( + "+dataWithRandomBytesOfLength:", + "-escapedRepresentation", + "-escapedRepresentation:", + "-gunzipped", + "-gzipped:", + "-isGzipped", + "-hexadecimalRepresentation", + "-hexadecimalRepresentation:", + "-initWithHexadecimalRepresentation:", + "-md5Digest", + "-uudecodeInto:name:mode:", + "-uuencodeInto:name:mode:" + ); + "NSFileHandle(GNUstepBase)" = ( + "+fileHandleAsServerAtAddress:service:protocol:", + "-socketAddress" + ); + "NSLock(GNUstepBase)" = ( + "+newLockAt:" + ); + "NSMutableString(GNUstepBase)" = ( + "-deleteSuffix:", + "-deletePrefix:", + "-immutableProxy", + "-replaceString:withString:", + "-trimLeadSpaces", + "-trimTailSpaces", + "-trimSpaces" + ); + "NSNumber(GNUstepBase)" = ( + "+valueFromString:" + ); + "NSObject(GNUstepBase)" = ( + "-compare:", + "-isInstance", + "-makeImmutableCopyOnFail:", + "-makeImmutable", + "-notImplemented:", + "-subclassResponsibility:", + "-shouldNotImplement:" + ); + "NSObject(GSAtExit)" = ( + "+atExit" + ); + "NSObject(GSCleanup)" = ( + "+leak:", + "+leakAt:", + "+registerAtExit", + "+registerAtExit:", + "+setShouldCleanUp:", + "+shouldCleanUp" + ); + "NSObject(GSMimeSMTPClient)" = ( + "-smtpClient:mimeFailed:", + "-smtpClient:mimeSent:", + "-smtpClient:mimeUnsent:" + ); + "NSObject(MemoryFootprint)" = ( + "+contentSizeOf:excluding:", + "-sizeInBytesExcluding:", + "-sizeInBytes", + "-sizeOfContentExcluding:", + "-sizeOfInstance" + ); + "NSProcessInfo(GNUstepBase)" = ( + "-debugLoggingEnabled", + "-debugSet", + "-setDebugLoggingEnabled:" + ); + "NSRecursiveLock(GNUstepBase)" = ( + "+newLockAt:" + ); + "NSString(GNUstepBase)" = ( + "+stringWithFormat:arguments:", + "-stringByDeletingPrefix:", + "-stringByDeletingSuffix:", + "-stringByTrimmingLeadSpaces", + "-stringByTrimmingTailSpaces", + "-stringByTrimmingSpaces", + "-stringByReplacingString:withString:", + "-substringFromRange:" + ); + "NSString(GSXML)" = ( + "-stringByEscapingXML", + "-stringByUnescapingXML" + ); + "NSTask(GNUstepBase)" = ( + "+executableExtensions", + "+executablePath:", + "+launchPathForTool:" + ); + "NSURL(GNUstepBase)" = ( + "-fullPath", + "-pathWithEscapes" + ); + "NSURL(GNUstepBaseAdditions)" = ( + "-cacheKey", + "-initWithScheme:user:password:host:port:fullPath:parameterString:query:fragment:" + ); +} \ No newline at end of file diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/BaseAdditions.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/BaseAdditions.html new file mode 100644 index 0000000..9be50bc --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/BaseAdditions.html @@ -0,0 +1,121 @@ + + + + + GNUstep Base Additions + + + +

    GNUstep Base Additions

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Version: $Revision: 1.42 $

    +

    Date: $Date: 2015/09/15 14:18:06 $

    +

    Copyright: (C) 2005 Free Software Foundation, Inc.

    + + +

    Base Additions

    +

    + + The GNUstep base additions package comes with the GNUstep base + package, and provides additional non-standard classes and + additional features for standard classes. It is also intended + to be built standalone for use on systems where the GNUstep + base is not installed, but where an alternative Foundation is + available. +

    + Title Index + +
    + + Class + + Category + +
    +
    +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/ClassesTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/ClassesTOC.html new file mode 100644 index 0000000..f169489 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/ClassesTOC.html @@ -0,0 +1,46 @@ + + + + + Classes + + + +

    Classes

    + + + + GCArray
    + GCDictionary
    + GCMutableArray
    + GCMutableDictionary
    + GCObject
    + GSHTMLParser
    + GSHTMLSAXHandler
    + GSLazyLock
    + GSLazyRecursiveLock
    + GSMimeCodingContext
    + GSMimeDocument
    + GSMimeHeader
    + GSMimeParser
    + GSMimeSMTPClient
    + GSSAXHandler
    + GSTreeSAXHandler
    + GSXMLAttribute
    + GSXMLDocument
    + GSXMLNamespace
    + GSXMLNode
    + GSXMLParser
    + GSXMLRPC
    + GSXPathBoolean
    + GSXPathContext
    + GSXPathNodeSet
    + GSXPathNumber
    + GSXPathObject
    + GSXPathString
    + +
    +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/ConstantsTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/ConstantsTOC.html new file mode 100644 index 0000000..d97b4b8 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/ConstantsTOC.html @@ -0,0 +1,19 @@ + + + + + Constants + + + +

    Constants

    + + + + GSMimeErrorDomain
    + +
    +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/Functions.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/Functions.html new file mode 100644 index 0000000..210732a --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/Functions.html @@ -0,0 +1,4005 @@ + + + + + Functions + + + + Up +
    +

    Functions

    +

    Authors

    +
    +
    Richard Frith-Macdonald
    +
    +
    +
    +

    Copyright: (C) 2005 Free Software Foundation, Inc.

    + +
    + +
    +

    Contents -

    +
      +
    1. + Function index +
    2. +
    3. + Macro index +
    4. +
    5. + GNUstep macros +
    6. +
    7. + GSBlocks macros +
    8. +
    9. + GSVersionMacros macros +
    10. +
    11. + GSObjCRuntime macros +
    12. +
    13. + NSDebug+GNUstepBase macros +
    14. +
    15. + NSLock+GNUstepBase macros +
    16. +
    17. + GSBlocks functions +
    18. +
    19. + GSVersionMacros functions +
    20. +
    21. + GSObjCRuntime functions +
    22. +
    23. + GSIArray functions +
    24. +
    25. + GSIMap functions +
    26. +
    27. + GSFunctions functions +
    28. +
    29. + GSLocale functions +
    30. +
    31. + NSDebug+GNUstepBase functions +
    32. +
    33. + NSThread+GNUstepBase functions +
    34. +
    35. + Unicode functions +
    36. +
    +
    + +

    Function index

    + Function + + +

    Macro index

    + Macro + +
    + +

    GNUstep macros

    +

    +

    +

    ASSIGN

    + ASSIGN(object, value)
    +
    +Availability: OpenStep
    +
    +
    + + ASSIGN(object,value) assigns the + value to the object with + appropriate retain and release operations.
    + Use this to avoid retain/release errors. + +
    +
    +

    ASSIGNCOPY

    + ASSIGNCOPY(object, value)
    +
    +Availability: OpenStep
    +
    +
    + + ASSIGNCOPY(object,value) assigns a + copy of the value to the object + with release of the original.
    Use this to avoid + retain/release errors. + +
    +
    +

    AUTORELEASE

    + AUTORELEASE(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic autorelease operation... calls + + [NSObject -autorelease] + + +
    Deprecated... pointless on modern processors. + Simply call the + + -autorelease + + + method. + +
    +
    +

    CHECK_INDEX_RANGE_ERROR

    + CHECK_INDEX_RANGE_ERROR(INDEX, OVER)
    +
    +Availability: OpenStep
    +
    +
    + + Checks whether INDEX is strictly less than + OVER (within C array space). + INDEX and OVER must be + unsigned integers (NSUInteger). + +
    +
    +

    CREATE_AUTORELEASE_POOL

    + CREATE_AUTORELEASE_POOL(X)
    +
    +Availability: OpenStep
    +
    +
    + + DEPRECATED... use NSAutoreleasePool *X = + [NSAutoreleasePool new] + +
    +
    +

    DESTROY

    + DESTROY(object)
    +
    +Availability: OpenStep
    +
    +
    + + + DESTROY() + + + is a release operation which also sets the variable to be + a nil pointer for tidiness - we can't + accidentally use a DESTROYED object + later. It also makes sure to set the variable to + nil before releasing the + object - to avoid side-effects of the + release trying to reference the object + being released through the variable. + +
    +
    +

    GSLocalizedStaticString

    + GSLocalizedStaticString(key, comment)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + This function (macro) is a GNUstep extensions, and it + is used to localize static strings. Here is an example + of a static string: +

    +

    + + +

    +

    + + + NSString *message = @"Hi there";... some code... + NSLog (message); + +

    +

    + + +

    +

    + + This string can not be localized using the standard + openstep functions/macros. By using this gnustep + extension, you can localize it as follows: +

    +

    + + +

    +

    + + + NSString *message = GSLocalizedStaticString + (@"Hi there", @"Greeting");... some code... NSLog + (NSLocalizedString (message, @"")); + +

    +

    + + +

    +

    + + When the tools generate the + Localizable.strings file from the + source code, they will ignore the + NSLocalizedString call while they will + extract the string (and the comment) to + localize from the + GSLocalizedStaticString call. +

    +

    + + +

    +

    + + When the code is compiled, instead, the + GSLocalizedStaticString call is ignored + (discarded, it is a macro which simply expands + to key), while the + NSLocalizedString will actually look up + the string for translation in the + Localizable.strings file. +

    +

    + + +

    +

    + + Please note that there is currently no + macro/function to localize static strings + using different tables. If you need that + functionality, you have either to prepare + the localization tables by hand, or to rewrite your + code in such a way as not to use static strings. +

    +

    + + +

    +
    +

    GS_RANGE_CHECK

    + GS_RANGE_CHECK(RANGE, SIZE)
    +
    +Availability: OpenStep
    +
    +
    + + To be used inside a method for making sure that a range + does not specify anything outside the size of an + array/string. Raises exception if range extends + beyond [0,size]. Size must be an + unsigned integer (NSUInteger). + +
    +
    +

    RECREATE_AUTORELEASE_POOL

    + RECREATE_AUTORELEASE_POOL(X)
    +
    +Availability: OpenStep
    +
    +
    + + DEPRECATED... use [X release]; + X = [NSAutoreleasePool new] + +
    +
    +

    RELEASE

    + RELEASE(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic release operation... calls + + [NSObject -release] + + +
    Deprecated... pointless on modern processors. + Simply call the + + -release + + + method. + +
    +
    +

    RETAIN

    + RETAIN(object)
    +
    +Availability: OpenStep
    +
    +
    + + Basic retain operation... calls + + [NSObject -retain] + + +
    Deprecated... pointless on modern processors. + Simply call the + + -retain + + + method. + +
    +
    +

    TEST_AUTORELEASE

    + TEST_AUTORELEASE(object)
    +
    +Availability: OpenStep
    +
    +
    + + Tested autorelease - only invoke the objective-c + method if the receiver is not nil.
    + Deprecated... pointless on modern processors. + Simply call the + + -autorelease + + + method. + +
    +
    +

    TEST_RELEASE

    + TEST_RELEASE(object)
    +
    +Availability: OpenStep
    +
    +
    + + Tested release - only invoke the objective-c method if + the receiver is not nil.
    Deprecated + ... pointless on modern processors. Simply call the + + -release + + + method. + +
    +
    +

    TEST_RETAIN

    + TEST_RETAIN(object)
    +
    +Availability: OpenStep
    +
    +
    + + Tested retain - only invoke the objective-c method if + the receiver is not nil.
    Deprecated + ... pointless on modern processors. Simply call the + + -retain + + + method. + +
    +
    +

    _

    + _(X)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + _(@"My string to translate") +

    +

    + + +

    +

    + + is basically equivalent to +

    +

    + + +

    +

    + + + NSLocalizedString(@"My string to + translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly, as you just need to enclose all strings + inside + _() +. + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using NSLocalizedString + instead when you need a comment. +

    +

    + + +

    +

    + + You may define GS_LOCALISATION_BUNDLE_ID to the bundle + identifier of the bundle which is to provide the + localisation information.
    This can be + used when compiling a single file by specifying + something like '-D + GS_LOCALISATION_BUNDLE_ID=$(FRAMEWORK_NAME)' + in your make file.
    If this is not defined, the + localisation is provided by your application's + main bundle exactly like the NSLocalizedString + function. +

    +

    + + +

    +

    + + Alternatively you may define + GS_LOCALISATION_BUNDLE to be the + bundle to be used to prvide the localisation + information. +

    +

    + + +

    +
    +

    __

    + __(X)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + This function (macro) is a GNUstep extension. +

    +

    + + +

    +

    + + __(@"My string to translate") +

    +

    + + +

    +

    + + is exactly the same as +

    +

    + + +

    +

    + + + GSLocalizedStaticString(@"My + string to translate", @"") + +

    +

    + + +

    +

    + + It is useful when you need to translate an application + very quickly. You would use it as follows for static + strings: +

    +

    + + +

    +

    + + + NSString *message = __(@"Hello there");... more + code... NSLog (_(messages)); + +

    +

    + + +

    +

    + + But please note that when you use this macro, you are + not taking advantage of comments for the translator, so + consider using + GSLocalizedStaticString instead when + you need a comment. +

    +

    + + +

    +
    + +

    GSBlocks macros

    +

    +

    +

    CALL_BLOCK

    + CALL_BLOCK(block, args,...)
    +
    +Availability: OpenStep
    +
    +
    + + Calls a block. Works irrespective of whether + the compiler supports blocks. + +
    +
    +

    CALL_BLOCK_NO_ARGS

    + CALL_BLOCK_NO_ARGS(block)
    +
    +Availability: OpenStep
    +
    +
    + + Calls a block without arguments. + +
    +
    + +

    GSVersionMacros macros

    +

    +

    +

    GS_API_LATEST

    + GS_API_LATEST
    +
    +Availability: OpenStep
    +
    +
    + + A constant to represent a feature which is still present in + the latest version. This is the highest possible version + number.
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +
    +
    +

    GS_API_MACOSX

    + GS_API_MACOSX
    +
    +Availability: OpenStep
    +
    +
    + + The version number of the first MacOS-X implementation. +
    eg.
    #if + + OS_API_VERSION + + + (GS_API_MACOSX, GS_API_LATEST)
    denotes + code present from the initial MacOS-X version onwards. + +
    +
    +

    GS_API_NONE

    + GS_API_NONE
    +
    +Availability: OpenStep
    +
    +
    + + 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.
    eg. +
    #if + + OS_API_VERSION + + + (GS_API_NONE, GS_API_NONE)
    denotes code + not present in OpenStep/OPENSTEP/MacOS-X + +
    +
    +

    GS_API_OPENSTEP

    + GS_API_OPENSTEP
    +
    +Availability: OpenStep
    +
    +
    + + The version number of the first OPENSTEP implementation. +
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OPENSTEP, GS_API_LATEST)
    + denotes code present from the initial OPENSTEP + version onwards. + +
    +
    +

    GS_API_OSSPEC

    + GS_API_OSSPEC
    +
    +Availability: OpenStep
    +
    +
    + + The version number of the initial OpenStep specification. +
    eg.
    #if + + OS_API_VERSION + + + (GS_API_OSSPEC, GS_API_LATEST)
    denotes + code present from the OpenStep specification onwards. + +
    +
    +

    GS_API_VERSION

    + GS_API_VERSION(ADD, REM)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + 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 <= version + < 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. +

    +

    + + +

    +

    + + 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 the predefined + constants... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , +

    +

    + + +

    +

    + + Also see + + OS_API_VERSION + + +

    +

    + + +

    +

    + + 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
    + + #if GS_API_VERSION(ADD,GS_API_LATEST) + +
    where ADD is the + version number of the next minor release after the + most recent one.
    As a general principle you + should not change the API with changing + subminor version numbers... as that tends to + confuse people (though Apple has sometimes done + it). +

    +

    + + +

    +
    +

    OS_API_VERSION

    + OS_API_VERSION(ADD, REM)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + Macro to check a defined OpenStep/OPENSTEP/MacOS-X + version against the supplied arguments. Returns + true if no version is specified, or if ADD + <= version < 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. +

    +

    + + +

    +

    + + 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... + + GS_API_NONE + + + , + + GS_API_LATEST + + + , + + GS_API_OSSPEC + + + , + + GS_API_OPENSTEP + + + , + + GS_API_MACOSX + + +

    +

    + + +

    +

    + + Also see + + GS_API_VERSION + + +

    +

    + + +

    +

    + + For OSX compatibility, this macro also supports the use + of Apple's symbolic constants for version numbering. + Their contants are currently four digit values (two + digits for the major version, one for the minor, and + one for the subminor). +

    +

    + + +

    +

    + + The Apple compatibility version macros are currently: + + MAC_OS_X_VERSION_10_0 + + + , + + MAC_OS_X_VERSION_10_1 + + + , + + MAC_OS_X_VERSION_10_2 + + + , + + MAC_OS_X_VERSION_10_3 + + + , + + MAC_OS_X_VERSION_10_4 + + + , + + MAC_OS_X_VERSION_10_5 + + + , + + MAC_OS_X_VERSION_10_6 + + + , + + MAC_OS_X_VERSION_10_7 + + + , + + MAC_OS_X_VERSION_10_8 + + + + MAC_OS_X_VERSION_10_9 + + +

    +

    + + +

    +
    + +

    GSObjCRuntime macros

    +

    +

    +

    GS_MAX_OBJECTS_FROM_STACK

    + GS_MAX_OBJECTS_FROM_STACK
    +
    +Availability: OpenStep
    +
    +
    + + The number of objects to try to get from varargs into an + array on the stack... if there are more than this, use + the heap. NB. This MUST be a multiple of 2 + +
    +
    +

    GS_USEIDLIST

    + GS_USEIDLIST(firstObject, code,...)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
    The objects + are unpacked from the vararg list into a 'C' array and + then a code fragment you specify is able to + make use of them before that 'C' array is destroyed. +

    +

    + + +

    +

    + + The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

    +

    + + +

    +

    + + The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' array.
    When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, and the + pointer '__objects' will point to the unpacked + objects, ie. firstObject followed by + the vararg arguments up to (but not including) the + first nil. +

    +

    + + +

    +
    +

    GS_USEIDPAIRLIST

    + GS_USEIDPAIRLIST(firstObject, code,...)
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + This is a macro designed to minimise the use of memory + allocation and deallocation when you need to + work with a vararg list of objects.
    The objects + are unpacked from the vararg list into two 'C' arrays + and then a code fragment you specify is able + to make use of them before that 'C' array is destroyed. +

    +

    + + +

    +

    + + The firstObject argument is the name of the + formal parameter in your method or function which + precedes the ',...' denoting variable args. +

    +

    + + +

    +

    + + The code argument is a piece of objective-c + code to be executed to make use of the + objects stored in the 'C' arrays.
    When this + code is called the + unsigned integer '__count' will + contain the number of objects unpacked, the pointer + '__objects' will point to the first object in + each pair, and the pointer '__pairs' will point to an + array containing the second halves of the pairs of + objects whose first halves are in '__objects'. +
    This lets you pack a list of the form 'key, + value, key, value,...' into an array of keys and an + array of values. +

    +

    + + +

    +
    + +

    NSDebug+GNUstepBase macros

    +

    +

    +

    GSOnceFLog

    + GSOnceFLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Macro to log a message only the first time it is + encountered.
    Not entirely thread safe... + but that's not really important, it just means that it's + possible for the message to be logged more than once + if two threads call it simultaneously when it has not + already been called.
    Use this from inside a + function. Pass an NSString as a format, + followed by zero or more arguments for the + format string. Example: GSOnceFLog(@"This + function is deprecated, use another"); + +
    +
    +

    GSOnceMLog

    + GSOnceMLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Macro to log a message only the first time it is + encountered.
    Not entirely thread safe... + but that's not really important, it just means that it's + possible for the message to be logged more than once + if two threads call it simultaneously when it has not + already been called.
    Use this from inside a + method. Pass an NSString as a format + followed by zero or more arguments for the + format string.
    Example: + GSOnceMLog(@"This method is deprecated, use + another"); + +
    +
    +

    NSDebugFLLog

    + NSDebugFLLog(level, format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro is like + + NSDebugLLog() + + + but includes the name and location of the function in + which the macro is used as part of the log output. + +
    +
    +

    NSDebugFLog

    + NSDebugFLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro is a shorthand for + + NSDebugFLLog() + + + using then default debug level... 'dflt' + +
    +
    +

    NSDebugFRLog

    + NSDebugFRLog(object, msg)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro saves the name and location of the function + in which the macro is used, along with a + short string msg as the + tag associated with a recorded object. + +
    +
    +

    NSDebugLLog

    + NSDebugLLog(level, format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSDebugLLog() + + + is the basic debug logging macro used to display log + messages using + + NSLog() + + + , if debug logging was enabled at compile time and the + appropriate logging level was set at + runtime. +

    +

    + + +

    +

    + + Debug logging which can be enabled/disabled by + defining GSDIAGNOSE when compiling and also + setting values in the mutable set which is set up + by NSProcessInfo. GSDIAGNOSE is defined automatically + unless diagnose=no is specified in the make + arguments. +

    +

    + + +

    +

    + + NSProcess initialises a set of strings that are + the names of active debug levels using the + '--GNU-Debug=...' command line argument. + Each command-line argument of that form is removed + from NSProcessInfo 's list of arguments + and the variable part (...) is added to the set. This + means that as far as the program proper is concerned, + it is running with the same arguments as if debugging + had not been enabled. +

    +

    + + +

    +

    + + For instance, to debug the NSBundle class, run your + program with '--GNU-Debug=NSBundle' You can of + course supply multiple '--GNU-Debug=...' arguments + to output debug information on more than one thing. +

    +

    + + +

    +

    + + NSUserDefaults also adds debug levels from + the array given by the GNU-Debug key... but these + values will not take effect until the + + +standardUserDefaults + + + method is called... so they are useless for + debugging NSUserDefaults itself or for debugging + any code executed before the defaults system is used. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSDebugLLog() + + + or + + NSDebugLog() + + + macro. + + NSDebugLog() + + + is just + + NSDebugLLog() + + + with the debug level set to 'dflt'. So, to + activate debug statements that use + + NSDebugLog() + + + , you supply the '--GNU-Debug=dflt' argument to your + program. +

    +

    + + +

    +

    + + You can also change the active debug levels under your + programs control - NSProcessInfo has a + + [-debugSet] + + + method that returns the mutable set that contains + the active debug levels - your program can modify this + set. +

    +

    + + +

    +

    + + Two debug levels have a special effect - 'dflt' is the + level used for debug logs statements where + no debug level is specified, and 'NoWarn' is + used to *disable* warning messages. +

    +

    + + +

    +

    + + As a convenience, there are four more logging macros you + can use - + + NSDebugFLog() + + + , + + NSDebugFLLog() + + + , + + NSDebugMLog() + + + and + + NSDebugMLLog() + + + . These are the same as the other macros, but are + specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + +

    +
    +

    NSDebugLog

    + NSDebugLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro is a shorthand for + + NSDebugLLog() + + + using then default debug level... 'dflt' + +
    +
    +

    NSDebugMLLog

    + NSDebugMLLog(level, format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro is like + + NSDebugLLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. + +
    +
    +

    NSDebugMLog

    + NSDebugMLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro is a shorthand for + + NSDebugMLLog() + + + using then default debug level... 'dflt' + +
    +
    +

    NSDebugMRLog

    + NSDebugMRLog(object, msg)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro saves the name and location of the method in + which the macro is used, along with a + short string msg as the + tag associated with a recorded object. + +
    +
    +

    NSWarnFLog

    + NSWarnFLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro is like + + NSWarnLog() + + + but includes the name and location of the + function in which the macro is used as part of + the log output. + +
    +
    +

    NSWarnLog

    + NSWarnLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + + NSWarnLog() + + + is the basic debug logging macro used to display warning + messages using + + NSLog() + + + , if warn logging was not disabled at compile time and + the disabling logging level was not set at runtime. +

    +

    + + +

    +

    + + Warning messages which can be enabled/disabled by + defining GSWARN when compiling. +

    +

    + + +

    +

    + + You can also disable these messages at runtime by + supplying a '--GNU-Debug=NoWarn' argument to the + program, or by adding 'NoWarn' to the user default + array named 'GNU-Debug'. +

    +

    + + +

    +

    + + These logging macros are intended to be used when the + software detects something that it not necessarily + fatal or illegal, but looks like it might be a + programming error. eg. attempting to remove + 'nil' from an NSArray, which the Spec/documentation + does not prohibit, but which a well written program + should not be attempting (since an NSArray object + cannot contain a 'nil'). +

    +

    + + +

    +

    + + NB. The 'warn=yes' option is understood by the GNUstep + make package to mean that GSWARN should be defined, + and the 'warn=no' means that GSWARN should be + undefined. Default is to define it. +

    +

    + + +

    +

    + + To embed debug logging in your code you use the + + NSWarnLog() + + + macro. +

    +

    + + +

    +

    + + As a convenience, there are two more logging macros you + can use - + + NSWarnFLog() + + + , and + + NSWarnMLog() + + + . These are specifically for use in either functions or + methods and prepend information about the file, + line and either function or class/method in which the + message was generated. +

    +

    + + +

    +
    +

    NSWarnMLog

    + NSWarnMLog(format, args,...)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This macro is like + + NSWarnLog() + + + but includes the name and location of the method + in which the macro is used as part of the log output. + +
    +
    + +

    NSLock+GNUstepBase macros

    +

    +

    +

    GS_INITIALIZED_LOCK

    + GS_INITIALIZED_LOCK(IDENT, CLASSNAME)
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns IDENT which will be initialized to + an instance of a CLASSNAME in a thread safe + manner. If IDENT has been previously + initialized this macro merely returns + IDENT. IDENT is considered + uninitialized, if it contains nil + . CLASSNAME must be either NSLock, + NSRecursiveLock or one of their subclasses. + See + + [NSLock +newLockAt:] + + + for details. This macro is intended for code that cannot + insure that a lock can be initialized in thread safe + manner otherwise. + +
    + NSLock *my_lock = nil;
    +
    + void function (void)
    + {
    +   [GS_INITIALIZED_LOCK(my_lock, NSLock) lock];
    +   do_work ();
    +   [my_lock unlock];
    + }
    +
    + 
    + + +
    +
    + +

    GSBlocks functions

    +

    +

    +

    _Block_copy

    + void* _Block_copy(void* );
    +
    +Availability: OpenStep
    +
    +
    + + _Block_copy and _Block_release are weakly + imported, but can be assumed to be available + whenever a feature using blocks is accessed by an + application. + +
    +
    +

    _Block_release

    + void _Block_release(void* );
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSVersionMacros functions

    +

    +

    +

    gs_consumed

    + void gs_consumed(id o);
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSObjCRuntime functions

    +

    +

    +

    GSAutoreleasedBuffer

    + void* GSAutoreleasedBuffer(unsigned int size);
    +
    +Availability: OpenStep
    +
    +
    + + Quickly return autoreleased data storage area. + +
    +
    +

    GSCGetInstanceVariableDefinition

    + GSIVar GSCGetInstanceVariableDefinition(Class cls, const char* name);
    +
    +Availability: OpenStep
    +
    +
    + + Deprecated.. use + + class_getInstanceVariable() + + + +
    +
    +

    GSClassFromName

    + Class GSClassFromName(const char* name);
    +
    +Availability: OpenStep
    +
    +
    + + + GSClassFromName() + + + is deprecated... use + + objc_lookUpClass() + + + +
    +
    +

    GSClassList

    + unsigned int GSClassList(Class* buffer, unsigned int max, BOOL clearCache);
    +
    +Availability: OpenStep
    +
    +
    + + Deprecated... use + + objc_getClassList() + + + +
    +
    +

    GSClassNameFromObject

    + const char* GSClassNameFromObject(id obj);
    +
    +Availability: OpenStep
    +
    +
    + + + GSClassNameFromObject() + + + is deprecated... use + + object_getClass() + + + in conjunction with + + class_getName() + + + +
    +
    +

    GSClassSwizzle

    + void GSClassSwizzle(id instance, Class newClass);
    +
    +Availability: OpenStep
    +
    +
    + + Function to change the class of the specified + instance to newClass. This + handles memory debugging issues in GNUstep-base and + also deals with class finalisation issues in a garbage + collecting environment, so you should use this + function rather than attempting to swizzle class + pointers directly. + +
    +
    +

    GSFlushMethodCacheForClass

    + void GSFlushMethodCacheForClass(Class cls);
    +
    +Availability: OpenStep
    +
    +
    + + Deprecated.. does nothing. + +
    +
    +

    GSGetMethod

    + GSMethod GSGetMethod(Class cls, SEL sel, BOOL searchInstanceMethods, BOOL searchSuperClasses);
    +
    +Availability: OpenStep
    +
    +
    + + Returns the pointer to the method structure for the + selector in the specified class. Depending on + searchInstanceMethods, this function + searches either instance or class methods. Depending + on searchSuperClassesm this function searches either the + specified class only or also its superclasses. +
    To obtain the implementation pointer IMP use + returnValue->method_imp which should + be safe across all runtimes.
    It should be safe to + use this function in + + +load + + + implementations.
    This function should + currently (June 2004) be considered WIP. Please + follow potential changes (Name, parameters,...) + closely until it stabilizes. + +
    +
    +

    GSLastErrorStr

    + const char* GSLastErrorStr(long int error_id);
    +
    +Availability: BaseAdditions
    + Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSNameFromClass

    + const char* GSNameFromClass(Class cls);
    +
    +Availability: OpenStep
    +
    +
    + + + GSNameFromClass() + + + is deprecated... use + + class_getName() + + + +
    +
    +

    GSNameFromSelector

    + const char* GSNameFromSelector(SEL sel);
    +
    +Availability: OpenStep
    +
    +
    + + + GSNameFromSelector() + + + is deprecated... use + + sel_getName() + + + +
    +
    +

    GSObjCAddClassBehavior

    + void GSObjCAddClassBehavior(Class receiver, Class behavior);
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + A Behavior can be seen as a "Protocol with an + implementation" or a "Class without any + instance variables". A key feature of behaviors is + that they give a degree of multiple inheritance. +

    +

    + + +

    +

    + + Behavior methods, when added to a class, override + the class's superclass methods, but not the class's + methods. +

    +

    + + +

    +

    + + Whan a behavior class is added to a + receiver class, not only are the methods + defined in the behavior class added, but + the methods from the behavior's class hierarchy are + also added (unless already present). +

    +

    + + +

    +

    + + It's not the case that a class adding behaviors from + another class must have "no instance vars". The + receiver class just has to have the same + layout as the behavior class (optionally + with some additional ivars after those of the + behavior class). +

    +

    + + +

    +

    + + This function provides Behaviors without adding any + new syntax to the Objective C language. Simply define a + class with the methods you want to add, then call + this function with that class as the + behavior argument. +

    +

    + + +

    +

    + + This function should be called in the + + +initialize + + + method of the receiver. +

    +

    + + +

    +

    + + If you add several behaviors to a class, be aware that + the order of the additions is significant. +

    +

    + + +

    +
    +

    GSObjCAddClassOverride

    + void GSObjCAddClassOverride(Class receiver, Class override);
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + An Override can be seen as a "category implemented as a + separate class and manually added to the + receiver class under program control, + rather than automatically added by the + compiler/runtime. +

    +

    + + +

    +

    + + Override methods, when added to a + receiver class, replace the class's + class's methods of the same name (or are added if + the class did not define methods with that name). +

    +

    + + +

    +

    + + It's not the case that a class adding overrides from + another class must have "no instance vars". The + receiver class just has to have the same + layout as the override class (optionally + with some additional ivars after those of the + override class). +

    +

    + + +

    +

    + + This function provides overrides without adding any + new syntax to the Objective C language. Simply define a + class with the methods you want to add, then call + this function with that class as the + override argument. +

    +

    + + +

    +

    + + This function should usually be called in the + + +initialize + + + method of the receiver. +

    +

    + + +

    +

    + + If you add several overrides to a class, be aware that + the order of the additions is significant. +

    +

    + + +

    +
    +

    GSObjCAddClasses

    + void GSObjCAddClasses(NSArray* classes);
    +
    +Availability: OpenStep
    +
    +
    + + The classes argument is an array of NSValue + objects containing pointers to classes + previously created by the + + GSObjCMakeClass() + + + function. + +
    +
    +

    GSObjCAddMethods

    + void GSObjCAddMethods(Class cls, Method* list, BOOL replace);
    +
    +Availability: OpenStep
    +
    +
    + + Given a NULL terminated list of methods, add + them to the class.
    If the method already exists + in a superclass, the new version overrides that one, but + if the method already exists in the class itsself, the new + one is quietly ignored (replace==NO) or replaced with the + new version (if replace==YES).
    To add class + methods, cls should be the metaclass of + the class to which the methods are being added. + +
    +
    +

    GSObjCAllSubclassesOfClass

    + NSArray* GSObjCAllSubclassesOfClass(Class cls);
    +
    +Availability: OpenStep
    +
    +
    + + Returns an autoreleased array of subclasses of + Class cls, including + subclasses of subclasses. + +
    +
    +

    GSObjCBehaviorDebug

    + BOOL GSObjCBehaviorDebug(int setget);
    +
    +Availability: OpenStep
    +
    +
    + + Turn on (YES), off (NO) or + test (-1) behavior debugging. + +
    +
    +

    GSObjCClass

    + Class GSObjCClass(id obj);
    +
    +Availability: OpenStep
    +
    +
    + + + GSObjCClass() + + + is deprecated... use + + object_getClass() + + + +
    +
    +

    GSObjCDirectSubclassesOfClass

    + NSArray* GSObjCDirectSubclassesOfClass(Class cls);
    +
    +Availability: OpenStep
    +
    +
    + + Returns an autoreleased array containing subclasses + directly descendent of Class + cls. + +
    +
    +

    GSObjCFindVariable

    + BOOL GSObjCFindVariable(id obj, const char* name, const char** type, unsigned int* size, int* offset);
    +
    +Availability: OpenStep
    +
    +
    + + This function is used to locate information about the + instance variable of obj called + name. It returns YES if the + variable was found, NO otherwise. If it + returns YES, then the values pointed to + by type, size, and offset + will be set (except where they are null pointers). + +
    +
    +

    GSObjCGetInstanceVariableDefinition

    + GSIVar GSObjCGetInstanceVariableDefinition(Class cls, NSString* name);
    +
    +Availability: OpenStep
    +
    +
    + + Deprecated.. use + + class_getInstanceVariable() + + + +
    +
    +

    GSObjCGetVal

    + id GSObjCGetVal(NSObject* self, const char* key, SEL sel, const char* type, unsigned int size, int offset);
    +
    +Availability: OpenStep
    +
    +
    + + This is used internally by the key-value coding methods, + to get a value from an object either via an accessor + method (if sel is supplied), or via direct + access (if type, size, and + offset are supplied).
    Automatic + conversion between NSNumber and C scalar types is + performed.
    If type is null and + can't be determined from the selector, the + [NSObject -handleQueryWithUnboundKey:] + method is called to try to get a value. + +
    +
    +

    GSObjCGetVariable

    + void GSObjCGetVariable(id obj, int offset, unsigned int size, void* data);
    +
    +Availability: OpenStep
    +
    +
    + + Gets the value from an instance variable in + obj
    This function performs no + checking... you should use it only where you are + providing information from a call to + + GSObjCFindVariable() + + + and you know that the data area provided is + the correct size. + +
    +
    +

    GSObjCIsClass

    + BOOL GSObjCIsClass(Class cls);
    +
    +Availability: OpenStep
    +
    +
    + + + GSObjCIsClass() + + + is deprecated... use + + object_getClass() + + + in conjunction with + + class_isMetaClass() + + + +
    +
    +

    GSObjCIsInstance

    + BOOL GSObjCIsInstance(id obj);
    +
    +Availability: OpenStep
    +
    +
    + + + GSObjCIsInstance() + + + is deprecated... use + + object_getClass() + + + in conjunction with + + class_isMetaClass() + + + +
    +
    +

    GSObjCIsKindOf

    + BOOL GSObjCIsKindOf(Class cls, Class other);
    +
    +Availability: OpenStep
    +
    +
    + + Test to see if class inherits from another class The + argument to this function must NOT be + nil. + +
    +
    +

    GSObjCMakeClass

    + NSValue* GSObjCMakeClass(NSString* name, NSString* superName, NSDictionary* iVars);
    +
    +Availability: OpenStep
    +
    +
    + + references: + http://www.macdevcenter.com/pub/a/mac/2002/05/31/runtime_parttwo.html?page=1 http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/9objc_runtime_reference/chapter_5_section_1.html http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/9objc_runtime_reference/chapter_5_section_21.html ObjcRuntimeUtilities.m by Nicola Pero
    + +

    +

    + + Create a Class structure for use by + the ObjectiveC runtime and return an NSValue object + pointing to it. The class will not be added to the + runtime (you must do that later using the + + GSObjCAddClasses() + + + function). +

    +

    + + +

    +

    + + The iVars dictionary lists the instance + variable names and their types. +

    +

    + + +

    +
    +

    GSObjCMethodNames

    + NSArray* GSObjCMethodNames(id obj, BOOL recurse);
    +
    +Availability: OpenStep
    +
    +
    + + This method returns an array listing the names of all + the instance methods available to obj, whether + they belong to the class of obj or one of its + superclasses.
    If obj is a + class, this returns the class methods.
    Returns + nil if obj is nil + . + +
    +
    +

    GSObjCSetVal

    + void GSObjCSetVal(NSObject* self, const char* key, id val, SEL sel, const char* type, unsigned int size, int offset);
    +
    +Availability: OpenStep
    +
    +
    + + This is used internally by the key-value coding methods, + to set a value in an object either via an accessor method + (if sel is supplied), or via direct access (if + type, size, and offset + are supplied).
    Automatic conversion between + NSNumber and C scalar types is performed.
    If + type is null and can't be determined from + the selector, the + [NSObject -handleTakeValue:forUnboundKey:] + method is called to try to set a value. + +
    +
    +

    GSObjCSetVariable

    + void GSObjCSetVariable(id obj, int offset, unsigned int size, const void* data);
    +
    +Availability: OpenStep
    +
    +
    + + Sets the value in an instance variable in obj +
    This function performs no checking... you + should use it only where you are providing information + from a call to + + GSObjCFindVariable() + + + and you know that the data area provided is + the correct size. + +
    +
    +

    GSObjCSuper

    + Class GSObjCSuper(Class cls);
    +
    +Availability: OpenStep
    +
    +
    + + + GSObjCSuper() + + + is deprecated... use + + class_getSuperclass() + + + +
    +
    +

    GSObjCVariableNames

    + NSArray* GSObjCVariableNames(id obj, BOOL recurse);
    +
    +Availability: OpenStep
    +
    +
    + + This method returns an array listing the names of all + the instance variables present in the instance + obj, whether they belong to the class of + obj or one of its superclasses.
    + Returns nil if obj is + nil. + +
    +
    +

    GSObjCVersion

    + int GSObjCVersion(Class cls);
    +
    +Availability: OpenStep
    +
    +
    + + + GSObjCVersion() + + + is deprecated... use + + class_getVersion() + + + +
    +
    +

    GSPrintf

    + BOOL GSPrintf(FILE* fptr, NSString* format,...);
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + Prints a message to fptr using the + format string provided and any additional + arguments. The format string is + interpreted as by the NSString formatted + initialisers, and understands the '%@' syntax + for printing an object. +

    +

    + + +

    +

    + + The data is written to the file pointer in the default + CString encoding if possible, as a UTF8 string + otherwise. +

    +

    + + +

    +

    + + This function is recommended for printing general log + messages. For debug messages use + + NSDebugLog() + + + and friends. For error logging use + + NSLog() + + + , and for warnings you might consider + + NSWarnLog() + + + . +

    +

    + + +

    +
    +

    GSProtocolFromName

    + Protocol* GSProtocolFromName(const char* name);
    +
    +Availability: OpenStep
    +
    +
    + + Returns a protocol object with the corresponding + name. This function searches the registered + classes for any protocol with the supplied + name. If one is found, it is cached in for + future requests. If efficiency is a factor then use + + GSRegisterProtocol() + + + to insert a protocol explicitly into the cache used by + this function. If no protocol is found this function + returns nil. + +
    +
    +

    GSProtocolGetMethodDescriptionRecursive

    + struct objc_method_description GSProtocolGetMethodDescriptionRecursive(Protocol* aProtocol, SEL aSel, BOOL isRequired, BOOL isInstance);
    +
    +Availability: OpenStep
    +
    +
    + + A variant of protocol_getMethodDescription which + recursively searches parent protocols if the + requested selector isn't found in the given + protocol. Returns a {NULL, NULL} structure if the + requested selector couldn't be found. + +
    +
    +

    GSRegisterProtocol

    + void GSRegisterProtocol(Protocol* proto);
    +
    +Availability: OpenStep
    +
    +
    + + Registers proto in the cache used by + + GSProtocolFromName() + + + . + +
    +
    +

    GSSelectorFromName

    + SEL GSSelectorFromName(const char* name);
    +
    +Availability: OpenStep
    +
    +
    + + + GSSelectorFromName() + + + is deprecated... use + + sel_getUid() + + + +
    +
    +

    GSSelectorFromNameAndTypes

    + SEL GSSelectorFromNameAndTypes(const char* name, const char* types);
    +
    +Availability: OpenStep
    +
    +
    + + Return the selector for the specified name + and types.
    Returns a nul pointer if the + name is nul.
    Creates a new selector + if necessary.
    Code must NOT rely on this providing + a selector with type information. + +
    +
    +

    GSSelectorTypesMatch

    + BOOL GSSelectorTypesMatch(const char* types1, const char* types2);
    +
    +Availability: OpenStep
    +
    +
    + + Compare only the type information ignoring + qualifiers, the frame layout and register + markers. Unlike sel_types_match, this function also + handles comparisons of types with and without any + layout information. + +
    +
    +

    GSSkipTypeQualifierAndLayoutInfo

    + const char* GSSkipTypeQualifierAndLayoutInfo(const char* types);
    +
    +Availability: OpenStep
    +
    +
    + + Takes full type information and skips forward to the + actual type as specified in the _C_... constants. + +
    +
    +

    GSTypesFromSelector

    + const char* GSTypesFromSelector(SEL sel);
    +
    +Availability: OpenStep
    +
    +
    + + Return the type information from the specified + selector.
    May return a nul pointer if the + selector was a nul pointer or if it was not typed + (or if the runtime does not support typed selectors). +
    Code must NOT rely on this providing any type + information. + +
    +
    + +

    GSIArray functions

    +

    +

    +

    GSIArrayAddItem

    + void GSIArrayAddItem(GSIArray array, GSIArrayItem item);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayAddItemNoRetain

    + void GSIArrayAddItemNoRetain(GSIArray array, GSIArrayItem item);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayCapacity

    + unsigned int GSIArrayCapacity(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayCheckSort

    + void GSIArrayCheckSort(GSIArray array, NSComparisonResult(*) sorter);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayClear

    + void GSIArrayClear(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayCopyWithZone

    + GSIArray GSIArrayCopyWithZone(GSIArray array, NSZone* zone);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayCount

    + unsigned int GSIArrayCount(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayEmpty

    + void GSIArrayEmpty(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayGrow

    + void GSIArrayGrow(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayGrowTo

    + void GSIArrayGrowTo(GSIArray array, unsigned int next);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayInitWithZoneAndCapacity

    + GSIArray GSIArrayInitWithZoneAndCapacity(GSIArray array, NSZone* zone, size_t capacity);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayInitWithZoneAndStaticCapacity

    + GSIArray GSIArrayInitWithZoneAndStaticCapacity(GSIArray array, NSZone* zone, size_t capacity, GSIArrayItem* buffer);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayInsertItem

    + void GSIArrayInsertItem(GSIArray array, GSIArrayItem item, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayInsertItemNoRetain

    + void GSIArrayInsertItemNoRetain(GSIArray array, GSIArrayItem item, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayInsertSorted

    + void GSIArrayInsertSorted(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayInsertSortedNoRetain

    + void GSIArrayInsertSortedNoRetain(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayInsertionPosition

    + unsigned int GSIArrayInsertionPosition(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayItemAtIndex

    + GSIArrayItem GSIArrayItemAtIndex(GSIArray array, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayItems

    + GSIArrayItem* GSIArrayItems(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayLastItem

    + GSIArrayItem GSIArrayLastItem(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayRemoveAllItems

    + void GSIArrayRemoveAllItems(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayRemoveItemAtIndex

    + void GSIArrayRemoveItemAtIndex(GSIArray array, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayRemoveItemAtIndexNoRelease

    + void GSIArrayRemoveItemAtIndexNoRelease(GSIArray array, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayRemoveItemsFromIndex

    + void GSIArrayRemoveItemsFromIndex(GSIArray array, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArrayRemoveLastItem

    + void GSIArrayRemoveLastItem(GSIArray array);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArraySearch

    + unsigned int GSIArraySearch(GSIArray array, GSIArrayItem item, NSComparisonResult(*) sorter);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArraySetItemAtIndex

    + void GSIArraySetItemAtIndex(GSIArray array, GSIArrayItem item, unsigned int index);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSIMap functions

    +

    +

    +

    GSIMapAddKey

    + GSIMapNode GSIMapAddKey(GSIMapTable map, GSIMapKey key);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapAddKeyNoRetain

    + GSIMapNode GSIMapAddKeyNoRetain(GSIMapTable map, GSIMapKey key);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapAddNodeToBucket

    + void GSIMapAddNodeToBucket(GSIMapBucket bucket, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapAddNodeToMap

    + void GSIMapAddNodeToMap(GSIMapTable map, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapAddPair

    + GSIMapNode GSIMapAddPair(GSIMapTable map, GSIMapKey key, GSIMapVal value);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapAddPairNoRetain

    + GSIMapNode GSIMapAddPairNoRetain(GSIMapTable map, GSIMapKey key, GSIMapVal value);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapBucketForKey

    + GSIMapBucket GSIMapBucketForKey(GSIMapTable map, GSIMapKey key);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapCleanMap

    + void GSIMapCleanMap(GSIMapTable map);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapCountByEnumeratingWithStateObjectsCount

    + NSUInteger GSIMapCountByEnumeratingWithStateObjectsCount(GSIMapTable map, NSFastEnumerationState* state, id* stackbuf, NSUInteger len);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Used to implement fast enumeration methods in classes + that use GSIMap for their data storage. + +
    +
    +

    GSIMapEmptyMap

    + void GSIMapEmptyMap(GSIMapTable map);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapEndEnumerator

    + void GSIMapEndEnumerator(GSIMapEnumerator enumerator);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Tidies up after map enumeration... effectively + destroys the enumerator. + +
    +
    +

    GSIMapEnumeratorBucket

    + GSIMapBucket GSIMapEnumeratorBucket(GSIMapEnumerator enumerator);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the bucket from which the next node in the + enumeration will come. Once the next node has + been enumerated, you can use the bucket and node to + remove the node from the map using the + + GSIMapRemoveNodeFromMap() + + + function. + +
    +
    +

    GSIMapEnumeratorForMap

    + GSIMapEnumerator_t GSIMapEnumeratorForMap(GSIMapTable map);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Enumerating
    Create an return an enumerator + for the specified map.
    You must call + + GSIMapEndEnumerator() + + + when you have finished with the enumerator.
    + WARNING You should not alter a + map while an enumeration is in progress. The + results of doing so are reasonably unpredictable. +
    Remember, DON'T MESS WITH A MAP WHILE YOU'RE + ENUMERATING IT. + +
    +
    +

    GSIMapEnumeratorNextNode

    + GSIMapNode GSIMapEnumeratorNextNode(GSIMapEnumerator enumerator);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the next node in the map, or a nul pointer if + at the end. + +
    +
    +

    GSIMapFirstNode

    + GSIMapNode GSIMapFirstNode(GSIMapTable map);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapFreeNode

    + void GSIMapFreeNode(GSIMapTable map, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapInitWithZoneAndCapacity

    + void GSIMapInitWithZoneAndCapacity(GSIMapTable map, NSZone* zone, uintptr_t capacity);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapLinkNodeIntoBucket

    + void GSIMapLinkNodeIntoBucket(GSIMapBucket bucket, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapMoreNodes

    + void GSIMapMoreNodes(GSIMapTable map, unsigned int required);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapNodeForKey

    + GSIMapNode GSIMapNodeForKey(GSIMapTable map, GSIMapKey key);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapNodeForKeyInBucket

    + GSIMapNode GSIMapNodeForKeyInBucket(GSIMapTable map, GSIMapBucket bucket, GSIMapKey key);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapNodeForSimpleKey

    + GSIMapNode GSIMapNodeForSimpleKey(GSIMapTable map, GSIMapKey key);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapPickBucket

    + GSIMapBucket GSIMapPickBucket(unsigned int hash, GSIMapBucket buckets, uintptr_t bucketCount);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapRemangleBuckets

    + void GSIMapRemangleBuckets(GSIMapTable map, GSIMapBucket old_buckets, uintptr_t old_bucketCount, GSIMapBucket new_buckets, uintptr_t new_bucketCount);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapRemoveAndFreeNode

    + GSIMapNode GSIMapRemoveAndFreeNode(GSIMapTable map, uintptr_t bkt, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapRemoveKey

    + BOOL GSIMapRemoveKey(GSIMapTable map, GSIMapKey key);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Removes the item for the specified key + from the map. If the key was + present, returns YES, otherwise returns + NO. + +
    +
    +

    GSIMapRemoveNodeFromBucket

    + void GSIMapRemoveNodeFromBucket(GSIMapBucket bucket, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapRemoveNodeFromMap

    + void GSIMapRemoveNodeFromMap(GSIMapTable map, GSIMapBucket bkt, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapRemoveWeak

    + void GSIMapRemoveWeak(GSIMapTable map);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapResize

    + void GSIMapResize(GSIMapTable map, uintptr_t new_capacity);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapRightSizeMap

    + void GSIMapRightSizeMap(GSIMapTable map, uintptr_t capacity);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapSize

    + NSUInteger GSIMapSize(GSIMapTable map);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapUnlinkNodeFromBucket

    + void GSIMapUnlinkNodeFromBucket(GSIMapBucket bucket, GSIMapNode node);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSFunctions functions

    +

    +

    +

    GSFindNamedFile

    + NSString* GSFindNamedFile(NSArray* paths, NSString* aName, NSString* anExtension);
    +
    +Availability: BaseAdditions
    + Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Try to locate file/directory (aName).( + anExtension (aName).(anExtension) + in paths. Will return the first found or + nil if nothing is found.
    + Deprecated... may be removed in later release. + +
    +
    + +

    GSLocale functions

    +

    +

    +

    GSDefaultLanguageLocale

    + NSString* GSDefaultLanguageLocale();
    +
    +Availability: OpenStep
    +
    +
    + + Returns the locale string for LC_MESSAGES + +
    +
    +

    GSDomainFromDefaultLocale

    + NSDictionary* GSDomainFromDefaultLocale();
    +
    +Availability: OpenStep
    +
    +
    + + Set the current locale to the system default, and backup + what it was previously (should have been @"C").
    + Restore the current locale to what we backed up + (again, should be restored to @"C") + +
    +
    +

    GSLanguageFromLocale

    + NSString* GSLanguageFromLocale(NSString* locale);
    +
    +Availability: OpenStep
    +
    +
    + + Returns a language name string for a given + locale. e.g. GSLanguageFromLocale(@"en_CA") + returns @"CanadaEnglish" + +
    +
    +

    GSLanguagesFromLocale

    + NSArray* GSLanguagesFromLocale(NSString* locale);
    +
    +Availability: OpenStep
    +
    +
    + + Convenience function which calls GSLocaleVariants + to expand the given locale to a list of + variants, and then calls GSLanguageFromLocale on + each. e.g. GSLanguagesFromLocale(@"en_CA") returns + (@"CanadaEnglish", @"English") + +
    +
    +

    GSLocaleVariants

    + NSArray* GSLocaleVariants(NSString* locale);
    +
    +Availability: OpenStep
    +
    +
    + + Return an array of variants of a locale, + formed by stripping off parts of the identifier, + ordered from most similar to least similar. e.g. + GSLocaleVariants(@"en_CA") returns + (@"en_CA", @"en"). + +
    +
    +

    GSSetLocale

    + NSString* GSSetLocale(int category, NSString* locale);
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSSetLocaleC

    + const char* GSSetLocaleC(int category, const char* loc);
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + +

    NSDebug+GNUstepBase functions

    +

    +

    +

    GSDebugFunctionMsg

    + NSString* GSDebugFunctionMsg(const char* func, const char* file, int line, NSString* fmt);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Used to produce a format string for logging a message + with function location details. + +
    +
    +

    GSDebugMethodMsg

    + NSString* GSDebugMethodMsg(id obj, SEL sel, const char* file, int line, NSString* fmt);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Used to produce a format string for logging a message + with method location details. + +
    +
    +

    GSDebugSet

    + BOOL GSDebugSet(NSString* level);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    NSThread+GNUstepBase functions

    +

    +

    +

    GSCurrentThread

    + NSThread* GSCurrentThread();
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSCurrentThreadDictionary

    + NSMutableDictionary* GSCurrentThreadDictionary();
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    Unicode functions

    +

    +

    +

    GSEncodingForRegistry

    + NSStringEncoding GSEncodingForRegistry(NSString* registry, NSString* encoding);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Returns the NSStringEncoding that matches the + specified character set registry and + encoding information. For instance, for the + iso8859-5 character set, the registry is + iso8859 and the encoding is 5, and the + returned NSStringEncoding is + NSISOCyrillicStringEncoding. If + there is no specific encoding, use @"0". + Returns GSUndefinedEncoding if there is no match. + +
    +
    +

    GSEncodingFromLocale

    + NSStringEncoding GSEncodingFromLocale(const char* clocale);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Try to deduce the string encoding from the locale string + clocale. This function looks in the + Locale.encodings file installed as part of + GNUstep Base if the encoding cannot be deduced from + the clocale string itself. If + clocale isn't set or no match can be found, + returns GSUndefinedEncoding. + +
    +
    +

    GSFromUnicode

    + BOOL GSFromUnicode(unsigned char** dst, unsigned int* size, const unichar* src, unsigned int slen, NSStringEncoding enc, NSZone* zone, unsigned int options);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Function to convert from 16-bit unicode to 8-bit + data. + +

    +

    + + The dst argument is a pointer to a pointer + to a buffer in which the converted data is to be stored. + If it is a null pointer, this function discards + converted data, and is used only to determine the + length of the converted data. If the zone + argument is non-nul, the function is free to + allocate a larger buffer if necessary, and store + this new buffer in the dst argument. It + will *NOT* deallocate the original buffer! +

    +

    + + +

    +

    + + The size argument is a pointer to the + initial size of the destination buffer. + If the function changes the buffer size, this + value will be altered to the new size. + This is measured in bytes. +

    +

    + + +

    +

    + + The src argument is a pointer to the 16-bit + unicode string which is to be converted to 8-bit + data. +

    +

    + + +

    +

    + + The slen argument is the length of the + 16-bit unicode string which is to be converted to + 8-bit data. This is measured in 16-bit characters, + not bytes. +

    +

    + + +

    +

    + + The enc argument specifies the encoding type + of the 8-bit byte sequence which is to be produced from + the 16-bit unicode. +

    +

    + + +

    +

    + + The zone argument specifies a memory + zone in which the function may allocate a + buffer to return data in. If this is nul, the + function will fail if the originally supplied + buffer is not big enough (unless dst is a + null pointer... indicating that converted data is to + be discarded).
    If the library is built for + garbage collecting, the zone argument is + used only as a marker to say whether the function may + allocate memory (zone is non-null) or + not (zone is null). +

    +

    + + The options argument controls some special + behavior. + +

      +
    • + + If GSUniStrict is set, the function will fail if a + character is encountered in the source which + can't be converted. Otherwise, some approximation + or marker will be placed in the destination. + +
    • +
    • + + If GSUniTerminate is set, the function is expected to + nul terminate the output data, and will assume that + it is safe to place the nul just beyond the end of the + stated buffer size. Also, if the + function grows the buffer, it will allow for an + extra termination byte. + +
    • +
    • + + If GSUniTemporary is set, the function will return the + results in an autoreleased buffer rather than in + a buffer that the caller must release. + +
    • +
    • + + If GSUniBOM is set, the function will read the first + unicode character as a byte order marker. + +
    • +
    • + + If GSUniShortOk is set, the function will return a + buffer containing any decoded characters even if + the whole conversion fails. + +
    • +
    + + +

    +

    + + On return, the function result is a flag indicating + success (YES) or failure ( + NO), and on success, the value stored + in size is the number of bytes in the + converted data. The converted data itself is + stored in the location given by dst. +
    NB. If the value stored in dst has + been changed, it is a pointer to allocated memory + which the caller is responsible for freeing, and the + caller is still responsible for freeing the + original buffer. +

    +

    + + +

    +
    +

    GSToUnicode

    + BOOL GSToUnicode(unichar** dst, unsigned int* size, const unsigned char* src, unsigned int slen, NSStringEncoding enc, NSZone* zone, unsigned int options);
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Function to convert from 8-bit data to 16-bit + unicode characters. + +

    +

    + + The dst argument is a pointer to a pointer + to a buffer in which the converted string is to be + stored. If it is a null pointer, this function + discards converted data, and is used only to + determine the length of the converted string. If + the zone argument is non-nul, the function + is free to allocate a larger buffer if necessary, and + store this new buffer in the dst argument. + It will *NOT* deallocate the original buffer! +

    +

    + + +

    +

    + + The size argument is a pointer to the + initial size of the destination buffer. + If the function changes the buffer size, this + value will be altered to the new size. + This is measured in 16-bit unicode characters, not + bytes. +

    +

    + + +

    +

    + + The src argument is a pointer to the byte + sequence which is to be converted to 16-bit + unicode. +

    +

    + + +

    +

    + + The slen argument is the length of the byte + sequence which is to be converted to 16-bit + unicode. This is measured in bytes. +

    +

    + + +

    +

    + + The enc argument specifies the encoding type + of the 8-bit byte sequence which is to be converted to + 16-bit unicode. +

    +

    + + +

    +

    + + The zone argument specifies a memory + zone in which the function may allocate a + buffer to return data in. If this is nul, the + function will fail if the originally supplied + buffer is not big enough (unless dst is a + null pointer... indicating that converted data is to + be discarded).
    If the library is built for + garbage collecting, the zone argument is + used only as a marker to say whether the function may + allocate memory (zone is non-null) or + not (zone is null). +

    +

    + + The options argument controls some special + behavior. + +

      +
    • + + If GSUniTerminate is set, the function is expected to + null terminate the output string, and will assume + that it is safe to place the nul just beyond the end + of the stated buffer size. Also, if the + function grows the buffer, it will allow for an + extra termination character. + +
    • +
    • + + If GSUniTemporary is set, the function will return the + results in an autoreleased buffer rather than in + a buffer that the caller must release. + +
    • +
    • + + If GSUniBOM is set, the function will write the first + unicode character as a byte order marker. + +
    • +
    • + + If GSUniShortOk is set, the function will return a + buffer containing any decoded characters even if + the whole conversion fails. + +
    • +
    + + +

    +

    + + On return, the function result is a flag indicating + success (YES) or failure ( + NO), and on success, the value stored + in size is the number of characters in the + converted string. The converted string itself is + stored in the location given by dst. +
    NB. If the value stored in dst has + been changed, it is a pointer to allocated memory + which the caller is responsible for freeing, and the + caller is still responsible for freeing the + original buffer. +

    +

    + + +

    +
    +

    GSUnicode

    + unsigned int GSUnicode(const unichar* chars, unsigned int length, BOOL* isASCII, BOOL* isLatin1);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Function to check a block of data for validity as a + unicode string and say whether it contains solely + ASCII or solely Latin1 data.
    Any leading BOM + must already have been removed and the data must already + be in native byte order.
    Returns the number of + characters which were found valid. + +
    +
    +

    uni_cop

    + unsigned char uni_cop(unichar u);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Description forthcoming. + +
    +
    +

    uni_is_decomp

    + unichar* uni_is_decomp(unichar u);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Description forthcoming. + +
    +
    +

    uni_isnonsp

    + BOOL uni_isnonsp(unichar u);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Description forthcoming. + +
    +
    +

    uni_tolower

    + unichar uni_tolower(unichar ch);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Uses direct access into a two-level table to map cases. +
    The two-level table method is less space + efficient (but still not bad) than a single table + and a linear search, but it reduces the number of + conditional statements to just one. + +
    +
    +

    uni_toupper

    + unichar uni_toupper(unichar ch);
    +
    +Availability: Not in OpenStep/MacOS-X, BaseAdditions Likely to be changed/moved/removed at 1.15.0
    +
    +
    + + Uses direct access into a two-level table to map cases. +
    The two-level table method is less space + efficient (but still not bad) than a single table + and a linear search, but it reduces the number of + conditional statements to just one. + +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/FunctionsTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/FunctionsTOC.html new file mode 100644 index 0000000..52351dc --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/FunctionsTOC.html @@ -0,0 +1,146 @@ + + + + + Functions + + + +

    Functions

    + + + + GSAutoreleasedBuffer
    + GSCGetInstanceVariableDefinition
    + GSClassFromName
    + GSClassList
    + GSClassNameFromObject
    + GSClassSwizzle
    + GSCurrentThread
    + GSCurrentThreadDictionary
    + GSDebugFunctionMsg
    + GSDebugMethodMsg
    + GSDebugSet
    + GSDefaultLanguageLocale
    + GSDomainFromDefaultLocale
    + GSEncodingForRegistry
    + GSEncodingFromLocale
    + GSFindNamedFile
    + GSFlushMethodCacheForClass
    + GSFromUnicode
    + GSGetMethod
    + GSIArrayAddItem
    + GSIArrayAddItemNoRetain
    + GSIArrayCapacity
    + GSIArrayCheckSort
    + GSIArrayClear
    + GSIArrayCopyWithZone
    + GSIArrayCount
    + GSIArrayEmpty
    + GSIArrayGrow
    + GSIArrayGrowTo
    + GSIArrayInitWithZoneAndCapacity
    + GSIArrayInitWithZoneAndStaticCapacity
    + GSIArrayInsertItem
    + GSIArrayInsertItemNoRetain
    + GSIArrayInsertSorted
    + GSIArrayInsertSortedNoRetain
    + GSIArrayInsertionPosition
    + GSIArrayItemAtIndex
    + GSIArrayItems
    + GSIArrayLastItem
    + GSIArrayRemoveAllItems
    + GSIArrayRemoveItemAtIndex
    + GSIArrayRemoveItemAtIndexNoRelease
    + GSIArrayRemoveItemsFromIndex
    + GSIArrayRemoveLastItem
    + GSIArraySearch
    + GSIArraySetItemAtIndex
    + GSIMapAddKey
    + GSIMapAddKeyNoRetain
    + GSIMapAddNodeToBucket
    + GSIMapAddNodeToMap
    + GSIMapAddPair
    + GSIMapAddPairNoRetain
    + GSIMapBucketForKey
    + GSIMapCleanMap
    + GSIMapCountByEnumeratingWithStateObjectsCount
    + GSIMapEmptyMap
    + GSIMapEndEnumerator
    + GSIMapEnumeratorBucket
    + GSIMapEnumeratorForMap
    + GSIMapEnumeratorNextNode
    + GSIMapFirstNode
    + GSIMapFreeNode
    + GSIMapInitWithZoneAndCapacity
    + GSIMapLinkNodeIntoBucket
    + GSIMapMoreNodes
    + GSIMapNodeForKey
    + GSIMapNodeForKeyInBucket
    + GSIMapNodeForSimpleKey
    + GSIMapPickBucket
    + GSIMapRemangleBuckets
    + GSIMapRemoveAndFreeNode
    + GSIMapRemoveKey
    + GSIMapRemoveNodeFromBucket
    + GSIMapRemoveNodeFromMap
    + GSIMapRemoveWeak
    + GSIMapResize
    + GSIMapRightSizeMap
    + GSIMapSize
    + GSIMapUnlinkNodeFromBucket
    + GSLanguageFromLocale
    + GSLanguagesFromLocale
    + GSLastErrorStr
    + GSLocaleVariants
    + GSNameFromClass
    + GSNameFromSelector
    + GSObjCAddClassBehavior
    + GSObjCAddClassOverride
    + GSObjCAddClasses
    + GSObjCAddMethods
    + GSObjCAllSubclassesOfClass
    + GSObjCBehaviorDebug
    + GSObjCClass
    + GSObjCDirectSubclassesOfClass
    + GSObjCFindVariable
    + GSObjCGetInstanceVariableDefinition
    + GSObjCGetVal
    + GSObjCGetVariable
    + GSObjCIsClass
    + GSObjCIsInstance
    + GSObjCIsKindOf
    + GSObjCMakeClass
    + GSObjCMethodNames
    + GSObjCSetVal
    + GSObjCSetVariable
    + GSObjCSuper
    + GSObjCVariableNames
    + GSObjCVersion
    + GSPrintf
    + GSProtocolFromName
    + GSProtocolGetMethodDescriptionRecursive
    + GSRegisterProtocol
    + GSSelectorFromName
    + GSSelectorFromNameAndTypes
    + GSSelectorTypesMatch
    + GSSetLocale
    + GSSetLocaleC
    + GSSkipTypeQualifierAndLayoutInfo
    + GSToUnicode
    + GSTypesFromSelector
    + GSUnicode
    + _Block_copy
    + _Block_release
    + gs_consumed
    + uni_cop
    + uni_is_decomp
    + uni_isnonsp
    + uni_tolower
    + uni_toupper
    + +
    +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/GCObject.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GCObject.html new file mode 100644 index 0000000..1433d24 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GCObject.html @@ -0,0 +1,741 @@ + + + + + GCObject documentation + + + + Up +
    +

    GCObject documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2002 Free Software Foundation, Inc.

    + + + +

    + Software documentation for the GCArray class +

    +

    GCArray : NSArray

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GCObject.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    +

    +

    Instance Variables for GCArray Class

    +

    _contents

    + @protected id* _contents;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _count

    + @protected unsigned int _count;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _isGCObject

    + @protected BOOL* _isGCObject;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    gc

    + @protected gcInfo gc;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GCDictionary class +

    +

    GCDictionary : NSDictionary

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GCObject.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    +

    +

    Instance Variables for GCDictionary Class

    +

    _map

    + @protected NSMapTable* _map;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    gc

    + @protected gcInfo gc;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GCMutableArray class +

    +

    GCMutableArray : NSMutableArray

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GCObject.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    +

    +

    Instance Variables for GCMutableArray Class

    +

    _contents

    + @protected id* _contents;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _count

    + @protected unsigned int _count;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _isGCObject

    + @protected BOOL* _isGCObject;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _maxCount

    + @protected unsigned int _maxCount;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    gc

    + @protected gcInfo gc;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GCMutableDictionary + class +

    +

    GCMutableDictionary : NSMutableDictionary

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GCObject.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    +

    +

    Instance Variables for GCMutableDictionary Class

    +

    _map

    + @protected NSMapTable* _map;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    gc

    + @protected gcInfo gc;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GCObject class +

    +

    GCObject : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GCObject.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + The GCObject class is both the base class for all + garbage collected objects, and an infrastructure + for handling garbage collection. +

    +

    + + +

    +

    + + It maintains a list of all garbage collectable objects + and provides a method to run a garbage collection pass + on those objects. +

    +

    + + +

    +
    + Instance Variables +

    + Method summary + +
    +
    +

    gcCollectGarbage 

    + + (void) gcCollectGarbage;
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + This method runs a garbage collection, causing + unreferenced objects to be deallocated. This + is done using a simple three pass algorithm - +

    +

    + + +

    +
    Pass 1
    +
    + + All the garbage collectable objects are sent a + -gcDecrementRefCountOfContainedObjects + message. + +
    +
    Pass 2
    +
    + + All objects having a refCount greater than 0 are + sent an + -gcIncrementRefCountOfContainedObjects + message. + +
    +
    Pass 3
    +
    + + All the objects that still have the refCount of 0 + are part of cyclic graphs and none of the objects + from this graph are held by some object outside + graph. These objects receive the + + -dealloc + + + message. In this method they should send the + + -dealloc + + + message to any garbage collectable (GCObject + and subclass) instances they contain. + +
    +
    + + +

    +

    + + During garbage collection, the + + +gcIsCollecting + + + method returns YES. +

    +

    + + +

    +
    +
    +
    +

    gcIsCollecting 

    + + (BOOL) gcIsCollecting;
    +
    +Availability: OpenStep
    +
    +
    + + Returns a flag to indicate whether a garbage + collection is in progress. + +
    +
    +
    +
    +

    gcObjectWillBeDeallocated: 

    + + (void) gcObjectWillBeDeallocated: (GCObject*)anObject;
    +
    +Availability: OpenStep
    +
    +
    + + Called to remove anObject from the list + of garbage collectable objects.
    This method is + provided so that classes which are not subclasses + of GCObject (but which have the same initial instance + variable layout) can use multiple inheritance + (behaviors) to act as GCObject instances, but + can have their own + + -dealloc + + + methods.
    These classes should call this in + their own + + -dealloc + + + methods. + +
    +
    +
    +
    +

    gcDecrementRefCount 

    + - (void) gcDecrementRefCount;
    +
    +Availability: OpenStep
    +
    +
    + + Decrements the garbage collection reference + count for the receiver.
    + +
    +
    +
    +
    +

    gcDecrementRefCountOfContainedObjects 

    + - (void) gcDecrementRefCountOfContainedObjects;
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + Marks the receiver as not having been visited in + the current garbage collection process (first pass of + collection). +

    +

    + + +

    +

    + + All container subclasses should override this method + to call the super implementation then decrement the + ref counts of their contents as well as sending the + -gcDecrementRefCountOfContainedObjects + message to each of them. +

    +

    + + +

    +
    +
    +
    +

    gcIncrementRefCount 

    + - (void) gcIncrementRefCount;
    +
    +Availability: OpenStep
    +
    +
    + + Increments the garbage collection reference + count for the receiver.
    + +
    +
    +
    +
    +

    gcIncrementRefCountOfContainedObjects 

    + - (BOOL) gcIncrementRefCountOfContainedObjects;
    +
    +Availability: OpenStep
    +
    +
    + + +

    +

    + + Checks to see if the receiver has already been + visited in the current garbage collection + process, and either marks the receiver as + visited (and returns YES) or returns + NO to indicate that it had already + been visited. +

    +

    + + +

    +

    + + All container subclasses should override this method + to call the super implementation then, if the method + returns YES, increment the reference + count of any contained objects and send the + -gcIncrementRefCountOfContainedObjects + to each of the contained objects too. +

    +

    + + +

    +
    +
    +

    +

    Instance Variables for GCObject Class

    +

    gc

    + @protected gcInfo gc;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GCObject(Extra) + category +

    +

    GCObject(Extra)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GCObject.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + This category implements accessor methods for the + instance variables used for garbage collecting. + If/when we can ensure that all garbage collecting + classes use the same initial ivar layout, we can + remove these methods and the garbage collector can + access the ivars directly, making a pretty big + performance improvement during collecting.
    + NB. These methods must *only* be used by the garbage + collecting process or in methods called from the + garbage collector. Anything else is not thread-safe. + +
    + Method summary + +
    +
    +

    gcAlreadyVisited 

    + - (BOOL) gcAlreadyVisited;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    gcNextObject 

    + - (GCObject*) gcNextObject;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    gcPreviousObject 

    + - (GCObject*) gcPreviousObject;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    gcSetNextObject: 

    + - (GCObject*) gcSetNextObject: (GCObject*)anObject;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    gcSetPreviousObject: 

    + - (GCObject*) gcSetPreviousObject: (GCObject*)anObject;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    gcSetVisited: 

    + - (void) gcSetVisited: (BOOL)flag;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/GSCategories.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSCategories.html similarity index 100% rename from resources/documentation/Developer/BaseAdditions/Reference/GSCategories.html rename to resources/documentation/Developer/BaseAdditions/Reference/Reference/GSCategories.html diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSLock.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSLock.html new file mode 100644 index 0000000..d2b76c3 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSLock.html @@ -0,0 +1,184 @@ + + + + + GSLock documentation + + + + Up +
    +

    GSLock documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Version: 33621

    +

    Date: 2011-07-24 07:09:22 -0600 (Sun, 24 Jul 2011)

    +

    Copyright: (C) 2003 Free Software Foundation, Inc.

    + + + +

    + Software documentation for the GSLazyLock class +

    +

    GSLazyLock : NSLock

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSLock.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + This implements a class which, when used in + single-threaded mode, acts like a lock while + avoiding the overheads of actually using a real + lock. However, when the programm in which the class is + used becomes multi-threaded, all instances of this class + transform themselves into real locks in the correct + state (locked/unlocked) corresponding to whether the + lazy lock was locked or not at the point where the + program became multi threadeed.
    Use of this + class allows you to write thread-safe code which avoids + locking inefficiencies when used in a single threaded + application, without having to worry about + dealing with the issue yourself. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    _becomeThreaded: 

    + - (void) _becomeThreaded: (NSNotification*)n;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this method indicates that it is private, for + internal use only, and you should not use the + method in your code.
    Do not use this method + ... it is used internally to handle the transition from + a single threaded system to a multi threaded one. + +
    +
    +
    +

    +

    Instance Variables for GSLazyLock Class

    +

    locked

    + @protected int locked;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSLazyRecursiveLock + class +

    +

    GSLazyRecursiveLock : NSRecursiveLock

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSLock.h
    +
    +
    +
    +Availability: OpenStep
    +
    +
    + + This implements a class which, when used in + single-threaded mode, acts like a recursive + lock while avoiding the overheads of using a real lock. + However, when the programm in which the class is + used becomes multi-threaded, all instances of this class + transform themselves into real locks in the correct + state (locked/unlocked) corresponding to whether the + lazy recursive lock was locked or not at the point where + the program became multi threadeed.
    Use of this + class allows you to write thread-safe code which avoids + locking inefficiencies when used in a single threaded + application, without having to worry about + dealing with the issue yourself. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    _becomeThreaded: 

    + - (void) _becomeThreaded: (NSNotification*)n;
    +
    +Availability: OpenStep
    +
    +
    + + Warning the underscore at the start of the + name of this method indicates that it is private, for + internal use only, and you should not use the + method in your code.
    Do not use this method + ... it is used internally to handle the transition from + a single threaded system to a multi threaded one. + +
    +
    +
    +

    +

    Instance Variables for GSLazyRecursiveLock Class

    +

    counter

    + @protected int counter;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +


    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSMime.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSMime.html new file mode 100644 index 0000000..cde4654 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSMime.html @@ -0,0 +1,3286 @@ + + + + + The MIME parsing system + + + + Up +
    +

    The MIME parsing system

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Version: 38957

    +

    Date: 2015-08-30 04:50:59 -0600 (Sun, 30 Aug 2015)

    +

    Copyright: (C) 2000 Free Software Foundation, Inc.

    + + + +

    Mime Parser

    +

    + + The GNUstep Mime parser. This is collection Objective-C + classes for representing MIME (and HTTP) documents and + managing conversions to and from convenient internal + formats. +

    +

    + + The idea is to center round two classes - +

    +
    +
    document
    +
    + + A container for the actual data (and headers) of a + mime/http document, this is also used to create raw + MIME data for sending. + +
    +
    parser
    +
    + + An object that can be fed data and will parse it into a + document. This object also provides various utility + methods and an API that permits overriding in order + to extend the functionality to cope with new document + types. + +
    +
    + +

    + Software documentation for the GSMimeCodingContext + class +

    +

    GSMimeCodingContext : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSMime.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Coding contexts are objects used by the parser to + store the state of decoding incoming data while it is + being incrementally parsed.
    The most rudimentary + context... this is used for decoding plain text and + binary data (ie data which is not really decoded at + all) and all other decoding work is done by a subclass. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    atEnd 

    + - (BOOL) atEnd;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the current value of the 'atEnd' flag. + +
    +
    +
    +
    +

    decodeData: length: intoData: 

    + - (BOOL) decodeData: (const void*)sData length: (NSUInteger)length intoData: (NSMutableData*)dData;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Decode length bytes of data from + sData and append the results to + dData.
    Return YES on + success, NO if there is an error. + +
    +
    +
    +
    +

    setAtEnd: 

    + - (void) setAtEnd: (BOOL)flag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the current value of the 'atEnd' flag. + +
    +
    +
    +

    +

    Instance Variables for GSMimeCodingContext Class

    +

    atEnd

    + @protected BOOL atEnd;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSMimeDocument class +

    +

    GSMimeDocument : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSMime.h
    +
    +
    +
    +
    +
    Conforms to:
    +
    NSCopying
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This class is intended to provide a wrapper for MIME + messages permitting easy access to the contents of + a message and providing a basis for parsing an unparsing + messages that have arrived via email or as a web + document. +

    +

    + + +

    +

    + + The class keeps track of all the document headers, and + provides methods for modifying and examining the + headers that apply to a document. +

    +

    + + +

    +
    + Instance Variables +

    + Method summary + +
    +
    +

    charsetFromEncoding: 

    + + (NSString*) charsetFromEncoding: (NSStringEncoding)enc;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the MIME characterset name corresponding to + the specified string encoding.
    As a special + case, returns "us-ascii" if enc is zero. +
    Returns nil if enc + cannot be mapped to a charset.
    NB. The + correspondence between charsets and + encodings is not a direct one to one mapping, so + successive calls to + + +encodingFromCharset: + + + and + + +charsetFromEncoding: + + + may not produce the original input. + +
    +
    +
    +
    +

    decodeBase64: 

    + + (NSData*) decodeBase64: (NSData*)source;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Decode the source data from base64 + encoding and return the result.
    The + source data is expected to be ASCII text + and may be multiple lines or a line of any length + (decoding is very tolerant). + +
    +
    +
    +
    +

    decodeBase64String: 

    + + (NSString*) decodeBase64String: (NSString*)source;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Converts the base64 encoded data in + source to a decoded ASCII or UTF8 string + using the + + +decodeBase64: + + + method. If the encoded data does not represent an + ASCII or UTF8 string, you should use the + + +decodeBase64: + + + method directly. + +
    +
    +
    +
    +

    documentWithContent: type: name: 

    + + (GSMimeDocument*) documentWithContent: (id)newContent type: (NSString*)type name: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to return an autoreleased + document using the specified content, + type, and name value. This + calls the + + -setContent:type:name: + + + method to set up the document. + +
    +
    +
    +
    +

    encodeBase64: 

    + + (NSData*) encodeBase64: (NSData*)source;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Encode the source data to base64 encoding + and return the result.
    The resulting data is + ASCII text and contains only the base64 encoded + values with no line breaks or extraneous data. This + is base64 encoded data in it's general format as + mandated in RFC 3548. If the data is to be used as + part of a MIME document body, line breaks must be + introduced at 76 byte intervals (GSMime does + this when automatically encoding data for you). If the + data is to be used in a PEM document line breaks must + be introduced at 74 byte intervals. + +
    +
    +
    +
    +

    encodeBase64String: 

    + + (NSString*) encodeBase64String: (NSString*)source;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Converts the ASCII or UTF8 string + source into base64 encoded data using the + + +encodeBase64: + + + method. If the original data is not an ASCII or + UTF8 string, you should use the + + +encodeBase64: + + + method directly. + +
    +
    +
    +
    +

    encodingFromCharset: 

    + + (NSStringEncoding) encodingFromCharset: (NSString*)charset;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the string encoding corresponding to the + specified MIME characterset name.
    As a + special case, returns NSASCIIStringEncoding if + charset is nil.
    + Returns 0 if charset cannot be found. +
    NB. We treat iso-10646-ucs-2 as utf-16, which + should work for most text, but is not strictly + correct.
    The correspondence between + charsets and encodings is not a direct one to one + mapping, so successive calls to + + +encodingFromCharset: + + + and + + +charsetFromEncoding: + + + may not produce the original input. + +
    +
    +
    +
    +

    addContent: 

    + - (void) addContent: (id)newContent;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Adds a part to a multipart document + +
    +
    +
    +
    +

    addHeader: 

    + - (void) addHeader: (GSMimeHeader*)info;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This method may be called to add a header to the + document. The header must be a mutable + dictionary object that contains at least the + fields that are standard for all headers. +

    +

    + + +

    +

    + + Certain well-known headers are restricted to one + occurrence in an email, and when extra copies + are added they replace originals. +

    +

    + + +

    +

    + + The mime-version header is special... it is inserted + before any other mime headers rather than being + added at the end. +

    +

    + + +

    +
    +
    +
    +

    addHeader: value: parameters: 

    + - (GSMimeHeader*) addHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to create a new header and + add it to the receiver.
    Returns the newly + created header.
    See + [GSMimeHeader -initWithName:value:parameters:] + and -addHeader: + methods. + +
    +
    +
    +
    +

    allHeaders 

    + - (NSArray*) allHeaders;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This method returns an array containing GSMimeHeader + objects representing the headers associated with + the document. +

    +

    + + +

    +

    + + The order of the headers in the array is the order of + the headers in the document. +

    +

    + + +

    +
    +
    +
    +

    content 

    + - (id) content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This returns the content data of the document in the + same format in which the data was placed in the + document. This may be one of - + +
    +
    text
    +
    + an NSString object +
    +
    binary
    +
    + an NSData object +
    +
    multipart
    +
    + + an NSArray object containing GSMimeDocument objects + +
    +
    + + If you want to be sure that you get a particular type of + data, use the + + -convertToData + + + or + + -convertToText + + + method. + +
    +
    +
    +
    +

    contentByID: 

    + - (id) contentByID: (NSString*)key;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Search the content of this document to locate a part + whose content ID matches the specified key + . Recursively descend into other documents.
    Wraps + the supplied key in angle brackets if they + are not present.
    Return nil if no + match is found, the matching GSMimeDocument + otherwise. + +
    +
    +
    +
    +

    contentByLocation: 

    + - (id) contentByLocation: (NSString*)key;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Search the content of this document to locate a part + whose content ID matches the specified key + . Recursively descend into other documents.
    Wraps + the supplied key in angle brackets if they + are not present.
    Return nil if no + match is found, the matching GSMimeDocument + otherwise. + +
    +
    +
    +
    +

    contentByName: 

    + - (id) contentByName: (NSString*)key;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Search the content of this document to locate a part + whose content-type name or content-disposition name + matches the specified key. Recursively + descend into other documents.
    Return + nil if no match is found, the matching + GSMimeDocument otherwise. + +
    +
    +
    +
    +

    contentFile 

    + - (NSString*) contentFile;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to fetch the content file + name from the header. + +
    +
    +
    +
    +

    contentID 

    + - (NSString*) contentID;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to fetch the content ID from + the header. + +
    +
    +
    +
    +

    contentLocation 

    + - (NSString*) contentLocation;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to fetch the content + location from the header. + +
    +
    +
    +
    +

    contentName 

    + - (NSString*) contentName;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to fetch the content name + from the header. + +
    +
    +
    +
    +

    contentSubtype 

    + - (NSString*) contentSubtype;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to fetch the content + sub-type from the header. + +
    +
    +
    +
    +

    contentType 

    + - (NSString*) contentType;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to fetch the content type + from the header. + +
    +
    +
    +
    +

    contentsByName: 

    + - (NSArray*) contentsByName: (NSString*)key;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Search the content of this document to locate all + parts whose content-type name or content-disposition + name matches the specified key. Do + NOT recurse into other documents.
    + Return nil if no match is found, an + array of matching GSMimeDocument instances otherwise. + +
    +
    +
    +
    +

    convertToBase64 

    + - (void) convertToBase64;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Converts any binary parts of the receiver's + content to be base64 encoded rather than 8bit or + binary encoded... a convenience method to make the + results of the + + -rawMimeData + + + method safe for sending via routes which only + support 7bit data. + +
    +
    +
    +
    +

    convertToBinary 

    + - (void) convertToBinary;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Converts any base64 encoded parts of the + receiver's content to be binary encoded instead + ... a convenience method to shrink down the size of the + message when converted to data using the + + -rawMimeData + + + method. + +
    +
    +
    +
    +

    convertToData 

    + - (NSData*) convertToData;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the content as an NSData object (unless it is + multipart)
    Perform conversion from text + to data using the charset specified in the content-type + header, or infer the charset, and update the header + accordingly.
    If the content can not be + represented as a plain NSData object, this + method returns nil. + +
    +
    +
    +
    +

    convertToText 

    + - (NSString*) convertToText;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the content as an NSString object (unless it + is multipart) If the content cannot be represented as + text, this returns nil. + +
    +
    +
    +
    +

    copyWithZone: 

    + - (id) copyWithZone: (NSZone*)z;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a copy of the receiver. + +
    +
    +
    +
    +

    deleteContent: 

    + - (void) deleteContent: (GSMimeDocument*)aPart;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Deletes all ocurrances of parts identical to + aPart from the receiver.
    + Recursively deletes from enclosed documents as + necessary. + +
    +
    +
    +
    +

    deleteHeader: 

    + - (void) deleteHeader: (GSMimeHeader*)aHeader;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method removes all occurrences of header objects + identical to the one supplied as an argument. + +
    +
    +
    +
    +

    deleteHeaderNamed: 

    + - (void) deleteHeaderNamed: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method removes all occurrences of headers whose + name matches the supplied string. + +
    +
    +
    +
    +

    headerNamed: 

    + - (GSMimeHeader*) headerNamed: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method returns the first header whose + name equals the supplied argument. + +
    +
    +
    +
    +

    headersNamed: 

    + - (NSArray*) headersNamed: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method returns an array of GSMimeHeader objects + for all headers whose names equal the supplied + argument. + +
    +
    +
    +
    +

    makeBoundary 

    + - (NSString*) makeBoundary;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Make a probably unique string suitable for use as + the boundary parameter in the content of a multipart + document. +

    +

    + + +

    +

    + + This implementation provides base64 encoded data + consisting of an MD5 digest of some pseudo + random stuff, plus an incrementing counter. The + inclusion of the counter guarantees that we + won't produce two identical strings in the same run + of the program. +

    +

    + + +

    +

    + + The boundary has a suffix of '=_' to ensure it's not + mistaken for quoted-printable data. +

    +

    + + +

    +
    +
    +
    +

    makeContentID 

    + - (GSMimeHeader*) makeContentID;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Create new content ID header, set it as the content + ID of the document and return it.
    This is a + convenience method which simply places angle + brackets around an + [NSProcessInfo -globallyUniqueString] + to form the header value. + +
    +
    +
    +
    +

    makeHeader: value: parameters: 

    + - (GSMimeHeader*) makeHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Deprecated... use + + -setHeader:value:parameters: + + + +
    +
    +
    +
    +

    makeMessageID 

    + - (GSMimeHeader*) makeMessageID;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Create new message ID header, set it as the message + ID of the document and return it.
    This is a + convenience method which simply places angle + brackets around an + [NSProcessInfo -globallyUniqueString] + to form the header value. + +
    +
    +
    +
    +

    rawMimeData 

    + - (NSMutableData*) rawMimeData;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return an NSData object representing the MIME + document as raw data ready to be sent via an email + system.
    Calls + + -rawMimeData: + + + with the isOuter flag set to YES. + +
    +
    +
    +
    +

    rawMimeData: 

    + - (NSMutableData*) rawMimeData: (BOOL)isOuter;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Return an NSData object representing the MIME + document as raw data ready to be sent via an + email system. +

    +

    + + +

    +

    + + The isOuter flag denotes whether this + document is the outermost part of a MIME + message, or is a part of a multipart message. +

    +

    + + +

    +

    + + Long lines are folded at the default column. +

    +

    + + +

    +
    +
    +
    +

    rawMimeData: foldedAt: 

    + - (NSMutableData*) rawMimeData: (BOOL)isOuter foldedAt: (NSUInteger)fold;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Return an NSData object representing the MIME + document as raw data ready to be sent via an + email system. +

    +

    + + +

    +

    + + The isOuter flag denotes whether this + document is the outermost part of a MIME + message, or is a part of a multipart message. +

    +

    + + +

    +

    + + The fold number specifes the column at + which lines are considered to be 'long', and get + broken/folded. +

    +

    + + +

    +

    + + During generation of the document this method will + perform some consistency checks and try to + automatically generate missing header + information needed to build the mime data + (eg. filling in the boundary parameter in the + content-type header for multipart + documents).
    However, you should not + depend on automatic behaviors but should fill in + as much detail as possible before generating data. +

    +

    + + +

    +
    +
    +
    +

    setContent: 

    + - (void) setContent: (id)newContent;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets a new value for the content of the document. + +
    +
    +
    +
    +

    setContent: type: 

    + - (void) setContent: (id)newContent type: (NSString*)type;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method calling + + -setContent:type:name: + + + to set document content and type with a + nil value for name... useful for + top-level documents rather than parts within a + document (parts should really be named). + +
    +
    +
    +
    +

    setContent: type: name: 

    + - (void) setContent: (id)newContent type: (NSString*)type name: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Convenience method to set the content of the + document along with creating a content-type + header for it. +

    +

    + + +

    +

    + + The type parameter may be a simple common + content type (text, multipart, or + application), in which case the default + subtype for that type is used. + Alternatively it may be full detail of a + content type header value, which will + be parsed into 'type', 'subtype' and 'parameters'. +
    NB. In this case, if the parsed data + contains a 'name' parameter and the + name argument is non-nil, the argument + value will override the parsed value. +

    +

    + + +

    +

    + + You can get the same effect by calling + + -setContent: + + + to set the document content, then creating a + GSMimeHeader + + instance, initialising it with the content + type information you want using + [GSMimeHeader -initWithName:value:parameters:] +, and calling the -setHeader: + method to attach it to the document. +

    +

    + + +

    +

    + + Using this method imposes a few extra checks and + restrictions on the combination of content + and type/subtype you may use... so you may want to + use the more primitive methods in order to bypass + these checks if you are using unusual + type/subtype information or if you need to + provide additional parameters in the header. +

    +

    + + +

    +
    +
    +
    +

    setContentType: 

    + - (void) setContentType: (NSString*)newType;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Convenience method to set the content type of + the document without altering any content. The + supplied newType may be full type + information including subtype and parameters + as found after the colon in a mime Content-Type + header. +

    +

    + + +

    +
    +
    +
    +

    setHeader: 

    + - (void) setHeader: (GSMimeHeader*)info;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method may be called to set a header in the + document. Any other headers with the same name + will be removed from the document. + +
    +
    +
    +
    +

    setHeader: value: parameters: 

    + - (GSMimeHeader*) setHeader: (NSString*)name value: (NSString*)value parameters: (NSDictionary*)parameters;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to create a new header and + add it to the receiver replacing any existing header of + the same name.
    Returns the newly + created header.
    See + [GSMimeHeader -initWithName:value:parameters:] + and -setHeader: + methods. + +
    +
    +
    +

    +

    Instance Variables for GSMimeDocument Class

    +

    _unused

    + @protected void* _unused;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    content

    + @protected id content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    headers

    + @protected NSMutableArray* headers;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSMimeHeader class +

    +

    GSMimeHeader : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSMime.h
    +
    +
    +
    +
    +
    Conforms to:
    +
    NSCopying
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    makeQuoted: always: 

    + + (NSString*) makeQuoted: (NSString*)v always: (BOOL)flag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Makes the value into a quoted string if necessary (ie + if it contains any special / non-token characters). If + flag is YES then the value is + made into a quoted string even if it does not contain + special characters. + +
    +
    +
    +
    +

    makeToken: 

    + + (NSString*) makeToken: (NSString*)t;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convert the supplied string to a standardized token + by making it lowercase and removing all illegal + characters. + +
    +
    +
    +
    +

    makeToken: preservingCase: 

    + + (NSString*) makeToken: (NSString*)t preservingCase: (BOOL)preserve;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convert the supplied string to a standardized token + by removing all illegal characters. If + preserve is NO then the + result is converted to lowercase.
    Returns an + autoreleased (and possibly modified) copy of + the original. + +
    +
    +
    +
    +

    copyWithZone: 

    + - (id) copyWithZone: (NSZone*)z;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    fullValue 

    + - (NSString*) fullValue;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the full value of the header including any + parameters and preserving case. This is an + unfolded (long) line with no + escape sequences (ie contains a unicode string not + necessarily plain ASCII).
    If you just + want the plain value excluding any parameters, use the + + -value + + + method instead. + +
    +
    +
    +
    +

    initWithName: value: 

    + - (id) initWithName: (NSString*)n value: (NSString*)v;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method calling + + -initWithName:value:parameters: + + + with the supplied argument and nil + parameters. + +
    +
    +
    +
    +

    initWithName: value: parameters: 

    + - (id) initWithName: (NSString*)n value: (NSString*)v parameters: (NSDictionary*)p;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +This is a designated initialiser for the class.
    +
    + + Initialise a GSMimeHeader supplying a name, a + value and a dictionary of any parameters occurring + after the value. + +
    +
    +
    +
    +

    name 

    + - (NSString*) name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the name of this header... a lowercase + string. + +
    +
    +
    +
    +

    namePreservingCase: 

    + - (NSString*) namePreservingCase: (BOOL)preserve;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the name of this header as originally set + (without conversion to lowercase) if + preserve is YES, but as a + lowercase string if preserve is + NO. + +
    +
    +
    +
    +

    objectForKey: 

    + - (id) objectForKey: (NSString*)k;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return extra information specific to a particular + header type. + +
    +
    +
    +
    +

    objects 

    + - (NSDictionary*) objects;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a dictionary of all the additional objects + for the header. + +
    +
    +
    +
    +

    parameterForKey: 

    + - (NSString*) parameterForKey: (NSString*)k;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the named parameter value. + +
    +
    +
    +
    +

    parameters 

    + - (NSDictionary*) parameters;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the parameters of this header... a + dictionary whose keys are all lowercase strings, + and whose values are strings which may contain mixed + case. + +
    +
    +
    +
    +

    parametersPreservingCase: 

    + - (NSDictionary*) parametersPreservingCase: (BOOL)preserve;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the parameters of this header... a + dictionary whose keys are strings preserving the + case originally used to set the values or all + lowercase depending on the preserve + argument. + +
    +
    +
    +
    +

    rawMimeData 

    + - (NSMutableData*) rawMimeData;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the full text of the header, built from its + component parts, and including a terminating + CR-LF + +
    +
    +
    +
    +

    rawMimeDataPreservingCase: 

    + - (NSMutableData*) rawMimeDataPreservingCase: (BOOL)preserve;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    rawMimeDataPreservingCase: foldedAt: 

    + - (NSMutableData*) rawMimeDataPreservingCase: (BOOL)preserve foldedAt: (NSUInteger)fold;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the full text of the header, built from its + component parts, and including a terminating + CR-LF.
    If preserve is + YES then we attempt to build the text + using the same case as it was originally parsed/set + from, otherwise we use common conventions of + capitalising the header names and using + lowercase parameter names.
    If + fold is greater than zero, lines with more + than the specified number of characters are considered + 'long' and are folded into multiple lines. + +
    +
    +
    +
    +

    setName: 

    + - (void) setName: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the name of this header... and removes illegal + characters.
    If given a nil + or empty string argument, sets the name to 'unknown'. +
    NB. The value returned by the + + -name + + + method will be a lowercase version of thae name. + +
    +
    +
    +
    +

    setObject: forKey: 

    + - (void) setObject: (id)o forKey: (NSString*)k;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Method to store specific information for particular + types of header. This is used for non-standard parts + of headers.
    Setting a nil value for + o will remove any existing value set using + the k as its key. + +
    +
    +
    +
    +

    setParameter: forKey: 

    + - (void) setParameter: (NSString*)v forKey: (NSString*)k;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets a parameter of this header... converts name to + lowercase and removes illegal characters.
    + If a nil parameter name is supplied, + removes any parameter with the specified key. + +
    +
    +
    +
    +

    setParameters: 

    + - (void) setParameters: (NSDictionary*)d;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets all parameters of this header... converts names + to lowercase and removes illegal characters from them. + +
    +
    +
    +
    +

    setValue: 

    + - (void) setValue: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the value of this header (without changing + parameters)
    If given a nil + argument, set an empty string value. + +
    +
    +
    +
    +

    text 

    + - (NSString*) text;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the full text of the header, built from its + component parts, and including a terminating + CR-LF + +
    +
    +
    +
    +

    value 

    + - (NSString*) value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the value of this header (excluding any + parameters).
    Use the + + -fullValue + + + m,ethod if you want parameter included. + +
    +
    +
    +

    +

    Instance Variables for GSMimeHeader Class

    +

    name

    + @protected NSString* name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    objects

    + @protected NSMutableDictionary* objects;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    params

    + @protected NSMutableDictionary* params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    value

    + @protected NSString* value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSMimeParser class +

    +

    GSMimeParser : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSMime.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This class provides support for parsing MIME messages + into GSMimeDocument objects. Each parser object + maintains an associated document into which data + is stored. +

    +

    + + +

    +

    + + You supply the document to be parsed as one or more + data items passed to the + + -parse: + + + method, and (if the method always returns + YES, you give it a final + nil argument to mark the end of the + document. +

    +

    + + +

    +

    + + On completion of parsing a valid document, the + [GSMimeParser -mimeDocument] + method returns the resulting parsed document. +

    +

    + + +

    +

    + + If you need to parse faulty documents (eg where a faulty + mail client has produced an email which does not + conform to the MIME standards), you should look at + the + + -setBuggyQuotes: + + + and + + -setDefaultCharset: + + + methods, which are designed to cope with the most + common faults. +

    +

    + + +

    +
    + Instance Variables +

    + Method summary + +
    +
    +

    documentFromData: 

    + + (GSMimeDocument*) documentFromData: (NSData*)mimeData;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method to parse a single data item + as a MIME message and return the resulting document. + +
    +
    +
    +
    +

    mimeParser 

    + + (GSMimeParser*) mimeParser;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Create and return a parser. + +
    +
    +
    +
    +

    contextFor: 

    + - (GSMimeCodingContext*) contextFor: (GSMimeHeader*)info;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return a coding context object to be used for + decoding data according to the scheme specified in + the header. + +

    +

    + + The default implementation supports the following + transfer encodings specified in either a + transfer-encoding of + content-transfer-encoding header - +

    +

    + + +

      +
    • + base64 +
    • +
    • + quoted-printable +
    • +
    • + binary (no coding actually performed) +
    • +
    • + 7bit (no coding actually performed) +
    • +
    • + 8bit (no coding actually performed) +
    • +
    • + chunked (for HTTP/1.1) +
    • +
    • + x-uuencode +
    • +
    + + To add new coding schemes to the parser, you need to + override this method to return a new coding + context for your scheme when the info + argument indicates that this is appropriate. + +
    +
    +
    +
    +

    data 

    + - (NSMutableData*) data;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the data accumulated in the parser. If the + parser is still parsing headers, this will be the + header data read so far. If the parse has parsed the + body of the message, this will be the data of the + body, with any transfer encoding removed. + +
    +
    +
    +
    +

    decodeData: fromRange: intoData: withContext: 

    + - (BOOL) decodeData: (NSData*)sData fromRange: (NSRange)aRange intoData: (NSMutableData*)dData withContext: (GSMimeCodingContext*)con;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Decodes the raw data from the specified range in + the source data object and appends it to the + destination data object. The context object + provides information about the content encoding + type in use, and the state of the decoding + operation. +

    +

    + + +

    +

    + + This method may be called repeatedly to + incrementally decode information as it + arrives on some communications channel. It should + be called with a nil source data item (or + with the atEnd flag of the context set to + YES) in order to flush any + information held in the context to the output + data object. +

    +

    + + +

    +

    + + You may override this method in order to implement + additional coding schemes, but usually it + should be enough for you to implement a custom + GSMimeCodingContext subclass fotr + this method to use. +

    +

    + + Correct the size of the output buffer (shrink back + from the original allocation to the actual unchunked + size). + +

    +
    +
    +
    +

    excess 

    + - (NSData*) excess;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + If there was more data passed to the parser than + actually needed to form the document, this method + returns that excess data, othrwise it returns + nil. + +
    +
    +
    +
    +

    expectNoHeaders 

    + - (void) expectNoHeaders;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method may be called to tell the parser that it + should not expect to parse any headers, and that the + data it will receive is body data.
    If the parse + is already in the body, or is complete, this method has + no effect.
    This is for use when some other + utility has been used to parse headers, and you + have set the headers of the document owned by the + parser accordingly. You can then use the + GSMimeParser to read the body data into the + document. + +
    +
    +
    +
    +

    isComplete 

    + - (BOOL) isComplete;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns YES if the document parsing is + known to be completed successfully. Returns + NO if either more data is needed, or if + the parser encountered an error. + +
    +
    +
    +
    +

    isHttp 

    + - (BOOL) isHttp;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns YES if the parser is parsing + an HTTP document rather than a true MIME document. + +
    +
    +
    +
    +

    isInBody 

    + - (BOOL) isInBody;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns YES if all the document + headers have been parsed but the document body + parsing may not yet be complete. + +
    +
    +
    +
    +

    isInHeaders 

    + - (BOOL) isInHeaders;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns YES if parsing of the document + headers has not yet been completed. + +
    +
    +
    +
    +

    mimeDocument 

    + - (GSMimeDocument*) mimeDocument;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the GSMimeDocument instance into which data + is being parsed or has been parsed. + +
    +
    +
    +
    +

    parse: 

    + - (BOOL) parse: (NSData*)d;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This method is called repeatedly to pass raw mime + data into the parser. It returns YES as + long as it wants more data to + complete parsing of a document, and + NO if parsing is complete, either due + to having reached the end of a document or due to an + error. +

    +

    + + +

    +

    + + Since it is not always possible to determine if the + end of a MIME document has been reached from its + content, the method may need to be called with a + nil or empty argument after you have + passed all the data to it... this tells it that + the data is complete. +

    +

    + + +

    +

    + + The parser attempts to be as flexible as possible and + to continue parsing wherever it can. If an error + occurs in parsing, the + + -isComplete + + + method will always return NO, even + after the + + -parse: + + + method has been called with a nil + argument. +

    +

    + + +

    +

    + + A multipart document will be parsed to content + consisting of an NSArray of GSMimeDocument + instances representing each part.
    + Otherwise, a document will become content of + type NSData, unless it is of content type + text, in which case it will be an NSString. +
    If a document has no content type + specified, it will be treated as text + , unless it is identifiable as a file (eg. t + has a content-disposition header containing a + filename parameter). +

    +

    + + +

    +
    +
    +
    +

    parseHeader: 

    + - (BOOL) parseHeader: (NSString*)aHeader;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This method is called to parse a header line + for the current document, split its + contents into a GSMimeHeader object, and add + that information to the document.
    The method + is normally used internally by the + + -parse: + + + method, but you may also call it to parse an + entire header line and add it to the document + (this may be useful in conjunction with the + + -expectNoHeaders + + + method, to parse a document body data into a + document where the headers are available from a + separate source). +

    +

    + + +

    +   GSMimeParser *parser = [GSMimeParser mimeParser];
    +
    +   [parser parseHeader: @"content-type: text/plain"];
    +   [parser expectNoHeaders];
    +   [parser parse: bodyData];
    +   [parser parse: nil];
    + 
    + + +

    +

    + + The standard implementation of this method scans the + header name and then calls + + -scanHeaderBody:into: + + + to complete the parsing of the header. +

    +

    + + +

    +

    + + This method also performs consistency checks on + headers scanned so it is recommended that it is + not overridden, but that subclasses override + + -scanHeaderBody:into: + + + to implement custom scanning. +

    +

    + + +

    +

    + + As a special case, for HTTP support, this method also + parses lines in the format of HTTP responses as if + they were headers named http. The + resulting header object contains additional + object values - +

    +

    + + +

    +
    HttpMajorVersion
    +
    + The first part of the version number +
    +
    HttpMinorVersion
    +
    + The second part of the version number +
    +
    NSHTTPPropertyServerHTTPVersionKey
    +
    + The full HTTP protocol version number +
    +
    NSHTTPPropertyStatusCodeKey
    +
    + The HTTP status code (numeric) +
    +
    NSHTTPPropertyStatusReasonKey
    +
    + + The text message (if any) after the status code + +
    +
    + + +
    +
    +
    +
    +

    parseHeaders: remaining: 

    + - (BOOL) parseHeaders: (NSData*)d remaining: (NSData**)body;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Parses headers from the supplied data returning + YES if more data is needed before the + end of thge headers are reached.
    If + body is not NULL and the end of the + headers were reached leaving some unused data, that + remaining data is returned.
    NB. The + returned data is a reference to part of the + original memory buffer provided in d, + so you must copy it if you intend to use it after + modifying or deallocating the original data. + +
    +
    +
    +
    +

    scanHeaderBody: into: 

    + - (BOOL) scanHeaderBody: (NSScanner*)scanner into: (GSMimeHeader*)info;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This method is called to parse a header line and + split its contents into the supplied + GSMimeHeader + + instance. +

    +

    + + +

    +

    + + On entry, the header (info) is already + partially filled, the name is a lowercase + representation of the header name. The + the scanner must be set to a scan + location immediately after the colon in the + original header string (ie to the header value + string). +

    +

    + + +

    +

    + + If the header is parsed successfully, the method + should return YES, otherwise + NO. +

    +

    + + +

    +

    + + You would not normally call this method directly + yourself, but may override it to support + parsing of new headers.
    If you do call + this yourself, you need to be aware that it may + change the state of the document in the parser. +

    +

    + + +

    +

    + + You should be aware of the parsing that the + standard implementation performs, and that + needs to be done for certain headers in + order to permit the parser to work generally - +

    +

    + + +

    +
    content-disposition
    +
    + + +
    +
    Value
    +
    + + The content disposition (excluding + parameters) as a lowercase string. + +
    +
    + + +
    +
    content-type
    +
    + + +
    +
    Subtype
    +
    + The MIME subtype lowercase +
    +
    Type
    +
    + The MIME type lowercase +
    +
    value
    +
    + + The full MIME type (xxx/yyy) in lowercase + +
    +
    + + +
    +
    content-transfer-encoding
    +
    + + +
    +
    Value
    +
    + + The transfer encoding type in lowercase + +
    +
    + + +
    +
    http
    +
    + + +
    +
    HttpVersion
    +
    + + The HTTP protocol version number + +
    +
    HttpMajorVersion
    +
    + + The first component of the version number + +
    +
    HttpMinorVersion
    +
    + + The second component of the version number + +
    +
    HttpStatus
    +
    + + The response status value (numeric code) + +
    +
    Value
    +
    + The text message (if any) +
    +
    + + +
    +
    transfer-encoding
    +
    + + +
    +
    Value
    +
    + + The transfer encoding type in lowercase + +
    +
    + + +
    +
    + + +
    +
    +
    +
    +

    scanName: 

    + - (NSString*) scanName: (NSScanner*)scanner;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A convenience method to use a scanner (that is + set up to scan a header line) to scan a name - a simple + word. + +
      +
    • + Leading whitespace is ignored. +
    • +
    + + +
    +
    +
    +
    +

    scanPastSpace: 

    + - (BOOL) scanPastSpace: (NSScanner*)scanner;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A convenience method to scan past any whitespace in the + scanner in preparation for scanning + something more interesting that comes after it. + Returns YES if any space was read, + NO otherwise. + +
    +
    +
    +
    +

    scanSpecial: 

    + - (NSString*) scanSpecial: (NSScanner*)scanner;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A convenience method to use a scanner (that is + set up to scan a header line) to scan in a special + character that terminated a token previously + scanned. If the token was terminated by whitespace + and no other special character, the string returned + will contain a single space character. + +
    +
    +
    +
    +

    scanToken: 

    + - (NSString*) scanToken: (NSScanner*)scanner;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A convenience method to use a scanner (that is + set up to scan a header line) to scan a header token - + either a quoted string or a simple word. + +
      +
    • + Leading whitespace is ignored. +
    • +
    • + + Backslash escapes in quoted text are + converted + +
    • +
    + + +
    +
    +
    +
    +

    setBuggyQuotes: 

    + - (void) setBuggyQuotes: (BOOL)flag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Method to inform the parser that the data it is + parsing is likely to contain fields with buggy use + of backslash quotes... and it should try to be tolerant + of them and treat them as is they were escaped + backslashes. This is for use with things like + microsoft internet explorer, which puts the + backslashes used as file path separators in + parameters without quoting them. + +
    +
    +
    +
    +

    setDefaultCharset: 

    + - (void) setDefaultCharset: (NSString*)aName;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This is a method to inform the parser that body parts + with no content-type header (which are treated as + text/plain) should use the specified + characterset rather than the default + (us-ascii).
    This also controls the + parsing of headers... in a legal MIME document + these must consist solely of us-ascii characters, but + setting a different default characterset (such as + latin1) will permit many illegal header lines + (produced by faulty mail clients) to be parsed. +
    HTTP requests use headers in the latin1 + characterset, so this is the header line + characterset used most commonly by faulty + clients. + +
    +
    +
    +
    +

    setHeadersOnly 

    + - (void) setHeadersOnly;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Method to inform the parser that only the headers + should be parsed and any remaining data be treated + as excess + +
    +
    +
    +
    +

    setIsHttp 

    + - (void) setIsHttp;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Method to inform the parser that the data it is + parsing is an HTTP document rather than true MIME. + This method is called internally if the parser detects + an HTTP response line at the start of the headers it is + parsing. + +
    +
    +
    +

    +

    Instance Variables for GSMimeParser Class

    +

    _defaultEncoding

    + @protected NSStringEncoding _defaultEncoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _unused

    + @protected void* _unused;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    boundary

    + @protected NSData* boundary;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    bytes

    + @protected unsigned char* bytes;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    child

    + @protected GSMimeParser* child;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    context

    + @protected GSMimeCodingContext* context;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    data

    + @protected NSMutableData* data;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    dataEnd

    + @protected unsigned int dataEnd;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    document

    + @protected GSMimeDocument* document;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    expect

    + @protected unsigned int expect;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    input

    + @protected unsigned int input;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    lineEnd

    + @protected unsigned int lineEnd;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    lineStart

    + @protected unsigned int lineStart;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    rawBodyLength

    + @protected unsigned int rawBodyLength;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    sectionStart

    + @protected unsigned int sectionStart;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSMimeSMTPClient class +

    +

    GSMimeSMTPClient : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSMime.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + The GSMimeSMTPClient class provides the ability to send + EMails + GSMimeDocument + + instances) via an SMTP server. + +
    + Method summary + +
    +
    +

    abort 

    + - (void) abort;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Shut down any message send in progress and abort any + queued messages. + +
    +
    +
    +
    +

    delegate 

    + - (id) delegate;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the current delegate. + +
    +
    +
    +
    +

    flush: 

    + - (BOOL) flush: (NSDate*)limit;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Tries to flush any queued messages to the SMTP + server, completing by the specified + limit date.
    If limit is + nil then a date in the distant future + is used.
    If the queue is emptied in time, this + method returns YES, otherwise it + returns NO. + +
    +
    +
    +
    +

    lastError 

    + - (NSError*) lastError;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the last error encountered, or + nil if there is none recorded. + +
    +
    +
    +
    +

    send: 

    + - (void) send: (GSMimeDocument*)message;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Add the message to the queue of emails to be + sent by the receiver. + +
    +
    +
    +
    +

    send: envelopeID: 

    + - (void) send: (GSMimeDocument*)message envelopeID: (NSString*)envid;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Add the message to the queue of emails to be + sent by the receiver.
    Also adds an envelope ID + string to be used to uniquely identify the + message for delivery receipting purposes. +
    For this to work, the SMTP gateway being used + must support the SMTP service extension for delivery + status notification (RFC 3460). + +
    +
    +
    +
    +

    setDelegate: 

    + - (void) setDelegate: (id)d;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set the delegate to receive callback methods indicating + when a message is sent, failed, or removed from the + queue unsent. + +
    +
    +
    +
    +

    setHostname: 

    + - (void) setHostname: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set the host for the SMTP server. If this is not set + (or is set to nil) then the + GSMimeSMTPClientHost user default is + used. If the host is nil or an empty + string then 'localhost' is used. + +
    +
    +
    +
    +

    setIdentity: 

    + - (void) setIdentity: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set the host for the SMTP client to identify itsself to + the server. If this is not set (or is set to + nil) then the GSMimeSMTPClientIdentity + user default is used. If the identity is + nil or an empty string then a name of + the current host is use. + +
    +
    +
    +
    +

    setOriginator: 

    + - (void) setOriginator: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set the originator for any emails sent by the SMTP + client.
    This overrides the value in the + 'from' header of an email.
    If this is not set + (or is set to nil) then the + GSMimeSMTPClientOriginator user + default is used. If the originator is + nil or an empty string then the value + in the 'from' header of the email is used. + +
    +
    +
    +
    +

    setPort: 

    + - (void) setPort: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set the port for the SMTP server. If this is not set + (or is set to nil) then the + GSMimeSMTPClientPort user default is + used. If the port is not an integer in the 1-65535 + range, then '25' (the default SMTP port) is used. + +
    +
    +
    +
    +

    setUsername: 

    + - (void) setUsername: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set the username for authentication to the SMTP server. + If this is not set (or is set to nil) then + the GSMimeSMTPClientUsername user default is used. If + the username is nil or an empty string + then authentication is not attempted. + +
    +
    +
    +
    +

    state 

    + - (int) state;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + returns the receivers current state. + +
    +
    +
    +
    +

    stateDesc 

    + - (NSString*) stateDesc;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string describing the receiver's current + state + +
    +
    +
    + +

    + Software documentation for the + NSObject(GSMimeSMTPClient) category +

    +

    NSObject(GSMimeSMTPClient)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSMime.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Informal protocol for delegates of the + GSMimeSMTPClient class. The default + implementations of these methods do nothing. + +
    + Method summary + +
    +
    +

    smtpClient: mimeFailed: 

    + - (void) smtpClient: (GSMimeSMTPClient*)client mimeFailed: (GSMimeDocument*)doc;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    smtpClient: mimeSent: 

    + - (void) smtpClient: (GSMimeSMTPClient*)client mimeSent: (GSMimeDocument*)doc;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    smtpClient: mimeUnsent: 

    + - (void) smtpClient: (GSMimeSMTPClient*)client mimeUnsent: (GSMimeDocument*)doc;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSXML.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSXML.html new file mode 100644 index 0000000..3984638 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/GSXML.html @@ -0,0 +1,4344 @@ + + + + + The XML and HTML parsing system + + + + Up +
    +

    The XML and HTML parsing system

    +

    Authors

    +
    +
    Michael Pakhantsov (mishel@berest.dp.ua)
    +
    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2000-2005 Free Software Foundation, Inc.

    + +
    +
    +

    Contents -

    +
      +
    1. + The XML and HTML parsing system +
    2. +
    3. + Software documentation for the GSHTMLParser class +
    4. +
    5. + Software documentation for the GSHTMLSAXHandler class +
    6. +
    7. + Software documentation for the GSSAXHandler class +
    8. +
    9. + Software documentation for the GSTreeSAXHandler class +
    10. +
    11. + Software documentation for the GSXMLAttribute class +
    12. +
    13. + Software documentation for the GSXMLDocument class +
    14. +
    15. + Software documentation for the GSXMLNamespace class +
    16. +
    17. + Software documentation for the GSXMLNode class +
    18. +
    19. + Software documentation for the GSXMLParser class +
    20. +
    21. + Software documentation for the GSXMLRPC class +
    22. +
    23. + Software documentation for the GSXPathBoolean class +
    24. +
    25. + Software documentation for the GSXPathContext class +
    26. +
    27. + Software documentation for the GSXPathNodeSet class +
    28. +
    29. + Software documentation for the GSXPathNumber class +
    30. +
    31. + Software documentation for the GSXPathObject class +
    32. +
    33. + Software documentation for the GSXPathString class +
    34. +
    35. + Software documentation for the GSXMLDocument(XSLT) + category +
    36. +
    37. + Software documentation for the GSXMLRPC(Delegate) + category +
    38. +
    39. + Software documentation for the NSString(GSXML) + category +
    40. +
    +
    +
    + +

    The XML and HTML parsing system

    +

    + + The GNUstep XML parser is a collection Objective-C classes + wrapping the C XML parsing library (libxml). +

    +

    + + The underlying C library handles high performance parsing, + while the ObjectiveC classes provide ease of + use/integration. +

    + +

    + Software documentation for the GSHTMLParser class +

    +

    GSHTMLParser : GSXMLParser

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + The GSHTMLParser class is a simple subclass of + GSXMLParser which should parse reasonably well + formed HTML documents. If you wish to parse XHTML + documents, you should use GSXMLParser... the + GSHTMLParser class is for older 'legacy' + documents. + +
    + +

    + Software documentation for the GSHTMLSAXHandler class +

    +

    GSHTMLSAXHandler : GSSAXHandler

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + You may create a subclass of this class to handle + incremental parsing of html documents... this is + provided for handling legacy documents, as modern + html documents should use xhtml, and for those you + should simply subclass + GSSAXHandler + + +
    + +

    + Software documentation for the GSSAXHandler class +

    +

    GSSAXHandler : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + XML SAX Handler. +

    +

    + + +

    +

    + + GSSAXHandler is a callback-based interface to + the + GSXMLParser + + which operates in a similar (though not identical) + manner to SAX. +

    +

    + + +

    +

    + + Each GSSAXHandler object is associated with a + GSXMLParser object. As parsing progresses, + the methods of the GSSAXHandler are invoked by the + parser, so the handler is able to deal with the + elements and entities being parsed. +

    +

    + + +

    +

    + + The callback methods in the GSSAXHandler class do + nothing - it is intended that you subclass + GSSAXHandler and override them. +

    +

    + + +

    +

    + + If you create a GSXMLParser passing nil + as the GSSAXHandler, the parser will parse data to + create a + GSXMLDocument + + instance which you can then examine as a whole + ... this is generally the preferred mechanism for + parsing as it permits the parser to validate + the parsed document againts a DTD, and your + software can then examine the document secure + in the knowledge that it contains the expected + structure. Use of a GSSAXHandler is + preferred for very large documents with + simple structure... in which case incremental + parsing is more efficient. +

    +

    + + +

    +
    + Instance Variables +

    + Method summary + +
    +
    +

    handler 

    + + (GSSAXHandler*) handler;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Create a new SAX handler. + +
    +
    +
    +
    +

    attribute: value: 

    + - (void) attribute: (NSString*)name value: (NSString*)value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Handle an attribute that has been read by the + parser. + +
    +
    +
    +
    +

    attributeDecl: name: type: typeDefValue: defaultValue: 

    + - (void) attributeDecl: (NSString*)nameElement name: (NSString*)name type: (NSInteger)type typeDefValue: (NSInteger)defType defaultValue: (NSString*)value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    An attribute definition has been parsed. + +
    +
    +
    +
    +

    cdataBlock: 

    + - (void) cdataBlock: (NSData*)value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Called when a cdata block has been parsed. + +
    +
    +
    +
    +

    characters: 

    + - (void) characters: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Receiving some chars from the parser. + +
    +
    +
    +
    +

    comment: 

    + - (void) comment: (NSString*)value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    A comment has been parsed. + +
    +
    +
    +
    +

    elementDecl: type: 

    + - (void) elementDecl: (NSString*)name type: (NSInteger)type;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    An element definition has been parsed. + +
    +
    +
    +
    +

    endDocument 

    + - (void) endDocument;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Called when the document end has been + detected. + +
    +
    +
    +
    +

    endElement: 

    + - (void) endElement: (NSString*)elementName;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Called when a closing tag has been processed. + +
    +
    +
    +
    +

    endElement: prefix: href: 

    + - (void) endElement: (NSString*)elementName prefix: (NSString*)prefix href: (NSString*)href;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Called when a closing tag has been processed. + +
    +
    +
    +
    +

    entityDecl: type: public: system: content: 

    + - (void) entityDecl: (NSString*)name type: (NSInteger)type public: (NSString*)publicId system: (NSString*)systemId content: (NSString*)content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    An entity definition has been parsed. + +
    +
    +
    +
    +

    error: 

    + - (void) error: (NSString*)e;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called when an error message needs to be output. + +
    +
    +
    +
    +

    error: colNumber: lineNumber: 

    + - (void) error: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called when an error message needs to be output. + +
    +
    +
    +
    +

    externalSubset: externalID: systemID: 

    + - (BOOL) externalSubset: (NSString*)name externalID: (NSString*)externalID systemID: (NSString*)systemID;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called to find out whether there is an external + subset. + +
    +
    +
    +
    +

    fatalError: 

    + - (void) fatalError: (NSString*)e;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called when a fatal error message needs to be + output. + +
    +
    +
    +
    +

    fatalError: colNumber: lineNumber: 

    + - (void) fatalError: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called when a fatal error message needs to be + output. + +
    +
    +
    +
    +

    getEntity: 

    + - (void*) getEntity: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + get an entity by name + +
    +
    +
    +
    +

    getParameterEntity: 

    + - (void*) getParameterEntity: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + get a parameter entity by name + +
    +
    +
    +
    +

    globalNamespace: href: prefix: 

    + - (void) globalNamespace: (NSString*)name href: (NSString*)href prefix: (NSString*)prefix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    An old global namespace has been parsed. + +
    +
    +
    +
    +

    hasExternalSubset 

    + - (NSInteger) hasExternalSubset;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called to find out whether there is an external + subset. + +
    +
    +
    +
    +

    hasInternalSubset 

    + - (NSInteger) hasInternalSubset;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called to find out whether there is an internal + subset. + +
    +
    +
    +
    +

    ignoreWhitespace: 

    + - (void) ignoreWhitespace: (NSString*)ch;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Receiving some ignorable whitespaces from the + parser. + +
    +
    +
    +
    +

    internalSubset: externalID: systemID: 

    + - (BOOL) internalSubset: (NSString*)name externalID: (NSString*)externalID systemID: (NSString*)systemID;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called to find out whether there is an internal + subset. + +
    +
    +
    +
    +

    isStandalone 

    + - (NSInteger) isStandalone;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called to detemrine if the document is standalone. + +
    +
    +
    +
    +

    lib 

    + - (void*) lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! + +
    +
    +
    +
    +

    loadEntity: at: 

    + - (NSString*) loadEntity: (NSString*)publicId at: (NSString*)location;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called to return the filename from which an entity + should be loaded. + +
    +
    +
    +
    +

    namespaceDecl: href: prefix: 

    + - (void) namespaceDecl: (NSString*)name href: (NSString*)href prefix: (NSString*)prefix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    An old global namespace has been parsed. + +
    +
    +
    +
    +

    notationDecl: public: system: 

    + - (void) notationDecl: (NSString*)name public: (NSString*)publicId system: (NSString*)systemId;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    What to do when a notation declaration has + been parsed. + +
    +
    +
    +
    +

    parser 

    + - (GSXMLParser*) parser;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the parser object with which this handler is + associated. This may occasionally be useful. + +
    +
    +
    +
    +

    processInstruction: data: 

    + - (void) processInstruction: (NSString*)targetName data: (NSString*)PIdata;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    A processing instruction has been parsed. + +
    +
    +
    +
    +

    reference: 

    + - (void) reference: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Called when an entity reference is detected. + +
    +
    +
    +
    +

    startDocument 

    + - (void) startDocument;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Called when the document starts being + processed. + +
    +
    +
    +
    +

    startElement: attributes: 

    + - (void) startElement: (NSString*)elementName attributes: (NSMutableDictionary*)elementAttributes;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    Called when an opening tag has been + processed. + +
    +
    +
    +
    +

    startElement: prefix: href: attributes: namespaces: 

    + - (void) startElement: (NSString*)elementName prefix: (NSString*)prefix href: (NSString*)href attributes: (NSMutableDictionary*)elementAttributes namespaces: (NSMutableDictionary*)elementNamespaces;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    unparsedEntityDecl: public: system: notationName: 

    + - (void) unparsedEntityDecl: (NSString*)name public: (NSString*)publicId system: (NSString*)systemId notationName: (NSString*)notation;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + +
    What to do when an unparsed entity + declaration is parsed. + +
    +
    +
    +
    +

    warning: 

    + - (void) warning: (NSString*)e;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called when a warning message needs to be output. + +
    +
    +
    +
    +

    warning: colNumber: lineNumber: 

    + - (void) warning: (NSString*)e colNumber: (NSInteger)colNumber lineNumber: (NSInteger)lineNumber;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Called when a warning message needs to be output. + +
    +
    +
    +

    +

    Instance Variables for GSSAXHandler Class

    +

    isHtmlHandler

    + @protected BOOL isHtmlHandler;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    lib

    + @protected void* lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    parser

    + @protected GSXMLParser* parser;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSTreeSAXHandler class +

    +

    GSTreeSAXHandler : GSSAXHandler

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + The default handler for parsing documents... this will + build a GSXMLDocument for you. This handler may not + currently be subclassed, though that capability may + be added at a later date. + +
    + +

    + Software documentation for the GSXMLAttribute class +

    +

    GSXMLAttribute : GSXMLNode

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A class wrapping attributes of an XML element node. + Generally when examining a GSXMLDocument, you need + not concern yourself with GSXMLAttribute objects as you + will probably use the + + [GSXMLNode -objectForKey:] + + + method to return the string value of any attribute you + are interested in. + +
    + Method summary + +
    +
    +

    value 

    + - (NSString*) value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the string value of the attribute. + +
    +
    +
    + +

    + Software documentation for the GSXMLDocument class +

    +

    GSXMLDocument : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +
    +
    Conforms to:
    +
    NSCopying
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A GSXML document wraps the document structure of the + underlying libxml library. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    documentWithVersion: 

    + + (GSXMLDocument*) documentWithVersion: (NSString*)version;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Create a new document with the specified + version. + +
    + id d = [GSXMLDocument documentWithVersion: @"1.0"];
    +
    + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]];
    + [[d root] setObject: @"0.9" forKey: @"version"];
    + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil];
    + [n1 makeComment: @" this is a comment "];
    + [n1 makePI: @"pi1" content: @"this is a process instruction"];
    + [n1 makeChildWithNamespace: nil name: @"key" content: @"Year Of Birth"];
    + [n1 makeChildWithNamespace: nil name: @"integer" content: @"65"];
    + [n1 makeChildWithNamespace: nil name: @"key" content: @"Pets Names"];
    + 
    + + +
    +
    +
    +
    +

    description 

    + - (NSString*) description;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string representation of the document (ie + the XML) or nil if the document does not + have reasonable contents. + +
    +
    +
    +
    +

    encoding 

    + - (NSString*) encoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the name of the encoding for this document. + +
    +
    +
    +
    +

    lib 

    + - (void*) lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! + +
    +
    +
    +
    +

    makeNodeWithNamespace: name: content: 

    + - (GSXMLNode*) makeNodeWithNamespace: (GSXMLNamespace*)ns name: (NSString*)name content: (NSString*)content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creates a new node within the document. + +
    + GSXMLNode *n1, *n2;
    + GSXMLDocument *d;
    +
    + d = [GSXMLDocument documentWithVersion: @"1.0"];
    + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]];
    + [[d root] setObject: @"0.9" forKey: @"version"];
    + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil];
    + 
    + + +
    +
    +
    +
    +

    root 

    + - (GSXMLNode*) root;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the root node of the document. + +
    +
    +
    +
    +

    setRoot: 

    + - (GSXMLNode*) setRoot: (GSXMLNode*)node;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the root of the document.
    NB. The + node must have been created as part of the + receiving document (eg. using the + -makeNodeWithNamespace:name:content: + method). + +
    +
    +
    +
    +

    version 

    + - (NSString*) version;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the version string for this document. + +
    +
    +
    +
    +

    writeToFile: atomically: 

    + - (BOOL) writeToFile: (NSString*)filename atomically: (BOOL)useAuxilliaryFile;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Uses the + + -description + + + method to produce a string representation of the + document and writes that to filename. + +
    +
    +
    +
    +

    writeToURL: atomically: 

    + - (BOOL) writeToURL: (NSURL*)url atomically: (BOOL)useAuxilliaryFile;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Uses the + + -description + + + method to produce a string representation of the + document and writes that to url. + +
    +
    +
    +

    +

    Instance Variables for GSXMLDocument Class

    +

    _ownsLib

    + @protected BOOL _ownsLib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _parent

    + @protected id _parent;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    lib

    + @protected void* lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSXMLNamespace class +

    +

    GSXMLNamespace : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +
    +
    Conforms to:
    +
    NSCopying
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A GSXMLNamespace object wraps part of the document + structure of the underlying libxml library. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    descriptionFromType: 

    + + (NSString*) descriptionFromType: (NSInteger)type;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the string representation of the specified + numeric type. + +
    +
    +
    +
    +

    typeFromDescription: 

    + + (NSInteger) typeFromDescription: (NSString*)desc;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the numeric constant value for the namespace + type named. This method is inefficient, so the + returned value should be saved for re-use later. + The possible values are - + +
      +
    • + XML_LOCAL_NAMESPACE +
    • +
    + + +
    +
    +
    +
    +

    href 

    + - (NSString*) href;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the namespace reference + +
    +
    +
    +
    +

    lib 

    + - (void*) lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! + +
    +
    +
    +
    +

    next 

    + - (GSXMLNamespace*) next;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + return the next namespace. + +
    +
    +
    +
    +

    prefix 

    + - (NSString*) prefix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the namespace prefix. + +
    +
    +
    +
    +

    type 

    + - (NSInteger) type;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return type of namespace + +
    +
    +
    +
    +

    typeDescription 

    + - (NSString*) typeDescription;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return string representation of the type of the + namespace. + +
    +
    +
    +

    +

    Instance Variables for GSXMLNamespace Class

    +

    _parent

    + @protected id _parent;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    lib

    + @protected void* lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSXMLNode class +

    +

    GSXMLNode : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +
    +
    Conforms to:
    +
    NSCopying
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + A GSXMLNode object wraps part of the document structure of + the underlying libxml library. It may have a parent, + siblings, and children. + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    descriptionFromType: 

    + + (NSString*) descriptionFromType: (NSInteger)type;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the string constant value for the node + type given. + +
    +
    +
    +
    +

    typeFromDescription: 

    + + (NSInteger) typeFromDescription: (NSString*)desc;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Converts a node type string to a numeric + constant which can be compared with the result + of the -type + + method to determine what sort of node an instance + is. Because this method is quite inefficient, you + should cache the numeric type returned and re-use + the cached value. +

    +

    + + The node type names are - + +

      +
    • + XML_ELEMENT_NODE +
    • +
    • + XML_ATTRIBUTE_NODE +
    • +
    • + XML_TEXT_NODE +
    • +
    • + XML_CDATA_SECTION_NODE +
    • +
    • + XML_ENTITY_REF_NODE +
    • +
    • + XML_ENTITY_NODE +
    • +
    • + XML_PI_NODE +
    • +
    • + XML_COMMENT_NODE +
    • +
    • + XML_DOCUMENT_NODE +
    • +
    • + XML_DOCUMENT_TYPE_NODE +
    • +
    • + XML_DOCUMENT_FRAG_NODE +
    • +
    • + XML_NOTATION_NODE +
    • +
    • + XML_HTML_DOCUMENT_NODE +
    • +
    • + XML_DTD_NODE +
    • +
    • + XML_ELEMENT_DECL +
    • +
    • + XML_ATTRIBUTE_DECL +
    • +
    • + XML_ENTITY_DECL +
    • +
    + + +
    +
    +
    +
    +

    attributes 

    + - (NSDictionary*) attributes;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Return attributes and values as a dictionary +

    +

    + + +

    +
    +
    +
    +

    content 

    + - (NSString*) content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return node content as a string. This should return + meaningful information for text nodes and for + entity nodes containing only text nodes.
    If + entity substitution was not enabled during parsing, + an element containing text may actually contain both + text nodes and entity reference nodes, in this case + you should not use this method to get the content of + the element, but should examine the child nodes of the + element individually and perform any entity + reference you need to do explicitly.
    NB. + There are five standard entities which are + automatically substituted into the content + text rather than appearing as entity nodes in their + own right. These are '<', '>', ''', '"' + and '&'. If you with to receive content in which + these characters are represented by the original + entity escapes, you need to use the + + -escapedContent + + + method. + +
    +
    +
    +
    +

    description 

    + - (NSString*) description;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string representation of the node and all + its children (ie the XML text) or nil if + the node does not have reasonable contents. + +
    +
    +
    +
    +

    document 

    + - (GSXMLDocument*) document;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the document in which this node exists. + +
    +
    +
    +
    +

    escapedContent 

    + - (NSString*) escapedContent;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This performs the same function as the + + -content + + + method, but retains escaped character information + (the standard five entities &lt;, &gt;, + &apos;, &quot;, and &amp;) which + are normally replaced with their standard equivalents + (<, >, ', ", and &). + +
    +
    +
    +
    +

    firstAttribute 

    + - (GSXMLAttribute*) firstAttribute;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the first attribute in this node. + +
    +
    +
    +
    +

    firstChild 

    + - (GSXMLNode*) firstChild;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the first child node of this node. + +
    +    - (GSXMLNode*) elementRecursive: (GSXMLNode*)node
    +    {
    +      while (node != nil)
    +        {
    +          if ([node type] == XML_ELEMENT_NODE)
    +            {
    +              return node;
    +            }
    +          if ([node firstChild] != nil)
    +            {
    +              node = [self elementRecursive: [node firstChild]];
    +            }
    +          else
    +            {
    +              node = [node next];
    +            }
    +        }
    +      return node;
    +    }
    +  
    + + +
    +
    +
    +
    +

    firstChildElement 

    + - (GSXMLNode*) firstChildElement;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the first child element of this node. If you + wish to step through all children of the node + (including non-element nodes) you should use the + + -firstChild + + + method instead. + +
    +
    +
    +
    +

    isElement 

    + - (BOOL) isElement;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method, equivalent to calling + + -type + + + and comparing it with the result of passing + "XML_ELEMENT_NODE" to + + +typeFromDescription: + + + (but faster). + +
    +
    +
    +
    +

    isText 

    + - (BOOL) isText;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience method, equivalent to calling + + -type + + + and comparing it with the result of passing + "XML_TEXT_NODE" to + + +typeFromDescription: + + + (but faster). + +
    +
    +
    +
    +

    lib 

    + - (void*) lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a pointer to the raw libxml data used by + this document.
    Only for use by libxml experts! + +
    +
    +
    +
    +

    makeAttributeWithName: value: 

    + - (GSXMLAttribute*) makeAttributeWithName: (NSString*)name value: (NSString*)value;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Create and return an attribute (unless the named + attribute already exists, in which case we update + them value of the existing attribute and + return it. + +
    +
    +
    +
    +

    makeChildWithNamespace: name: content: 

    + - (GSXMLNode*) makeChildWithNamespace: (GSXMLNamespace*)ns name: (NSString*)name content: (NSString*)content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Creation of a new child element, added at the + end of parent children list. ns and + content parameters are optional (may be + nil). If content is non + nil, a child list containing the + TEXTs and ENTITY_REFs node will be created. Return + previous node. +

    +

    + + +

    +
    + GSXMLNode *n1, *n2;
    + GSXMLDocument *d, *d1;
    +
    + d = [GSXMLDocument documentWithVersion: @"1.0"];
    + [d setRoot: [d makeNodeWithNamespace: nil
    +                                 name: @"plist"
    +                              content: nil]];
    + [[d root] setObject: @"0.9" forKey: @"version"];
    + n1 = [[d root] makeChildWithNamespace: nil
    +                                  name: @"dict"
    +                               content: nil];
    + [n1 makeChildWithNamespace: nil name: @"key" content: @"Year Of Birth"];
    + [n1 makeChildWithNamespace: nil name: @"integer" content: @"65"];
    +
    + [n1 makeChildWithNamespace: nil name: @"key" content: @"Pets Names"];
    + [n1 makeChildWithNamespace: nil name: @"array" content: nil];
    +
    + 
    + + +
    +
    +
    +
    +

    makeComment: 

    + - (GSXMLNode*) makeComment: (NSString*)content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new comment element, added at the + end of parent children list. + +
    + d = [GSXMLDocument documentWithVersion: @"1.0"];
    +
    + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]];
    + [[d root] setObject: @"0.9" forKey: @"version"];
    + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil];
    + [n1 makeComment: @" this is a comment "];
    + 
    + + +
    +
    +
    +
    +

    makeNamespaceHref: prefix: 

    + - (GSXMLNamespace*) makeNamespaceHref: (NSString*)href prefix: (NSString*)prefix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Create a namespace attached to this node. + +
    +
    +
    +
    +

    makePI: content: 

    + - (GSXMLNode*) makePI: (NSString*)name content: (NSString*)content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new process instruction element, + added at the end of parent children list. + +
    + d = [GSXMLDocument documentWithVersion: @"1.0"];
    +
    + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]];
    + [[d root] setObject: @"0.9" forKey: @"version"];
    + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil];
    + [n1 makeComment: @" this is a comment "];
    + [n1 makePI: @"pi1" content: @"this is a process instruction"];
    + 
    + + +
    +
    +
    +
    +

    makeText: 

    + - (GSXMLNode*) makeText: (NSString*)content;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new text element, added at the end + of parent children list. + +
    + d = [GSXMLDocument documentWithVersion: @"1.0"];
    +
    + [d setRoot: [d makeNodeWithNamespace: nil name: @"plist" content: nil]];
    + [[d root] setObject: @"0.9" forKey: @"version"];
    + n1 = [[d root] makeChildWithNamespace: nil name: @"dict" content: nil];
    + [n1 makeText: @" this is a text "];
    + 
    + + +
    +
    +
    +
    +

    name 

    + - (NSString*) name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the node-name + +
    +
    +
    +
    +

    namespace 

    + - (GSXMLNamespace*) namespace;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the namespace of the node. + +
    +
    +
    +
    +

    namespaceDefinitions 

    + - (GSXMLNamespace*) namespaceDefinitions;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return namespace definitions for the node + +
    +
    +
    +
    +

    next 

    + - (GSXMLNode*) next;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the next node at this level. This method can + return any type of node, and it may be more + convenient to use the + + -nextElement + + + node if you are parsing a document where you wish to + ignore non-element nodes such as whitespace text + separating elements. + +
    +
    +
    +
    +

    nextElement 

    + - (GSXMLNode*) nextElement;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the next element node, skipping past any + other node types (such as text nodes). If there is no + element node to be returned, this method returns + nil.
    NB. This method is not + available in java, as the method name conflicts + with that of java's Enumerator class. + +
    +
    +
    +
    +

    objectForKey: 

    + - (NSString*) objectForKey: (NSString*)key;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the attribute value for the specified + key. + +
    +
    +
    +
    +

    parent 

    + - (GSXMLNode*) parent;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the parent of this node. + +
    +
    +
    +
    +

    previous 

    + - (GSXMLNode*) previous;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the previous node at this level. + +
    +
    +
    +
    +

    previousElement 

    + - (GSXMLNode*) previousElement;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the previous element node at this level. +
    NB. This method is not available in java, as + the method name conflicts with that of java's + Enumerator class. + +
    +
    +
    +
    +

    propertiesAsDictionaryWithKeyTransformationSel: 

    + - (NSMutableDictionary*) propertiesAsDictionaryWithKeyTransformationSel: (SEL)keyTransformSel;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Return attributes and values as a dictionary, but + applies the specified selector to each key before + adding the key and value to the dictionary. The + selector must be a method of NSString taking no + arguments and returning an object suitable for + use as a dictionary key. +

    +

    + + +

    +

    + + This method exists for the use of GSWeb... it is + probably not of much use elsewhere. +

    +

    + + +

    +
    +
    +
    +

    setNamespace: 

    + - (void) setNamespace: (GSXMLNamespace*)space;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the namespace of the receiver to the value + specified.
    Supplying a nil + namespace removes any namespace previously set or + any namespace that the node inherited from a parent + when it was created. + +
    +
    +
    +
    +

    setObject: forKey: 

    + - (void) setObject: (NSString*)value forKey: (NSString*)key;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set (or reset) an attribute carried by a node. + +
    +   [n1 setObject: @"prop1" forKey: @"name1"];
    +   [n1 setObject: @"prop2" forKey: @"name2"];
    +   [n1 setObject: @"prop3" forKey: @"name3"];
    + 
    + + +
    +
    +
    +
    +

    type 

    + - (NSInteger) type;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return node-type. The most efficient way of testing + node types is to use this method and compare the + return value with a value you previously obtained + using the + + +typeFromDescription: + + + method. + +
    +
    +
    +
    +

    typeDescription 

    + - (NSString*) typeDescription;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return node type as a string. + +
    +
    +
    +

    +

    Instance Variables for GSXMLNode Class

    +

    _parent

    + @protected id _parent;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    lib

    + @protected void* lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSXMLParser class +

    +

    GSXMLParser : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + The XML parser object is the pivotal part of parsing an + XML document - it will either build a tree representing + the document (if initialized without a GSSAXHandler), + or will cooperate with a GSSAXHandler object to provide + parsing without the overhead of building a tree. +

    +

    + + +

    +

    + + The parser may be initialized with an input source (in + which case it will expect to be asked to parse the + entire input in a single operation), or without. If + it is initialised without an input source, incremental + parsing can be done by feeding successive parts of + the XML document into the parser as NSData objects. +

    +

    + + +

    +
    + Instance Variables +

    + Method summary + +
    +
    +

    loadEntity: at: 

    + + (NSString*) loadEntity: (NSString*)publicId at: (NSString*)location;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + This method controls the loading of external + entities into the system. If it returns an empty + string, the entity is not loaded. If it returns a + filename, the entity is loaded from that file. + If it returns nil, the default entity + loading mechanism is used. +

    +

    + + +

    +

    + + The default entity loading mechanism is to construct + a file name from the locationURL, by replacing all path + separators with underscores, then attempt to + locate that file in the DTDs resource directory of + the main bundle, and all the standard system + locations. +

    +

    + + +

    +

    + + As a special case, the default loader examines the + publicID and if it is a GNUstep DTD, the loader + constructs a special name from the ID (by + replacing dots with underscores and spaces with + hyphens) and looks for a file with that name and + a '.dtd' extension in the GNUstep bundles. +

    +

    + + +

    +

    + + NB. This method will only be called if there is no + SAX handler in use, or if the corresponding method in + the SAX handler returns nil. +

    +

    + + +

    +
    +
    +
    +

    parser 

    + + (GSXMLParser*) parser;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new Parser (for incremental parsing) + by calling + + -initWithSAXHandler: + + + +
    +
    +
    +
    +

    parserWithContentsOfFile: 

    + + (GSXMLParser*) parserWithContentsOfFile: (NSString*)path;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfFile: + + +
    + GSXMLParser       *p = [GSXMLParser parserWithContentsOfFile: @"macos.xml"];
    +
    + if ([p parse])
    +   {
    +     [[p document] dump];
    +   }
    + else
    +   {
    +     printf("error parse file\n");
    +   }
    + 
    + + +
    +
    +
    +
    +

    parserWithContentsOfURL: 

    + + (GSXMLParser*) parserWithContentsOfURL: (NSURL*)url;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfURL: + + +
    +
    +
    +
    +

    parserWithData: 

    + + (GSXMLParser*) parserWithData: (NSData*)data;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new Parser by calling + + -initWithSAXHandler:withData: + + + +
    +
    +
    +
    +

    parserWithSAXHandler: 

    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Creation of a new Parser by calling + + -initWithSAXHandler: + + +

    +

    + + +

    +

    + + If the handler object supplied is + nil, the parser will build a tree + representing the parsed file rather than + attempting to get the handler to + deal with the parsed elements and entities. +

    +

    + + +

    +
    +
    +
    +

    parserWithSAXHandler: withContentsOfFile: 

    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withContentsOfFile: (NSString*)path;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfFile: + + +
    + NSAutoreleasePool *arp = [NSAutoreleasePool new];
    + GSSAXHandler *h = [GSDebugSAXHandler handler];
    + GSXMLParser  *p = [GSXMLParser parserWithSAXHandler: h
    +                                  withContentsOfFile: @"macos.xml"];
    + if ([p parse])
    +   {
    +      printf("ok\n");
    +   }
    + RELEASE(arp);
    + 
    + + +
    +
    +
    +
    +

    parserWithSAXHandler: withContentsOfURL: 

    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withContentsOfURL: (NSURL*)url;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new Parser by calling + -initWithSAXHandler:withContentsOfURL: + + +
    +
    +
    +
    +

    parserWithSAXHandler: withData: 

    + + (GSXMLParser*) parserWithSAXHandler: (GSSAXHandler*)handler withData: (NSData*)data;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creation of a new Parser by calling + + -initWithSAXHandler:withData: + + + +
    +
    +
    +
    +

    setDTDs: 

    + + (void) setDTDs: (NSString*)aPath;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets a directory in which to look for DTDs when + resolving external references. Can be used whjen + DTDs have not been installed in the normal locatioons. + +
    +
    +
    +
    +

    xmlEncodingStringForStringEncoding: 

    + + (NSString*) xmlEncodingStringForStringEncoding: (NSStringEncoding)encoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the name of the string encoding + (for XML) to use for the specified OpenStep + encoding. + +
    +
    +
    +
    +

    abortParsing 

    + - (void) abortParsing;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + If called by a SAX callback routine, this method will + terminate the parsiong process. + +
    +
    +
    +
    +

    columnNumber 

    + - (NSInteger) columnNumber;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + If executed during a parse operation, returns the + current column number. + +
    +
    +
    +
    +

    doValidityChecking: 

    + - (BOOL) doValidityChecking: (BOOL)yesno;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets whether the document needs to be validated. + +
    +
    +
    +
    +

    document 

    + - (GSXMLDocument*) document;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the document produced as a result of parsing + data. + +
    +
    +
    +
    +

    errNo 

    + - (NSInteger) errNo;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return error code for last parse operation. + +
    +
    +
    +
    +

    getWarnings: 

    + - (BOOL) getWarnings: (BOOL)yesno;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets whether warnings are generated. + +
    +
    +
    +
    +

    initWithSAXHandler: 

    + - (id) initWithSAXHandler: (GSSAXHandler*)handler;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +This is a designated initialiser for the class.
    +
    + + +

    +

    + + Initialisation of a new Parser with SAX + handler. +

    +

    + + +

    +

    + + If the handler object supplied is + nil, the parser will use an instance + of + GSTreeSAXHandler + + to build a tree representing the parsed file. This + tree will then be available (via the + + -document + + + method) as a + GSXMLDocument +on completion of parsing.

    +

    + + +

    +

    + + The source for the parsing process is not + specified - so parsing must be done + incrementally by feeding data to the + parser. +

    +

    + + +

    +
    +
    +
    +

    initWithSAXHandler: withContentsOfFile: 

    + - (id) initWithSAXHandler: (GSSAXHandler*)handler withContentsOfFile: (NSString*)path;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + + +

    +

    + + +

    +

    + + Sets the input source for the parser to be the + specified file - so parsing of the entire file + will be performed rather than incremental parsing. +

    +

    + + +

    +
    +
    +
    +

    initWithSAXHandler: withContentsOfURL: 

    + - (id) initWithSAXHandler: (GSSAXHandler*)handler withContentsOfURL: (NSURL*)url;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + + +

    +

    + + +

    +

    + + Sets the input source for the parser to be the + specified URL - so parsing of the entire + document will be performed rather than + incremental parsing. +

    +

    + + +

    +
    +
    +
    +

    initWithSAXHandler: withData: 

    + - (id) initWithSAXHandler: (GSSAXHandler*)handler withData: (NSData*)data;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Initialisation of a new Parser with SAX + handler (if not nil) by + calling + + -initWithSAXHandler: + + +

    +

    + + +

    +

    + + Sets the input source for the parser to be the + specified data object (which must + contain an XML document), so parsing of the + entire document will be performed rather than + incremental parsing. +

    +

    + + +

    +
    +
    +
    +

    keepBlanks: 

    + - (BOOL) keepBlanks: (BOOL)yesno;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set and return the previous value for blank text nodes + support. ignorableWhitespace nodes are only + generated when running the parser in validating + mode and when the current element doesn't allow CDATA + or mixed content. + +
    +
    +
    +
    +

    lineNumber 

    + - (NSInteger) lineNumber;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + If executed during a parse operation, returns the + current line number. + +
    +
    +
    +
    +

    messages 

    + - (NSString*) messages;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the string into which warning and error + messages are saved, or nil if they + are being written to stderr. + +
    +
    +
    +
    +

    parse 

    + - (BOOL) parse;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Parse source. Return YES if parsed, + otherwise NO. This method should be + called once to parse the entire document. + +
    + GSXMLParser       *p = [GSXMLParser parserWithContentsOfFile:@"macos.xml"];
    +
    + if ([p parse])
    +   {
    +     [[p doc] dump];
    +   }
    + else
    +   {
    +     printf("error parse file\n");
    +   }
    + 
    + + +
    +
    +
    +
    +

    parse: 

    + - (BOOL) parse: (NSData*)data;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Pass data to the parser for incremental + parsing. This method should be called many + times, with each call passing another block of + data from the same document. After the + whole of the document has been parsed, the method + should be called with an empty or nil + data object to indicate end of parsing. + On this final call, the return value indicates whether + the document was valid or not. +

    +

    + + +

    + GSXMLParser       *p = [GSXMLParser parserWithSAXHandler: nil source: nil];
    +
    + while ((data = getMoreData()) != nil)
    +   {
    +     if ([p parse: data] == NO)
    +       {
    +         NSLog(@"parse error");
    +       }
    +   }
    +   // Do something with document parsed
    + [p parse: nil];  // Completed parsing of document.
    + 
    + + +
    +
    +
    +
    +

    publicID 

    + - (NSString*) publicID;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the public ID of the document being parsed. + +
    +
    +
    +
    +

    saveMessages: 

    + - (void) saveMessages: (BOOL)yesno;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets up (or removes) a mutable string to which error + and warning messages are saved. Using an argument of + NO will cause these messages to be + written to stderr (the default).
    NB. A SAX + handler which overrides the error and warning + logging messages may stop this mechanism operating. + +
    +
    +
    +
    +

    substituteEntities: 

    + - (BOOL) substituteEntities: (BOOL)yesno;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Set and return the previous value for entity support. + Initially the parser always keeps entity + references instead of substituting entity values + in the output. + +
    +
    +
    +
    +

    systemID 

    + - (NSString*) systemID;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the system ID of the document being parsed. + +
    +
    +
    +

    +

    Instance Variables for GSXMLParser Class

    +

    lib

    + @protected void* lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    messages

    + @protected NSMutableString* messages;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    saxHandler

    + @protected GSSAXHandler* saxHandler;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    src

    + @protected id src;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +


    + +

    + Software documentation for the GSXMLRPC class +

    +

    GSXMLRPC : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +
    +
    Conforms to:
    +
    NSURLHandleClient
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + The GSXMLRPC class provides methods for constructing + and parsing XMLRPC method call and response documents + ... so that calls may be constructed of standard + objects. +

    +

    + + +

    +

    + + The correspondence between XMLRPC values and + Objective-C objects is as follows - +

    +

    + + +

      +
    • + + i4 (or + int) is an + NSNumber + + other than a real/float or boolean. + +
    • +
    • + + boolean is an + NSNumber + + created as a BOOL. + +
    • +
    • + + string is an + NSString + + object. + +
    • +
    • + + double is an + NSNumber + + created as a float or + double. + +
    • +
    • + + dateTime.iso8601 is an + NSDate + + object. + +
    • +
    • + + base64 is an + NSData + + object. + +
    • +
    • + + array is an + NSArray + + object. + +
    • +
    • + + struct is an + NSDictionary +object. +
    • +
    + + +

    +

    + + If you attempt to use any other type of + object in the construction of an + XMLRPC document, the + [NSObject -description] + method of that object will be used to create a striong, and the resulting object will be encoded as an XMLRPC string element. +

    +

    + + +

    +

    + + In particular, the names of members in a + struct must be strings, so if + you provide an + NSDictionary +object to represent a struct the keys of the dictionary will be converted to strings if necessary.

    +

    + + +

    +

    + + The class also provides a method for + making a synchronous XMLRPC method + call (with timeout), or an + asynchronous call in which + the call completion is handled by a + delegate. +

    +

    + + +

    +

    + + You may also use the class to + implement an XMLRPC server, by + calling the + -parseMethod:params: + method to parse the data POSTed to your server, and -buildResponseWithParams: + (or -buildResponseWithFaultCode:andString:) to produce the data to be sent back to the client. +

    +

    + + +

    +

    + + In order to simply make a synchronous + XMLRPC call to a server, all you + need to do is write code like: +

    +

    + + +

    +   GSXMLRPC	*server = [[GSXMLRPC alloc] initWithURL: @"http://server/path"];
    +   id		result = [server makeMethodCall: name params: p timeout: 30];
    + 
    + + +

    +

    + + Saying that you want to call the specified method + ('name') on the server, passing the parameters + ('p') and with a 30 second timeout.
    If there + is a network or http-level error or a timeout, the + result will be an error string, otherwise it will be + an array (on success) or a dictionary containing the + fault details. +

    +

    + + +

    + Method summary + +
    +
    +

    URLHandle: resourceDataDidBecomeAvailable: 

    + - (void) URLHandle: (NSURLHandle*)sender resourceDataDidBecomeAvailable: (NSData*)newData;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + +
    +
    +
    +
    +

    URLHandle: resourceDidFailLoadingWithReason: 

    + - (void) URLHandle: (NSURLHandle*)sender resourceDidFailLoadingWithReason: (NSString*)reason;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + +
    +
    +
    +
    +

    URLHandleResourceDidBeginLoading: 

    + - (void) URLHandleResourceDidBeginLoading: (NSURLHandle*)sender;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + +
    +
    +
    +
    +

    URLHandleResourceDidCancelLoading: 

    + - (void) URLHandleResourceDidCancelLoading: (NSURLHandle*)sender;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + +
    +
    +
    +
    +

    URLHandleResourceDidFinishLoading: 

    + - (void) URLHandleResourceDidFinishLoading: (NSURLHandle*)sender;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + + Allows GSXMLRPC to act as a client of NSURLHandle. + Internal use only. + +
    +
    +
    +
    +

    buildMethod: params: 

    + - (NSData*) buildMethod: (NSString*)method params: (NSArray*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Given a method name and an array of + parameters, this method constructs + the XML document for the corresponding XMLRPC call and + returns the document as an NSData object containing + UTF-8 text.
    The params array may be + empty or nil if there are no parameters + to be passed.
    The method returns + nil if passed an invalid + method name (a method name may + contain any of the ascii alphanumeric characters + and underscore, fullstop, colon, or slash).
    This + method is used internally when sending an + XMLRPC method call to a remote system, + but you can also call it yourself. + +
    +
    +
    +
    +

    buildMethodCall: params: 

    + - (NSString*) buildMethodCall: (NSString*)method params: (NSArray*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Given a method name and an array of + parameters, this method constructs + the XML document for the corresponding XMLRPC call and + returns the document as a string.
    The + params array may be empty or + nil if there are no parameters to be + passed.
    The method returns + nil if passed an invalid + method name (a method name may + contain any of the ascii alphanumeric characters + and underscore, fullstop, colon, or slash).
    + +
    +
    +
    +
    +

    buildResponseWithFaultCode: andString: 

    + - (NSString*) buildResponseWithFaultCode: (NSInteger)code andString: (NSString*)s;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Constructs an XML document for an XMLRPC fault + response with the specified code and + string. The resulting document is returned as a + string.
    This method is intended for use by + applications acting as XMLRPC servers. + +
    +
    +
    +
    +

    buildResponseWithParams: 

    + - (NSString*) buildResponseWithParams: (NSArray*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Builds an XMLRPC response with the specified array + of parameters and returns the document as a string. +
    The params array may be empty or + nil if there are no parameters to be + returned (an empty params element will + be created).
    This method is intended for use by + applications acting as XMLRPC servers. + +
    +
    +
    +
    +

    compact 

    + - (BOOL) compact;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the value set by a prior call to + + -setCompact: + + + (or NO... the default). + +
    +
    +
    +
    +

    delegate 

    + - (id) delegate;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the delegate previously set by the + + -setDelegate: + + + method.
    The delegate handles completion of + asynchronous method calls to the URL specified + when the receiver was initialised (if any). + +
    +
    +
    +
    +

    initWithURL: 

    + - (id) initWithURL: (NSString*)url;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Initialise the receiver to make XMLRPC calls to + the specified URL.
    This method just calls + -initWithURL:certificate:privateKey:password: + with nil arguments for the SSL credentials. + +
    +
    +
    +
    +

    initWithURL: certificate: privateKey: password: 

    + - (id) initWithURL: (NSString*)url certificate: (NSString*)cert privateKey: (NSString*)pKey password: (NSString*)pwd;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +This is a designated initialiser for the class.
    +
    + + Initialise the receiver to make XMLRPC calls to + the specified url and (optionally) with the + specified SSL parameters.
    The + url argument may be nil, in + which case the receiver will be unable to make XMLRPC + calls, but can be used to parse incoming requests + and build responses.
    If the SSL credentials are + non-nil, connections to the remote server will be + authenticated using the supplied certificate + so that the remote system knows who is contacting it. + +
    +
    +
    +
    +

    makeMethodCall: params: timeout: 

    + - (id) makeMethodCall: (NSString*)method params: (NSArray*)params timeout: (NSInteger)seconds;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Calls + + -sendMethodCall:params:timeout: + + + and waits for the response.
    Returns the response + parameters (an array), the response fault (a + dictionary), or a failure reason (a string). + +
    +
    +
    +
    +

    parseMethod: params: 

    + - (NSString*) parseMethod: (NSData*)request params: (NSMutableArray*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Parses XML data containing an XMLRPC method call. +
    Returns the name of the method call.
    + Empties, and then places the method parameters (if + any) in the params argument.
    NB. Any + containers (arrays or dictionaries) in the + parsed parameters will be mutable, so you can modify + this data structure as you like.
    Raises an + exception if parsing fails.
    This method is + intended for the use of XMLRPC server + applications. + +
    +
    +
    +
    +

    parseResponse: params: 

    + - (NSDictionary*) parseResponse: (NSData*)resp params: (NSMutableArray*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Parses XML data containing an XMLRPC method + response.
    Returns nil for + success, the fault dictionary on failure.
    + Places the response parameters (if any) in the + params argument.
    NB. Any containers + (arrays or dictionaries) in the parsed parameters + will be mutable, so you can modify this data structure + as you like.
    Raises an exception if parsing + fails.
    Used internally when making a method + call to a remote server. + +
    +
    +
    +
    +

    result 

    + - (id) result;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the result of the last method call, or + nil if there has been no method call or + one is in progress.
    The result may be one of - + +
      +
    • + + A mutable array... the parameters of a success + response. + +
    • +
    • + + A dictionary... containing a fault response. + +
    • +
    • + + A string... describing a low-level failure (eg. + timeout). + +
    • +
    + + NB. Any containers (arrays or dictionaries) in the + parsed parameters of a success response will be + mutable, so you can modify this data structure as + you like. + +
    +
    +
    +
    +

    sendMethodCall: params: timeout: 

    + - (BOOL) sendMethodCall: (NSString*)method params: (NSArray*)params timeout: (NSInteger)seconds;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Send an asynchronous XMLRPC method call + with the specified timeout.
    A delegate should + have been set to handle the result of this call, but + if one was not set the state of the asynchronous call + may be polled by calling the + + -result + + + method, which will return nil + as long as the call has not completed. +
    The call may be cancelled by calling the + + -timeout: + + + method
    This method + returns YES if the call was started, + NO if it could not be started (eg + because another call is in progress or because of + bad arguments).
    NB. For the asynchronous + operation to proceed, the current + NSRunLoop + + must be run. + +
    +
    +
    +
    +

    setCompact: 

    + - (void) setCompact: (BOOL)flag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Specify whether to generate compact XML (omit + indentation and other white space and omit + <string> element markup).
    + Compact representation saves some space (can be + important when sent over slow/low bandwidth + connections), but sacrifices readability. + +
    +
    +
    +
    +

    setDebug: 

    + - (void) setDebug: (BOOL)flag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Specify whether to perform debug trace on I/O + +
    +
    +
    +
    +

    setDelegate: 

    + - (void) setDelegate: (id)aDelegate;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the delegate object which will receive callbacks + when an XMLRPC call completes.
    NB. this + delegate is not retained, and should be + removed before it is deallocated (call + + -setDelegate: + + + again with a nil argument to remove the + delegate). + +
    +
    +
    +
    +

    setTimeZone: 

    + - (void) setTimeZone: (NSTimeZone*)timeZone;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the time zone for use when sending/receiving + date/time values.
    The XMLRPC specification + says that timezone is server dependent so you will + need to set it according to the server you are + connecting to.
    If this is not set, UCT is + assumed. + +
    +
    +
    +
    +

    timeZone 

    + - (NSTimeZone*) timeZone;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Return the time zone currently set. + +
    +
    +
    +
    +

    timeout: 

    + - (void) timeout: (NSTimer*)t;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Handles timeouts, passing information to delegate + ... you don't need to call this method, but you + may call it in order to cancel an + asynchronous request as if it had timed out. + +
    +
    +
    + +

    + Software documentation for the GSXPathBoolean class +

    +

    GSXPathBoolean : GSXPathObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + For XPath queries returning true/false. + +
    + Method summary + +
    +
    +

    booleanValue 

    + - (BOOL) booleanValue;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the the value of the receiver... YES/NO, + true/false. + +
    +
    +
    + +

    + Software documentation for the GSXPathContext class +

    +

    GSXPathContext : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Use of the GSXPathContext class is simple... you just + need to look up xpath to learn the syntax of xpath + expressions, then you can apply those + expressions to a context to retrieve data from + a document. +

    +

    + + +

    + GSXMLParser       *p = [GSXMLParser parserWithContentsOfFile: @"xp.xml"];
    +
    + if ([p parse])
    +   {
    +     GSXMLDocument *d = [p document];
    +     GSXPathContext *c = [[GSXPathContext alloc] initWithDocument: document];
    +     GSXPathString *result = [c evaluateExpression: @"string(/body/text())"];
    +
    +     GSPrintf(stdout, @"Got %@", [result stringValue]);
    +   }
    + else
    +   {
    +     GSPrintf(stderr, "error parsing file\n");
    +   }
    + 
    + + +
    +
    + Instance Variables +

    + Method summary + +
    +
    +

    evaluateExpression: 

    + - (GSXPathObject*) evaluateExpression: (NSString*)XPathExpression;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Evaluates the supplied expression and returns the + resulting node or node set. If the expression is + invalid, returns nil. + +
    +
    +
    +
    +

    initWithDocument: 

    + - (id) initWithDocument: (GSXMLDocument*)d;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Initialises the receiver as an xpath parser for + the supplied document. + +
    +
    +
    +
    +

    registerNamespaceWithPrefix: href: 

    + - (BOOL) registerNamespaceWithPrefix: (NSString*)prefix href: (NSString*)href;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +

    +

    Instance Variables for GSXPathContext Class

    +

    _document

    + @protected GSXMLDocument* _document;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _lib

    + @protected void* _lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +


    + +

    + Software documentation for the GSXPathNodeSet class +

    +

    GSXPathNodeSet : GSXPathObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + For XPath queries returning a node set.
    An XPATH + node set is an ordered set of nodes returned as a result + of an expression. The order of the nodes in the set is the + same as the order in the xml document from which they + were extracted. + +
    + Method summary + +
    +
    +

    count 

    + - (NSUInteger) count;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the number of nodes in the receiver. + +
    +
    +
    +
    +

    length 

    + - (NSUInteger) length;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Deprecated + +
    +
    +
    +
    +

    nodeAtIndex: 

    + - (GSXMLNode*) nodeAtIndex: (NSUInteger)index;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Please note that index starts from 0. +
    Returns the node from the receiver at the + specified index, or nil + if no such node exists. + +
    +
    +
    + +

    + Software documentation for the GSXPathNumber class +

    +

    GSXPathNumber : GSXPathObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + For XPath queries returning a number. + +
    + Method summary + +
    +
    +

    doubleValue 

    + - (double) doubleValue;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the floating point (double + ) value of the receiver. + +
    +
    +
    + +

    + Software documentation for the GSXPathObject class +

    +

    GSXPathObject : NSObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + XPath queries return a GSXPathObject. GSXPathObject in + itself is an abstract class; there are four types of + completely different GSXPathObject types, listed + below. I'm afraid you need to check the returned type + of each GSXPath query to make sure it's what you meant it + to be.
    + +

    +

    + + You don't create GSXPathObject instances, instead the + XPATH system creates them and returns them as the + result of the + [GSXPathContext -evaluateExpression:] + method. +

    +

    + + +

    +
    + Instance Variables +

    +

    +

    Instance Variables for GSXPathObject Class

    +

    _context

    + @protected GSXPathContext* _context;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +

    _lib

    + @protected void* _lib;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Warning the underscore at the start of the + name of this instance variable indicates that, even + though it is not technically private, it is + intended for internal use within the package, and + you should not use the variable in other code. + +
    +
    +


    + +

    + Software documentation for the GSXPathString class +

    +

    GSXPathString : GSXPathObject

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + For XPath queries returning a string. + +
    + Method summary + +
    +
    +

    stringValue 

    + - (NSString*) stringValue;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the string value of the receiver. + +
    +
    +
    + +

    + Software documentation for the GSXMLDocument(XSLT) + category +

    +

    GSXMLDocument(XSLT)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    xsltTransformFile: stylesheet: 

    + + (GSXMLDocument*) xsltTransformFile: (NSString*)xmlFile stylesheet: (NSString*)xsltStylesheet;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Performs an XSLT transformation on the specified + file using the stylesheet provided.
    Returns an + autoreleased GSXMLDocument containing the + transformed XML, or nil on + failure. + +
    +
    +
    +
    +

    xsltTransformFile: stylesheet: params: 

    + + (GSXMLDocument*) xsltTransformFile: (NSString*)xmlFile stylesheet: (NSString*)xsltStylesheet params: (NSDictionary*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Performs an XSLT transformation on the specified + file using the stylesheet and parameters provided. See + the libxslt documentation for details of the supported + parameters.
    Returns an autoreleased + GSXMLDocument containing the transformed XML, + or nil on failure. + +
    +
    +
    +
    +

    xsltTransformXml: stylesheet: 

    + + (GSXMLDocument*) xsltTransformXml: (NSData*)xmlData stylesheet: (NSData*)xsltStylesheet;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Performs an XSLT transformation on the specified + file using the stylesheet provided.
    Returns an + autoreleased GSXMLDocument containing the + transformed XML, or nil on + failure. + +
    +
    +
    +
    +

    xsltTransformXml: stylesheet: params: 

    + + (GSXMLDocument*) xsltTransformXml: (NSData*)xmlData stylesheet: (NSData*)xsltStylesheet params: (NSDictionary*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Performs an XSLT transformation on the specified + file using the stylesheet and parameters provided.See + the libxslt documentation for details of the supported + parameters.
    Returns an autoreleased + GSXMLDocument containing the transformed XML, + or nil on failure. + +
    +
    +
    +
    +

    xsltTransform: 

    + - (GSXMLDocument*) xsltTransform: (GSXMLDocument*)xsltStylesheet;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Performs an XSLT transformation on the current + document using the supplied stylesheet.
    + Returns an autoreleased GSXMLDocument containing + the transformed XML, or nil on failure. + +
    +
    +
    +
    +

    xsltTransform: params: 

    + - (GSXMLDocument*) xsltTransform: (GSXMLDocument*)xsltStylesheet params: (NSDictionary*)params;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Performs an XSLT transformation on the current + document using the supplied stylesheet and + paramaters (params may be + nil). See the libxslt documentation for + details of the supported parameters.
    Returns + an autoreleased GSXMLDocument containing the transformed + XML, or nil on failure. + +
    +
    +
    + +

    + Software documentation for the GSXMLRPC(Delegate) + category +

    +

    GSXMLRPC(Delegate)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Delegates should implement this method in order to + be informed of the success or failure of an XMLRPC method + call which was initiated by the + + -sendMethodCall:params:timeout: + + + method.
    + +
    + Method summary + +
    +
    +

    completedXMLRPC: 

    + - (void) completedXMLRPC: (GSXMLRPC*)sender;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +An empty method provided for subclasses to override.
    +
    + + Called by the sender when an XMLRPC + method call completes (either success or failure). + The delegate may then call the + + -result + + + method to retrieve the result of the method call + from the sender. + +
    +
    +
    + +

    + Software documentation for the NSString(GSXML) + category +

    +

    NSString(GSXML)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/GSXML.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Convenience methods for managing XML escape + sequences in an NSString. + +
    + Method summary + +
    +
    +

    stringByEscapingXML 

    + - (NSString*) stringByEscapingXML;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Deals with standard XML internal entities.
    + Converts the five XML special characters in the + receiver ('>', '<', '&', ''' and + '"') to their escaped equivalents, and + return the escaped string.
    Also converts + non-ascii characters to the corresponding numeric + entity escape sequences.
    You should perform + any non-standard entity substitution you require + after you have called this method. + +
    +
    +
    +
    +

    stringByUnescapingXML 

    + - (NSString*) stringByUnescapingXML;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Deals with standard XML internal entities.
    + Converts the five XML escape sequences + ('&gt;', '&lt;', '&amp;', + '&apos;' and '&quot;') to the unicode + characters they represent, and returns the + unescaped string.
    Also converts numeric + entity escape sequences to the corresponding unicode + characters.
    You should perform any + non-standard entity substitution you require + before you have called this method. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/MacrosTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/MacrosTOC.html new file mode 100644 index 0000000..22ced26 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/MacrosTOC.html @@ -0,0 +1,60 @@ + + + + + Macros + + + +

    Macros

    + + + + ASSIGN
    + ASSIGNCOPY
    + AUTORELEASE
    + CALL_BLOCK
    + CALL_BLOCK_NO_ARGS
    + CHECK_INDEX_RANGE_ERROR
    + CREATE_AUTORELEASE_POOL
    + DESTROY
    + GSLocalizedStaticString
    + GSOnceFLog
    + GSOnceMLog
    + GS_API_LATEST
    + GS_API_MACOSX
    + GS_API_NONE
    + GS_API_OPENSTEP
    + GS_API_OSSPEC
    + GS_API_VERSION
    + GS_INITIALIZED_LOCK
    + GS_MAX_OBJECTS_FROM_STACK
    + GS_RANGE_CHECK
    + GS_USEIDLIST
    + GS_USEIDPAIRLIST
    + NSDebugFLLog
    + NSDebugFLog
    + NSDebugFRLog
    + NSDebugLLog
    + NSDebugLog
    + NSDebugMLLog
    + NSDebugMLog
    + NSDebugMRLog
    + NSWarnFLog
    + NSWarnLog
    + NSWarnMLog
    + OS_API_VERSION
    + RECREATE_AUTORELEASE_POOL
    + RELEASE
    + RETAIN
    + TEST_AUTORELEASE
    + TEST_RELEASE
    + TEST_RETAIN
    + _
    + __
    + +
    +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/MainIndex.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/MainIndex.html new file mode 100644 index 0000000..29a36f7 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/MainIndex.html @@ -0,0 +1,14 @@ + + + Index

    + Classes
    + Constants
    + Functions
    + Macros
    + Types
    + Variables
    +
    + (intro)  (unframe) +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSArray+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSArray+GNUstepBase.html new file mode 100644 index 0000000..587729d --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSArray+GNUstepBase.html @@ -0,0 +1,105 @@ + + + + + NSArray+GNUstepBase documentation + + + + Up +
    +

    NSArray+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the NSArray(GNUstepBase) + category +

    +

    NSArray(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSArray+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    insertionPosition: usingFunction: context: 

    + - (NSUInteger) insertionPosition: (id)item usingFunction: (NSComparisonResult(*)(id,id,void*))sorter context: (void*)context;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + +

    +

    + + Method for working with sorted arrays - use a + binary chop to determine the insertion location + for an object. If equal objects already exist in the + array, they will be located immediately before the + insertion position. +

    +

    + + +

    +

    + + The comparator function takes two items as arguments, + the first is the item to be added, the + second is the item already in the + array. The function should return + NSOrderedAscending if the + item to be added is 'less than' the + item in the array, NSOrderedDescending + if it is greater, and NSOrderedSame if it is equal. +

    +

    + + +

    +
    +
    +
    +

    insertionPosition: usingSelector: 

    + - (NSUInteger) insertionPosition: (id)item usingSelector: (SEL)comp;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSAttributedString+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSAttributedString+GNUstepBase.html new file mode 100644 index 0000000..1a2b3d3 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSAttributedString+GNUstepBase.html @@ -0,0 +1,68 @@ + + + + + NSAttributedString+GNUstepBase documentation + + + + Up +
    +

    NSAttributedString+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the + NSAttributedString(GNUstepBase) + category +

    +

    NSAttributedString(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSAttributedString+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    attributedSubstringWithRange: 

    + - (NSAttributedString*) attributedSubstringWithRange: (NSRange)aRange;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Deprecated synonym for + attributedSubstringFromRange: + for consistency with NSString + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSBundle+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSBundle+GNUstepBase.html new file mode 100644 index 0000000..ad243fd --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSBundle+GNUstepBase.html @@ -0,0 +1,65 @@ + + + + + NSBundle+GNUstepBase documentation + + + + Up +
    +

    NSBundle+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the NSBundle(GNUstepBase) + category +

    +

    NSBundle(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSBundle+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    pathForLibraryResource: ofType: inDirectory: 

    + + (NSString*) pathForLibraryResource: (NSString*)name ofType: (NSString*)ext inDirectory: (NSString*)bundlePath;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSCalendarDate+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSCalendarDate+GNUstepBase.html new file mode 100644 index 0000000..11ef3b3 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSCalendarDate+GNUstepBase.html @@ -0,0 +1,95 @@ + + + + + NSCalendarDate+GNUstepBase documentation + + + + Up +
    +

    NSCalendarDate+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the + NSCalendarDate(GNUstepBase) + category +

    +

    NSCalendarDate(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSCalendarDate+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    isoYear 

    + - (NSUInteger) isoYear;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + According to the ISO definition of a week, each + year begins with the Monday of the week containing the + 4th of January. If we a have a date early in January or + late in December we therefore may need to adjust the + year to match the definition of a week.
    This + method is used to return the ISO year rather than + the normal calendar year. + +
    +
    +
    +
    +

    weekOfYear 

    + - (NSInteger) weekOfYear;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + The ISO standard week of the year is based on the first + week of the year being that week (starting on monday) + for which the thursday is on or after the first of + january.
    This has the effect that, if + january first is a friday, saturday or sunday, the + days of that week (up to and including the sunday) are + considered to be in week 53 of the preceding + year. Similarly if the last day of the year is a + monday tuesday or wednesday, these days are part of + week 1 of the next year. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSData+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSData+GNUstepBase.html new file mode 100644 index 0000000..7a666eb --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSData+GNUstepBase.html @@ -0,0 +1,301 @@ + + + + + NSData+GNUstepBase documentation + + + + Up +
    +

    NSData+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the NSData(GNUstepBase) + category +

    +

    NSData(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSData+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    dataWithRandomBytesOfLength: 

    + + (id) dataWithRandomBytesOfLength: (NSUInteger)length;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns an autoreleased data instance initialised + with pseudo-random bytes of the specified + length.
    On failure returns + nil. This may be due to:
    A zero + length or unreasonably large + length argument or,
    Failure to + allocate memory to hold the random data or,
    + Failure of the underlying random data generation. + +
    +
    +
    +
    +

    escapedRepresentation 

    + - (NSString*) escapedRepresentation;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns an NSString object containing a backslash + escaped representation of the receiver. + +
    +
    +
    +
    +

    escapedRepresentation: 

    + - (char*) escapedRepresentation: (NSUInteger*)length;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a buffer containing an ASCII backslash + escaped representation of the receiver, (and + optionally the size of the buffer excluding the + trailing nul terminator). + +
    +
    +
    +
    +

    gunzipped 

    + - (NSData*) gunzipped;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns data formed by gunzipping the contents of + the receiver.
    If the receiver did not contain + data produced by gzip, this method simply returns the + receiver.
    If the gnuzipping failed, this + method returns nil.
    Otherwise, + the returned object is an autorelease mutable data + object. + +
    +
    +
    +
    +

    gzipped: 

    + - (NSData*) gzipped: (int)level;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns data formed by gzipping the contents of the + receiver using the specified compression + level (from 0 to 9 with 0 meaning no + compression and 9 meaning maximum compression). + Use a value outside the 0 to 9 range (eg -1) to employ + the default compression.
    NB. It is permissable + to gzip an empty data object, and it is also permissable + to gzip a data object which already contains gzipped + data.
    Returns nil on failure. + +
    +
    +
    +
    +

    hexadecimalRepresentation 

    + - (NSString*) hexadecimalRepresentation;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns an NSString object containing an ASCII + hexadecimal representation of the receiver. + This means that the returned object will contain + exactly twice as many characters as there are bytes + as the receiver, as each byte in the receiver is + represented by two hexadecimal digits.
    + The high order four bits of each byte is encoded before + the low order four bits. Capital letters 'A' to 'F' are + used to represent values from 10 to 15. + +
    +
    +
    +
    +

    hexadecimalRepresentation: 

    + - (char*) hexadecimalRepresentation: (NSUInteger*)length;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a buffer containing an ASCII string with a + nul terminated hexadecimal representation of the + receiver, (and optionally the size of the buffer + excluding the trailing nul terminator). + +
    +
    +
    +
    +

    initWithHexadecimalRepresentation: 

    + - (id) initWithHexadecimalRepresentation: (NSString*)string;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Initialises the receiver with the supplied + string data which contains a hexadecimal + coding of the bytes. The parsing of the + string is fairly tolerant, ignoring + whitespace and permitting both upper and lower + case hexadecimal digits (the + + -hexadecimalRepresentation + + + method produces a string using only + uppercase digits with no white space).
    If + the string does not contain one or more + pairs of hexadecimal digits then an exception is + raised. + +
    +
    +
    +
    +

    isGzipped 

    + - (BOOL) isGzipped;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns YES if the receiver is a + non-empty data object with a gzip header, + NO otherwise. + +
    +
    +
    +
    +

    md5Digest 

    + - (NSData*) md5Digest;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Creates an MD5 digest of the information stored in + the receiver and returns it as an autoreleased 16 byte + NSData object.
    If you need to produce a + digest of string information, you need to decide + what character encoding is to be used and convert your + string to a data object of that encoding type first + using the + [NSString -dataUsingEncoding:] + method - + +
    +   myDigest = [[myString dataUsingEncoding: NSUTF8StringEncoding] md5Digest];
    + 
    + + If you need to use the digest in a human readable form, + you will probably want it to be seen as 32 hexadecimal + digits, and can do that using the + + -hexadecimalRepresentation + + + method. + +
    +
    +
    +
    +

    uudecodeInto: name: mode: 

    + - (BOOL) uudecodeInto: (NSMutableData*)decoded name: (NSString**)namePtr mode: (NSInteger*)modePtr;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Decodes the source data from uuencoded and return + the result.
    Returns the encoded file name in + namePtr if it is not null. Returns the + encoded file mode in modePtr if it is + not null. + +
    +
    +
    +
    +

    uuencodeInto: name: mode: 

    + - (BOOL) uuencodeInto: (NSMutableData*)encoded name: (NSString*)name mode: (NSInteger)mode;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Encode the source data to uuencoded.
    Uses the + supplied name as the filename in the + encoded data, and says that the file + mode is as specified.
    If no + name is supplied, uses + untitled as the name. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSFileHandle+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSFileHandle+GNUstepBase.html new file mode 100644 index 0000000..8abeba7 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSFileHandle+GNUstepBase.html @@ -0,0 +1,79 @@ + + + + + NSFileHandle+GNUstepBase documentation + + + + Up +
    +

    NSFileHandle+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the + NSFileHandle(GNUstepBase) category +

    +

    NSFileHandle(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSFileHandle+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    fileHandleAsServerAtAddress: service: protocol: 

    + + (id) fileHandleAsServerAtAddress: (NSString*)address service: (NSString*)service protocol: (NSString*)protocol;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    socketAddress 

    + - (NSString*) socketAddress;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSLock+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSLock+GNUstepBase.html new file mode 100644 index 0000000..4290d92 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSLock+GNUstepBase.html @@ -0,0 +1,162 @@ + + + + + NSLock+GNUstepBase documentation + + + + Up +
    +

    NSLock+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + + + +

    + Software documentation for the NSLock(GNUstepBase) + category +

    +

    NSLock(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSLock+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    newLockAt: 

    + + (id) newLockAt: (id*)location;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Initializes the id pointed to + by location with a new instance of the + receiver's class in a thread safe manner, unless + it has been previously initialized. Returns the contents + pointed to by location. The + location is considered unintialized if it + contains nil.
    This method is + used in the GS_INITIALIZED_LOCK macro to initialize + lock variables when it cannot be insured that they can + be initialized in a thread safe environment. + +
    + NSLock *my_lock = nil;
    +
    + void function (void)
    + {
    +   [GS_INITIALIZED_LOCK(my_lock, NSLock) lock];
    +   do_work ();
    +   [my_lock unlock];
    + }
    + 
    + 
    + + +
    +
    +
    + +

    + Software documentation for the + NSRecursiveLock(GNUstepBase) + category +

    +

    NSRecursiveLock(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSLock+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    newLockAt: 

    + + (id) newLockAt: (id*)location;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Initializes the id pointed to + by location with a new instance of the + receiver's class in a thread safe manner, unless + it has been previously initialized. Returns the contents + pointed to by location. The + location is considered unintialized if it + contains nil.
    This method is + used in the GS_INITIALIZED_LOCK macro to initialize + lock variables when it cannot be insured that they can + be initialized in a thread safe environment. + +
    + NSLock *my_lock = nil;
    +
    + void function (void)
    + {
    +   [GS_INITIALIZED_LOCK(my_lock, NSLock) lock];
    +   do_work ();
    +   [my_lock unlock];
    + }
    + 
    + 
    + + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSMutableString+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSMutableString+GNUstepBase.html new file mode 100644 index 0000000..46471cf --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSMutableString+GNUstepBase.html @@ -0,0 +1,150 @@ + + + + + NSMutableString+GNUstepBase documentation + + + + Up +
    +

    NSMutableString+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the + NSMutableString(GNUstepBase) + category +

    +

    NSMutableString(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSMutableString+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    deletePrefix: 

    + - (void) deletePrefix: (NSString*)prefix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    deleteSuffix: 

    + - (void) deleteSuffix: (NSString*)suffix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    immutableProxy 

    + - (NSString*) immutableProxy;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    replaceString: withString: 

    + - (void) replaceString: (NSString*)replace withString: (NSString*)by;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    trimLeadSpaces 

    + - (void) trimLeadSpaces;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    trimSpaces 

    + - (void) trimSpaces;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    +

    trimTailSpaces 

    + - (void) trimTailSpaces;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSNumber+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSNumber+GNUstepBase.html new file mode 100644 index 0000000..a98532d --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSNumber+GNUstepBase.html @@ -0,0 +1,74 @@ + + + + + NSNumber+GNUstepBase documentation + + + + Up +
    +

    NSNumber+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the NSNumber(GNUstepBase) + category +

    +

    NSNumber(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSNumber+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    valueFromString: 

    + + (NSValue*) valueFromString: (NSString*)string;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Parses string as a + double, + int, or + + unsigned int + + depending on what characters are present. Uses + atof and atoi which don't + report errors, so be careful if the + string might contain an invalid value. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSObject+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSObject+GNUstepBase.html new file mode 100644 index 0000000..04c7fa7 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSObject+GNUstepBase.html @@ -0,0 +1,537 @@ + + + + + NSObject+GNUstepBase documentation + + + + Up +
    +

    NSObject+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + + + +

    + Software documentation for the NSObject(GNUstepBase) + informal protocol +

    +

    NSObject(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSObject+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    compare: 

    + - (NSComparisonResult) compare: (id)anObject;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + WARNING: The + + -compare: + + + method for NSObject is deprecated due to subclasses + declaring the same selector with conflicting + signatures. Comparision of arbitrary objects is + not just meaningless but also dangerous as most + concrete implementations expect comparable objects + as arguments often accessing instance variables + directly. This method will be removed in a future + release. + +
    +
    +
    +
    +

    isInstance 

    + - (BOOL) isInstance;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + For backward compatibility only... use + + class_isMetaClass() + + + on the class of the receiver instead. + +
    +
    +
    +
    +

    makeImmutableCopyOnFail: 

    + - (id) makeImmutableCopyOnFail: (BOOL)force;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Transmutes the receiver into an immutable + version of the same object and returns the result. +
    If the receiver is not a mutable object or + cannot be simply transmuted, then this method either + returns the receiver unchanged or, if the + force flag is set to YES, + returns an autoreleased copy of the receiver. +
    Mutable classes should override this default + implementation.
    This method is used + in methods which are declared to return immutable + objects (eg. an NSArray), but which create and + build mutable ones internally. + +
    +
    +
    +
    +

    notImplemented: 

    + - (id) notImplemented: (SEL)aSel;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Message sent when an implementation wants to + explicitly exclude a method (but cannot due to + compiler constraint), and wants to make sure it is + not called by mistake. Default implementation raises an + exception at runtime. + +
    +
    +
    +
    +

    shouldNotImplement: 

    + - (id) shouldNotImplement: (SEL)aSel;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Message sent when an implementation wants to + explicitly exclude a method (but cannot due to + compiler constraint) and forbid that subclasses + implement it. Default implementation raises an + exception at runtime. If a subclass does + implement this method, however, the superclass's + implementation will not be called, so this + is not a perfect mechanism. + +
    +
    +
    +
    +

    subclassResponsibility: 

    + - (id) subclassResponsibility: (SEL)aSel;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Message sent when an implementation wants to + explicitly require a subclass to implement a + method (but cannot at compile time since there is no + abstract keyword in Objective-C). + Default implementation raises an exception at + runtime to alert developer that he/she forgot to + override a method. + +
    +
    +
    + +

    + Software documentation for the NSObject(GSAtExit) + informal protocol +

    +

    NSObject(GSAtExit)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSObject+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This is an informal protocol... classes may implement + the method and register themselves to have it called on + process exit. + +
    + Method summary + +
    +
    +

    atExit 

    + + (void) atExit;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method is called on exit for any class which + implements it and which has called + + +registerAtExit + + + to register it to be called.
    The order in which + methods for different classes is called is the + reverse of the order in which the classes were + registered, but it's best to assume the method + can not depend on any other class being in a usable + state at the point when the method is called (rather + like +load).
    Typical use would be to release + memory occupied by class data structures so that + memory usage analysis software will not think the + memory has been leaked. + +
    +
    +
    + +

    + Software documentation for the NSObject(GSCleanup) + informal protocol +

    +

    NSObject(GSCleanup)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSObject+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Category for methods handling leaked memory cleanup + on exit of process (for use when debugging memory leaks). +
    You enable this by calling the + + +setShouldCleanUp: + + + method (done implicitly by gnustep-base if the + GNUSTEP_SHOULD_CLEAN_UP environment + variable is set to YES).
    Your + class then has two options for performing cleanup when + the process ends: + +

    +

    + + 1. Use the +leak: + + method to register objects which are simply to be + retained until the process ends, and then either + ignored or released depending on the cleanup + setting in force. This mechanism is simple and + should be sufficient for many classes. +

    +

    + + +

    +

    + + 2. Implement a + + +atExit + + + method to be run when the process ends and, within + your + + +initialize + + + implementation, call + + +shouldCleanUp + + + to determine whether cleanup should be done, and if it + returns YES then call + + +registerAtExit + + + to have your + + +atExit + + + method called when the process terminates. +

    +

    + + +

    +

    + + The order in which 'leaked' objects are released and + + +atExit + + + methods are called on process exist is the reverse + of the order in which they werse set up suing this API. +

    +

    + + +

    + Method summary + +
    +
    +

    leak: 

    + + (id) leak: (id)anObject;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method simply retains its argument so that it + will never be deallocated during normal operation, but + keeps track of it so that it is released during + process exit if cleanup is enabled.
    Returns + its argument. + +
    +
    +
    +
    +

    leakAt: 

    + + (id) leakAt: (id*)anAddress;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method retains the object at *anAddress so that + it will never be deallocated during normal operation, + but keeps track of the address so that the object is + released and the address is zeroed during process + exit if cleanup is enabled.
    Returns the object + at *anAddress. + +
    +
    +
    +
    +

    registerAtExit 

    + + (BOOL) registerAtExit;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the receiver to have its + + +atExit + + + method called at the point when the process + terminates.
    Returns YES on + success and NO on failure (if the + class does not implement the method or if it is + already registered to call it).
    Implemented + as a call to + + +registerAtExit: + + + with the selector for the + + +atExit + + + method as its argument. + +
    +
    +
    +
    +

    registerAtExit: 

    + + (BOOL) registerAtExit: (SEL)aSelector;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Sets the receiver to have the specified method called + at the point when the process terminates.
    Returns + YES on success and NO on + failure (if the class does not implement the method + ir if it is already registered to call it). + +
    +
    +
    +
    +

    setShouldCleanUp: 

    + + (void) setShouldCleanUp: (BOOL)aFlag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Specifies the default cleanup behavior on process + exit... the value returned by the NSObject + implementation of the + + +shouldClanUp + + + method.
    Calling this method with a + YES argument implicitly calls the + + +enableAtExit + + + method as well.
    The GNUstep Base library + calls this method with the value obtained from the + GNUSTEP_SHOULD_CLEAN_UP environment + variable when NSObject is initialised. + +
    +
    +
    +
    +

    shouldCleanUp 

    + + (BOOL) shouldCleanUp;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a flag indicating whether the receiver + should clean up its data structures etc at process + exit.
    The NSObject implementation returns the + value set by the + + +setShouldCleanUp: + + + method but subclasses may override this. + +
    +
    +
    + +

    + Software documentation for the + NSObject(MemoryFootprint) informal + protocol +

    +

    NSObject(MemoryFootprint)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSObject+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This is an informal protocol... classes may implement + the method to report how much memory is used by the + instance and any objects it acts as a container for. + +
    + Method summary + +
    +
    +

    sizeInBytesExcluding: 

    + - (NSUInteger) sizeInBytesExcluding: (NSHashTable*)exclude;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSProcessInfo+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSProcessInfo+GNUstepBase.html new file mode 100644 index 0000000..e5eb3e0 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSProcessInfo+GNUstepBase.html @@ -0,0 +1,106 @@ + + + + + NSProcessInfo+GNUstepBase documentation + + + + Up +
    +

    NSProcessInfo+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the + NSProcessInfo(GNUstepBase) category +

    +

    NSProcessInfo(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSProcessInfo+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    debugLoggingEnabled 

    + - (BOOL) debugLoggingEnabled;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a indication of whether debug logging is + enabled. This returns YES unless a + call to + + -setDebugLoggingEnabled: + + + has been used to turn logging off. + +
    +
    +
    +
    +

    debugSet 

    + - (NSMutableSet*) debugSet;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method returns a set of debug levels set using + the --GNU-Debug=... command line option and/or the + GNU-Debug user default.
    You can modify + this set to change the debug logging under your + programs control... but such modifications are not + thread-safe. + +
    +
    +
    +
    +

    setDebugLoggingEnabled: 

    + - (void) setDebugLoggingEnabled: (BOOL)flag;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + This method permits you to turn all debug logging on + or off without modifying the set of debug levels in use. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSString+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSString+GNUstepBase.html new file mode 100644 index 0000000..44c5174 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSString+GNUstepBase.html @@ -0,0 +1,185 @@ + + + + + NSString+GNUstepBase documentation + + + + Up +
    +

    NSString+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the NSString(GNUstepBase) + category +

    +

    NSString(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSString+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Provides some additional (non-standard) utility + methods. + +
    + Method summary + +
    +
    +

    stringWithFormat: arguments: 

    + + (id) stringWithFormat: (NSString*)format arguments: (va_list)argList;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Alternate way to invoke + stringWithFormat if you have or wish to + build an explicit va_list structure. + +
    +
    +
    +
    +

    stringByDeletingPrefix: 

    + - (NSString*) stringByDeletingPrefix: (NSString*)prefix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string formed by removing the + prefix string from the receiver. Raises an + exception if the prefix is not + present. + +
    +
    +
    +
    +

    stringByDeletingSuffix: 

    + - (NSString*) stringByDeletingSuffix: (NSString*)suffix;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string formed by removing the + suffix string from the receiver. Raises an + exception if the suffix is not + present. + +
    +
    +
    +
    +

    stringByReplacingString: withString: 

    + - (NSString*) stringByReplacingString: (NSString*)replace withString: (NSString*)by;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string in which any (and all) occurrences + of replace in the receiver have been replaced + with by. Returns the receiver if + replace does not occur within the + receiver. NB. an empty string is not considered + to exist within the receiver. + +
    +
    +
    +
    +

    stringByTrimmingLeadSpaces 

    + - (NSString*) stringByTrimmingLeadSpaces;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string formed by removing leading white + space from the receiver. + +
    +
    +
    +
    +

    stringByTrimmingSpaces 

    + - (NSString*) stringByTrimmingSpaces;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string formed by removing both leading + and trailing white space from the receiver. + +
    +
    +
    +
    +

    stringByTrimmingTailSpaces 

    + - (NSString*) stringByTrimmingTailSpaces;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns a string formed by removing trailing white + space from the receiver. + +
    +
    +
    +
    +

    substringFromRange: 

    + - (NSString*) substringFromRange: (NSRange)aRange;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + An obsolete name for + + -substringWithRange: + + + ... deprecated. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSTask+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSTask+GNUstepBase.html new file mode 100644 index 0000000..75841a1 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSTask+GNUstepBase.html @@ -0,0 +1,111 @@ + + + + + NSTask+GNUstepBase documentation + + + + Up +
    +

    NSTask+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2008 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the NSTask(GNUstepBase) + category +

    +

    NSTask(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSTask+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    executableExtensions 

    + + (NSSet*) executableExtensions;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the set of extensions known to indicate an + executable file type on systems which require + that (currently mswindows). + +
    +
    +
    +
    +

    executablePath: 

    + + (NSString*) executablePath: (NSString*)aFile;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Checks the specified file to see if it is executable + or if by appending one of the + + +executableExtensions + + + it can be made executable. The return value is the + actual executable path or nil if the + file cannot be executed. + +
    +
    +
    +
    +

    launchPathForTool: 

    + + (NSString*) launchPathForTool: (NSString*)name;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the launch path for a tool given the + name of a tool.
    Locates the tool by + looking in the standard directories and, if not + found there, looking in the PATH set in the + environment.
    On ms-windows, this also + tries appending common executable path extensions to + the tool name in order to find it.
    + Returns the path found, or nil if the + tool could not be located. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSThread+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSThread+GNUstepBase.html new file mode 100644 index 0000000..5cdc2c0 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSThread+GNUstepBase.html @@ -0,0 +1,47 @@ + + + + + NSThread+GNUstepBase documentation + + + + Up +
    +

    NSThread+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + +
    +
    + +

    + Software documentation for the NSThread(GNUstepBase) + category +

    +

    NSThread(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSThread+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSURL+GNUstepBase.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSURL+GNUstepBase.html new file mode 100644 index 0000000..b52d578 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/NSURL+GNUstepBase.html @@ -0,0 +1,144 @@ + + + + + NSURL+GNUstepBase documentation + + + + Up +
    +

    NSURL+GNUstepBase documentation

    +

    Authors

    +
    +
    Richard Frith-Macdonald (rfm@gnu.org)
    +
    +
    +
    +

    Copyright: (C) 2003-2010 Free Software Foundation, Inc.

    + + + +

    + Software documentation for the NSURL(GNUstepBase) + category +

    +

    NSURL(GNUstepBase)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSURL+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    fullPath 

    + - (NSString*) fullPath;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the full path for this URL including any + trailing slash. + +
    +
    +
    +
    +

    pathWithEscapes 

    + - (NSString*) pathWithEscapes;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Returns the full path for this URL, without + decoding percent-escapes.
    This is useful if + you need to distinguish between "/" and "%2F" in the + path. The normal + + -path + + + method will convert all "%2F" value in the path into + "/" so that you have no way of knowing whether a "/" is + part of a path component ir is a path separator. + +
    +
    +
    + +

    + Software documentation for the + NSURL(GNUstepBaseAdditions) + category +

    +

    NSURL(GNUstepBaseAdditions)

    +
    +
    +
    Declared in:
    +
    GNUstepBase/NSURL+GNUstepBase.h
    +
    +
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    + Method summary + +
    +
    +

    initWithScheme: user: password: host: port: fullPath: parameterString: query: fragment: 

    + - (id) initWithScheme: (NSString*)scheme user: (NSString*)user password: (NSString*)password host: (NSString*)host port: (NSNumber*)port fullPath: (NSString*)fullPath parameterString: (NSString*)parameterString query: (NSString*)query fragment: (NSString*)fragment;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Builds a URL from components as returned by the + methods of the same names. + +
    +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesAndConstants.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesAndConstants.html new file mode 100644 index 0000000..3c4efc6 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesAndConstants.html @@ -0,0 +1,418 @@ + + + + + Types and Constants + + + + Up +
    +

    Types and Constants

    +

    Authors

    +
    +
    Richard Frith-Macdonald
    +
    +
    +
    +

    Copyright: (C) 2005 Free Software Foundation, Inc.

    + +
    + +
    +

    Contents -

    +
      +
    1. + Type index +
    2. +
    3. + Variable index +
    4. +
    5. + Constant index +
    6. +
    7. + GSObjCRuntime types +
    8. +
    9. + GSUnion types +
    10. +
    11. + GSIArray types +
    12. +
    13. + GSIMap types +
    14. +
    15. + GSMime types +
    16. +
    17. + Unicode types +
    18. +
    19. + GSIArray variables +
    20. +
    21. + GSIMap variables +
    22. +
    23. + GSLock variables +
    24. +
    25. + GSMime constants +
    26. +
    +
    + +

    Type index

    + Type + + +

    Variable index

    + Variable + + +

    Constant index

    + Constant + +
    + +

    GSObjCRuntime types

    +

    +

    +

    GSIVar

    + typedef Ivar GSIVar;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSMethod

    + typedef Method GSMethod;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSUnion types

    +

    +

    +

    NSInteger

    + typedef intptr_t NSInteger;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    NSUInteger

    + typedef uintptr_t NSUInteger;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSIArray types

    +

    +

    +

    GSIArray

    + typedef struct _GSIArray* GSIArray;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIArray_t

    + typedef struct _GSIArray GSIArray_t;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSIMap types

    +

    +

    +

    GSIMapBucket

    + typedef GSIMapBucket_t* GSIMapBucket;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapBucket_t

    + typedef struct _GSIMapBucket GSIMapBucket_t;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapEnumerator

    + typedef GSIMapEnumerator_t* GSIMapEnumerator;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapEnumerator_t

    + typedef struct _GSIMapEnumerator GSIMapEnumerator_t;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapNode

    + typedef GSIMapNode_t* GSIMapNode;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapNode_t

    + typedef struct _GSIMapNode GSIMapNode_t;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapTable

    + typedef GSIMapTable_t* GSIMapTable;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSIMapTable_t

    + typedef struct _GSIMapTable GSIMapTable_t;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    struct _GSIMapEnumerator

    + typedef struct _GSIMapEnumerator struct _GSIMapEnumerator;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSMime types

    +

    +

    +

    GSMimeErrorCode

    + typedef enum ... GSMimeErrorCode;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + The error codes used in the GSMimeErrorDomain + +
    +
    + +

    Unicode types

    +

    +

    +

    NSGNUstepStringEncoding

    + typedef enum _NSGNUstepStringEncoding NSGNUstepStringEncoding;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSIArray variables

    +

    +

    +

    struct _GSIArray

    + struct _GSIArray struct _GSIArray;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSIMap variables

    +

    +

    +

    _GSIE

    + int* _GSIE;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    struct _GSIMapBucket

    + struct _GSIMapBucket struct _GSIMapBucket;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    struct _GSIMapNode

    + struct _GSIMapNode struct _GSIMapNode;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    +

    struct _GSIMapTable

    + struct _GSIMapTable struct _GSIMapTable;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + Description forthcoming. + +
    +
    + +

    GSLock variables

    +

    +

    +

    gnustep_global_lock

    + NSRecursiveLock* gnustep_global_lock;
    +
    +Availability: OpenStep
    +
    +
    + + Global lock to be used by classes when operating on + any global data that invoke other methods which also + access global; thus, creating the potential for + deadlock. + +
    +
    + +

    GSMime constants

    +

    +

    +

    GSMimeErrorDomain

    + NSString* const GSMimeErrorDomain;
    +
    +Availability: Not in OpenStep/MacOS-X
    +
    +
    + + The error domain for the GSMime system. + +
    +
    +
    + Up +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesTOC.html new file mode 100644 index 0000000..fcd628b --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/TypesTOC.html @@ -0,0 +1,35 @@ + + + + + Types + + + +

    Types

    + + + + GSIArray
    + GSIArray_t
    + GSIMapBucket
    + GSIMapBucket_t
    + GSIMapEnumerator
    + GSIMapEnumerator_t
    + GSIMapNode
    + GSIMapNode_t
    + GSIMapTable
    + GSIMapTable_t
    + GSIVar
    + GSMethod
    + GSMimeErrorCode
    + NSGNUstepStringEncoding
    + NSInteger
    + NSUInteger
    + struct _GSIMapEnumerator
    + +
    +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/VariablesTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/VariablesTOC.html new file mode 100644 index 0000000..07a3c8c --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/VariablesTOC.html @@ -0,0 +1,24 @@ + + + + + Variables + + + +

    Variables

    + + + + _GSIE
    + gnustep_global_lock
    + struct _GSIArray
    + struct _GSIMapBucket
    + struct _GSIMapNode
    + struct _GSIMapTable
    + +
    +
    + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/Reference/index.html b/resources/documentation/Developer/BaseAdditions/Reference/Reference/index.html new file mode 100644 index 0000000..680dc2d --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/Reference/index.html @@ -0,0 +1,15 @@ + + + + + Autogsdoc-generated Documentation for BaseAdditions + + + + + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.gsdoc new file mode 100644 index 0000000..2f04d7d --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.gsdoc @@ -0,0 +1,313 @@ + + + + + + Types and Constants + + 2005 Free Software Foundation, Inc. + + + + + + Type index + + + + Variable index + + + + Constant index + + + + + + + GSObjCRuntime types +

    + + + Description forthcoming. + + + + + Description forthcoming. + + +
    + + + + GSUnion types +

    + + + Description forthcoming. + + + + + Description forthcoming. + + +
    + + + + GSIArray types +

    + + + Description forthcoming. + + + + + Description forthcoming. + + +
    + + + + GSIMap types +

    + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + +
    + + + + GSMime types +

    + + + The error codes used in the GSMimeErrorDomain + + GSMimeSMTPAbort + GSMimeSMTPTimeout + + GSMimeSMTPCommsEnd + + GSMimeSMTPCommsError + + GSMimeSMTPServerResponse + + + + +
    + + + + GSTLS types +

    + + + Description forthcoming. + + + + + Description forthcoming. + + +
    + + + + Unicode types +

    + + + Description forthcoming. + + +
    + + + + + + GSIArray variables +

    + + + Description forthcoming. + + +
    + + + + GSIMap variables +

    + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + +
    + + + + GSLock variables +

    + + + Global lock to be used by classes when operating on + any global data that invoke other methods which also + access global; thus, creating the potential for + deadlock. + + +
    + + + + + + GSMime constants +

    + + + The error domain for the GSMime system. + + +
    + + + + GSTLS constants +

    + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + + + + Description forthcoming. + + +
    + + + +
    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.html b/resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.html index 3c4efc6..53c6d97 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/TypesAndConstants.html @@ -48,19 +48,25 @@

    Contents -

    GSMime types
  • - Unicode types + GSTLS types
  • - GSIArray variables + Unicode types
  • - GSIMap variables + GSIArray variables
  • - GSLock variables + GSIMap variables
  • - GSMime constants + GSLock variables +
  • +
  • + GSMime constants +
  • +
  • + GSTLS constants

  • @@ -68,40 +74,54 @@

    Contents -

    Type index

    Type

    Variable index

    Variable

    Constant index

    Constant
    @@ -187,7 +207,7 @@

    GSIMap types

    GSIMapBucket

    - typedef GSIMapBucket_t* GSIMapBucket;
    + typedef GSIMapBucket_t* GSIMapBucket;
    Availability: Not in OpenStep/MacOS-X

    @@ -209,7 +229,7 @@

    GSIMapBucket_t


    GSIMapEnumerator

    - typedef GSIMapEnumerator_t* GSIMapEnumerator;
    + typedef GSIMapEnumerator_t* GSIMapEnumerator;
    Availability: Not in OpenStep/MacOS-X

    @@ -231,7 +251,7 @@

    GSIMapEnumerator_t


    GSIMapNode

    - typedef GSIMapNode_t* GSIMapNode;
    + typedef GSIMapNode_t* GSIMapNode;
    Availability: Not in OpenStep/MacOS-X

    @@ -253,7 +273,7 @@

    GSIMapNode_t


    GSIMapTable

    - typedef GSIMapTable_t* GSIMapTable;
    + typedef GSIMapTable_t* GSIMapTable;
    Availability: Not in OpenStep/MacOS-X

    @@ -297,11 +317,56 @@

    GSMimeErrorCode

    The error codes used in the GSMimeErrorDomain + +
    +
    GSMimeSMTPAbort
    +
    +
    +
    GSMimeSMTPTimeout
    +
    +
    +
    GSMimeSMTPCommsEnd
    +
    +
    +
    GSMimeSMTPCommsError
    +
    +
    +
    GSMimeSMTPServerResponse
    +
    +
    +
    +

    -

    Unicode types

    +

    GSTLS types

    +

    +

    +

    GSTLSIOR

    + typedef ssize_t(* GSTLSIOR;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSIOW

    + typedef ssize_t(* GSTLSIOW;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    + +

    Unicode types

    NSGNUstepStringEncoding

    @@ -316,7 +381,7 @@

    NSGNUstepStringEncoding


    -

    GSIArray variables

    +

    GSIArray variables

    struct _GSIArray

    @@ -331,7 +396,7 @@

    struct _GSIArray


    -

    GSIMap variables

    +

    GSIMap variables

    _GSIE

    @@ -379,7 +444,7 @@

    struct _GSIMapTable


    -

    GSLock variables

    +

    GSLock variables

    gnustep_global_lock

    @@ -397,7 +462,7 @@

    gnustep_global_lock


    -

    GSMime constants

    +

    GSMime constants

    GSMimeErrorDomain

    @@ -409,6 +474,142 @@

    GSMimeErrorDomain

    The error domain for the GSMime system. +
    +
    + +

    GSTLS constants

    +

    +

    +

    GSTLSCAFile

    + NSString* const GSTLSCAFile;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSCertificateFile

    + NSString* const GSTLSCertificateFile;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSCertificateKeyFile

    + NSString* const GSTLSCertificateKeyFile;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSCertificateKeyPassword

    + NSString* const GSTLSCertificateKeyPassword;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSDebug

    + NSString* const GSTLSDebug;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSIssuers

    + NSString* const GSTLSIssuers;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSOwners

    + NSString* const GSTLSOwners;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSPriority

    + NSString* const GSTLSPriority;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSRemoteHosts

    + NSString* const GSTLSRemoteHosts;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSRevokeFile

    + NSString* const GSTLSRevokeFile;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSServerName

    + NSString* const GSTLSServerName;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. + +
    +
    +

    GSTLSVerify

    + NSString* const GSTLSVerify;
    +
    +Availability: OpenStep
    +
    +
    + + Description forthcoming. +


    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.gsdoc new file mode 100644 index 0000000..38c1ce3 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.gsdoc @@ -0,0 +1,13 @@ + + + + + Types + + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.html index fcd628b..8665795 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/TypesTOC.html @@ -11,23 +11,25 @@

    Types

    - GSIArray
    - GSIArray_t
    - GSIMapBucket
    - GSIMapBucket_t
    - GSIMapEnumerator
    - GSIMapEnumerator_t
    - GSIMapNode
    - GSIMapNode_t
    - GSIMapTable
    - GSIMapTable_t
    - GSIVar
    - GSMethod
    - GSMimeErrorCode
    - NSGNUstepStringEncoding
    - NSInteger
    - NSUInteger
    - struct _GSIMapEnumerator
    + GSIArray
    + GSIArray_t
    + GSIMapBucket
    + GSIMapBucket_t
    + GSIMapEnumerator
    + GSIMapEnumerator_t
    + GSIMapNode
    + GSIMapNode_t
    + GSIMapTable
    + GSIMapTable_t
    + GSIVar
    + GSMethod
    + GSMimeErrorCode
    + GSTLSIOR
    + GSTLSIOW
    + NSGNUstepStringEncoding
    + NSInteger
    + NSUInteger
    + struct _GSIMapEnumerator

    diff --git a/resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.gsdoc b/resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.gsdoc new file mode 100644 index 0000000..9103af0 --- /dev/null +++ b/resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.gsdoc @@ -0,0 +1,13 @@ + + + + + Variables + + + + + + + diff --git a/resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.html b/resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.html index 07a3c8c..c66d604 100644 --- a/resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.html +++ b/resources/documentation/Developer/BaseAdditions/Reference/VariablesTOC.html @@ -11,12 +11,12 @@

    Variables

    - _GSIE
    - gnustep_global_lock
    - struct _GSIArray
    - struct _GSIMapBucket
    - struct _GSIMapNode
    - struct _GSIMapTable
    + _GSIE
    + gnustep_global_lock
    + struct _GSIArray
    + struct _GSIMapBucket
    + struct _GSIMapNode
    + struct _GSIMapTable