FoundationKit

Crowd-sourced documentation and tutorials by the Cocoa developer community
Jump to: navigation, search


The FoundationKit is a set of classes first developed by NextComputer, and now by AppleComputer, for core application services.

It provides things like collections (such as Arrays and Dictionaries), strings and string formatting, and other miscellaneous primitive (but essential) support classes.


Note: Please don't go to the trouble of copying Apple's complete docs for each and every class - that's more than we need. :)

You might want to link to the corresponding page on the AppleComputer developer site and add some sample code and gotchas that can't be found there. (Plus: Fill in that "Description forthcoming." :) )


Note: Cocoa is available to both Objective-C and Java. Documentation for classes is available for each language except where noted by a (Java) or (ObjC).

NSMutableArray is ObjC only?! I don't believe that! -- KritTer [ why not? Java's got the Java libraries already... why wouldn't you just use com.whatever.array? ] Because according to Apple's docs, only NSEnumeratedSet is ObjC only. And because NSArray is in Java. Have they lied to us? They even have documentation for NSMutableArray in Java on their site! http://developer.apple.com/techpubs/macosx/Cocoa/Reference/Foundation/Java/Classes/NSMutableArray.html -- KritTer


What are you guys talking about? The (objc) means that the page doesn't have anything about java, it doesn't mean it's obj-c only. You are right, NSEnumeratedSet is the only Obj-C only thing.

So, if I understand you correctly, all the (ObjC) notes below should be removed except for NSEnumeratedSet? And any ObjC-only classes added since then?



Contents

FoundationKit Overviews

FoundationCollections (Arbitrary storage classes)

FoundationKit Classes

NSAffineTransform (10.4)
NSAppleEventDescriptor (ObjC)
NSAppleEventManager (ObjC)
NSAppleScript
NSArchiver
NSArray
NSAssertionHandler (ObjC)
NSAttributedString
NSAutoreleasePool
NSBundle
NSCachedURLResponse (10.4)
NSCalendar (10.4)
NSCalendarDate (ObjC)
NSCharacterSet
NSClassDescription
NSCloneCommand (ObjC)
NSCloseCommand (ObjC)
NSCoder
NSComparisonPredicate (10.4)
NSCompoundPredicate (10.4)
NSConditionLock (ObjC)
NSConnection (ObjC)
NSCountCommand (ObjC)
NSCountedSet (ObjC)
NSCreateCommand (ObjC)
NSData
NSDate
NSDateComponents (10.4)
NSDateFormatter (ObjC)
NSDecimalMappingBehavior (Java)
NSDecimalNumber (ObjC)
NSDecimalNumberHandler (ObjC)
NSDeleteCommand (ObjC)
NSDeserializer (ObjC)
NSDictionary
NSDirectoryEnumerator (ObjC)
NSDistantObject (ObjC)
NSDistantObjectRequest (ObjC)
NSDistributedLock (ObjC)
NSDistributedNotificationCenter
NSEnumerator
NSError (10.3)
NSException
NSExistsCommand (ObjC)
NSExpression (10.4)
NSFileHandle (ObjC)
NSFileManager (ObjC)
NSFormatter
NSFormatter.FormattingException (Java)
NSFormatter.ParsingException (Java)
NSGetCommand (ObjC)
NSGregorianDate (Java)
NSGregorianDate.IntRef (Java)
NSGregorianDateFormatter (Java)
NSHost (ObjC)
NSHTTPCookie (10.4)
NSHTTPCookieStorage (10.4)
NSHTTPURLResponse (10.4)
NSIndexPath (10.4)
NSIndexSet (10.3)
NSIndexSpecifier (ObjC)
NSInputStream (10.3)
NSInvocation (ObjC)
NSKeyedArchiver (10.2)
NSKeyedUnarchiver (10.2)
NSLocale (10.4)
NSLock (ObjC)
NSLogicalTest (ObjC)
NSMachBootstrapServer (ObjC)
NSMachPort (ObjC)
NSMessagePort (ObjC)
NSMessagePortNameServer (ObjC)
NSMetadataItem (10.4)
NSMetadataQuery (10.4)
NSMetadataQueryAttributeValueTuple (10.4)
NSMetadataQueryResultGroup (10.4)
NSMethodSignature (ObjC)
NSMiddleSpecifier (ObjC)
NSMoveCommand (ObjC)
NSMutableArray (ObjC)
NSMutableAttributedString
NSMutableCharacterSet
NSMutableData
NSMutableDictionary
NSMutableIndexSet (10.3)
NSMutablePoint (Java)
NSMutableRange (Java)
NSMutableRect (Java)
NSMutableSet
NSMutableSize (Java)
NSMutableString (ObjC)
NSMutableStringReference (Java)
NSMutableURLRequest (10.2.7)
NSNamedValueSequence (Java)
NSNameSpecifier (10.2)
NSNetService (ObjC - 10.2)
NSNetServiceBrowser (ObjC - 10.2)
NSNotification
NSNotificationCenter
NSNotificationQueue
NSNull
NSNumber (ObjC)
NSNumberFormatter
NSObject
NSOutputStream (10.3)
NSPathUtilities (Java)
NSPipe (ObjC)
NSPoint (Java)
NSPort
NSPortCoder (ObjC)
NSPortMessage (ObjC)
NSPortNameServer (ObjC)
NSPositionalSpecifier (ObjC)
NSPredicate (10.4)
NSProcessInfo (ObjC)
NSPropertyListSerialization (Java)
NSPropertySpecifier (ObjC)
NSProtocolChecker (ObjC)
NSProxy (ObjC)
NSQuitCommand (ObjC)
NSRandomSpecifier (ObjC)
NSRange (Java)
NSRangeSpecifier (ObjC)
NSRect (Java)
NSRecursiveLock (ObjC)
NSRelativeSpecifier (ObjC)
NSRunLoop
NSRuntime (Java)
NSScanner (ObjC)
NSScriptClassDescription (ObjC)
NSScriptCoercionHandler (ObjC)
NSScriptCommand (ObjC)
NSScriptCommandDescription (ObjC)
NSScriptExecutionContext (ObjC)
NSScriptObjectSpecifier (ObjC)
NSScriptSuiteRegistry (ObjC)
NSScriptWhoseTest (ObjC)
NSSelector (Java)
NSSerializer (ObjC)
NSSet
NSSetCommand (ObjC)
NSSize (Java)
NSSocketPort (ObjC)
NSSocketPortNameServer (ObjC)
NSSortDescriptor (10.3)
NSSpecifierTest (ObjC)
NSSpellServer
NSStream (10.3)
NSString (ObjC)
NSStringReference (Java)
NSSystem (Java)
NSTask (ObjC)
NSThread (ObjC)
NSTimer
NSTimeZone
NSUnarchiver
NSUndoManager
NSUniqueIDSpecifier (10.2)
NSURL (ObjC)
NSURLAuthenticationChallenge (10.2.7)
NSURLCache (10.2.7)
NSURLConnection (10.2.7)
NSURLCredential (10.2.7)
NSURLCredentialStorage (10.2.7)
NSURLDownload (10.2.7)
NSURLHandle (10.3)
NSURLProtectionSpace (10.2.7)
NSURLProtocol (10.2.7)
NSURLRequest (10.2.7)
NSURLResponse (10.2.7)
NSUserDefaults
NSValue (ObjC)
NSValueTransformer
NSWhoseSpecifier (ObjC)
NSXMLDocument (10.4)
NSXMLDTD (10.4) NSXmlDtd
NSXMLDTDNode (10.4)
NSXMLElement (10.4)
NSXMLNode (10.4)
NSXMLParser (10.3)

FoundationKit Protocols (ObjC)

NSCoding
NSComparisonMethods
NSCopying
NSDecimalNumberBehaviors
NSKeyValueBindingCreation
NSKeyValueCoding
NSLocking
NSMutableCopying
NSObjCTypeSerializationCallBack
NSObject
NSScriptKeyValueCoding
NSScriptObjectSpecifiers
NSScriptingComparisonMethods
NSURLHandleClient

FoundationKit Interfaces (Java)

NSComparisonMethods
NSKeyValueCoding 
NSScriptingComparisonMethods
NSScriptingKeyValueCoding

FoundationKit Functions (ObjC)

http://developer.apple.com/documentation/Cocoa/Reference/Foundation/ObjC_classic/Functions/FoundationFunctions.html

Assertions

NSAssert
NSAssert1
NSAssert2
NSAssert3
NSAssert4
NSAssert5
NSCAssert
NSCAssert1
NSCAssert2
NSCAssert3
NSCAssert4
NSCAssert5
NSCParameterAssert
NSParameterAssert

Bundles

NSLocalizedString
NSLocalizedStringFromTable
NSLocalizedStringFromTableInBundle
NSLocalizedStringWithDefaultValue

Byte Ordering

NSConvertHostDoubleToSwapped
NSConvertHostFloatToSwapped
NSConvertSwappedDoubleToHost
NSConvertSwappedFloatToHost
NSHostByteOrder
NSSwapBigDoubleToHost
NSSwapBigFloatToHost
NSSwapBigIntToHost
NSSwapBigLongLongToHost
NSSwapBigLongToHost
NSSwapBigShortToHost
NSSwapDouble
NSSwapFloat
NSSwapHostDoubleToBig
NSSwapHostDoubleToLittle
NSSwapHostFloatToBig
NSSwapHostFloatToLittle
NSSwapHostIntToBig
NSSwapHostIntToLittle
NSSwapHostLongLongToBig
NSSwapHostLongLongToLittle
NSSwapHostLongToBig
NSSwapHostLongToLittle
NSSwapHostShortToBig
NSSwapHostShortToLittle
NSSwapInt
NSSwapLittleDoubleToHost
NSSwapLittleFloatToHost
NSSwapLittleIntToHost
NSSwapLittleLongLongToHost
NSSwapLittleLongToHost
NSSwapLittleShortToHost
NSSwapLong
NSSwapLongLong
NSSwapShort

Decimals

NSDecimalAdd
NSDecimalCompact
NSDecimalCompare
NSDecimalCopy
NSDecimalDivide
NSDecimalIsNotANumber
NSDecimalMultiply
NSDecimalMultiplyByPowerOf10
NSDecimalNormalize
NSDecimalPower
NSDecimalRound
NSDecimalString
NSDecimalSubtract

Java Setup

NSJavaBundleCleanup
NSJavaBundleSetup
NSJavaClassesForBundle
NSJavaClassesFromPath
NSJavaNeedsToLoadClasses
NSJavaNeedsVirtualMachine
NSJavaObjectNamedInPath
NSJavaProvidesClasses
NSJavaSetup
NSJavaSetupVirtualMachine

Hash Tables

NSAllHashTableObjects
NSCompareHashTables
NSCopyHashTableWithZone
NSCountHashTable
NSCreateHashTable
NSCreateHashTableWithZone
NSEndHashTableEnumeration
NSEnumerateHashTable
NSFreeHashTable
NSHashGet
NSHashInsert
NSHashInsertIfAbsent
NSHashInsertKnownAbsent
NSHashRemove
NSNextHashEnumeratorItem
NSResetHashTable
NSStringFromHashTable

HFS File Types

NSFileTypeForHFSTypeCode
NSHFSTypeCodeFromFileType
NSHFSTypeOfFile

Map Tables

NSAllMapTableKeys
NSAllMapTableValues
NSCompareMapTables
NSCopyMapTableWithZone
NSCountMapTable
NSCreateMapTable
NSCreateMapTableWithZone
NSEndMapTableEnumeration
NSEnumerateMapTable
NSFreeMapTable
NSMapGet
NSMapInsert
NSMapInsertIfAbsent
NSMapInsertKnownAbsent
NSMapMember
NSMapRemove
NSNextMapEnumeratorPair
NSResetMapTable
NSStringFromMapTable

Object Allocation/Deallocation

NSAllocateObject
NSCopyObject
NSDeallocateObject
NSDecrementExtraRefCountWasZero
NSExtraRefCount
NSIncrementExtraRefCount
NSShouldRetainWithZone

Objective-C Runtime

NSClassFromString
NSGetSizeAndAlignment
NSLog
NSLogv
NSSelectorFromString
NSStringFromClass
NSStringFromSelector

Path Utilities

NSFullUserName
NSHomeDirectory
NSHomeDirectoryForUser
NSOpenStepRootDirectory
NSSearchPathForDirectoriesInDomains
NSTemporaryDirectory
NSUserName

Points

NSEqualPoints
NSMakePoint
NSPointFromString
NSStringFromPoint

Ranges

NSEqualRanges
NSIntersectionRange
NSLocationInRange
NSMakeRange
NSMaxRange
NSRangeFromString
NSStringFromRange
NSUnionRange

Rects

NSContainsRect
NSDivideRect
NSEqualRects
NSIsEmptyRect
NSHeight
NSInsetRect
NSIntegralRect
NSIntersectionRect
NSIntersectsRect
NSMakeRect
NSMaxX
NSMaxY
NSMidX
NSMidY
NSMinX
NSMinY
NSMouseInRect
NSOffsetRect
NSPointInRect
NSRectFromString
NSStringFromRect
NSUnionRect
NSWidth

Sizes

NSEqualSizes
NSMakeSize
NSSizeFromString
NSStringFromSize

Uncaught Exception Handlers

NSGetUncaughtExceptionHandler
NSSetUncaughtExceptionHandler

Zones

NSAllocateMemoryPages
NSCopyMemoryPages
NSCreateZone
NSDeallocateMemoryPages
NSDefaultMallocZone
NSLogPageSize
NSPageSize
NSRealMemoryAvailable
NSRecycleZone
NSRoundDownToMultipleOfPageSize
NSRoundUpToMultipleOfPageSize
NSSetZoneName
NSZoneCalloc
NSZoneFree
NSZoneFromPointer
NSZoneMalloc
NSZoneName
NSZoneRealloc

FoundationKit structs

(Note: These are C structs, not classes.)

NSPoint
NSRange
NSRect
NSSize

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox