ftp.nice.ch/peanuts/GeneralData/Documents/openstep/OpenStepSpec_rtf.tar.gz#/OpenStepSpec_rtf/FoundationKit/Classes/NSUnarchiver.rtf

This is NSUnarchiver.rtf in view mode; [Download] [Up]

paperh18648 margl-907 margr0 margt0 margb0 fi0 ri0 ql sb0 f1 fs24 Copyright f3 'e3f1 1994 by NeXT Computer, Inc.  All Rights Reserved.

s4 li100 fi0 ri1007 ql f0 b fs36 fs100 
fs36 NSUnarchiver
pard s11 li2872 fi-2771 ri1007 ql tx2872 f1 b0 fs28 fs48 
fs28 f0 b fs24 Inherits From:tab b0 fs28 f1 NSCoder : NSObject
fs20 
fs28 s6 f0 b fs24 Conforms To:tab b0 fs28 f1 NSObject (NSObject)
fs20 
fs28 s7 f0 b fs24 Declared In:tab b0 fs28 f1 Foundation/NSArchiver.h 
fs20 
fs28 pard s16 li100 fi0 ri1007 ql f0 b fs28 fs20 
fs28 Class Description
fs14 
fs28 pard s1 li477 fi0 ri1007 ql tx2494 tx2872 tx3250 f1 b0 fs2 
fs28 NSUnarchiver, a concrete subclass of NSCoder, defines objects that can decode a data structure, such as a graph of Objective C objects, from an archive. Such archives are produced by objects of the NSArchiver class. See the NSArchiver specification for an introduction to archiving. 
fs16 
fs28 pard s16 li100 fi0 ri1007 ql f0 b fs24 
fs28 General Exception Conditions
fs14 
fs28 pard s1 li477 fi0 ri1007 ql tx2494 tx2872 tx3250 f1 b0 fs2 
fs28 While unarchiving, NSUnarchiver performs a variety of consistency checks on the incoming data stream. NSUnarchiver raises an NSInconsistentArchiveException for a variety of reasons. Possible data errors leading to this exception are: unknown type descriptors in the data file; an array type descriptor is incorrectly terminated (missing ]); excess characters in a type descriptor; a null class found where a concrete class was expected; class not loaded. 
fs16 
fs28 pard s16 li100 fi0 ri1007 ql f0 b fs24 
fs28 Initializing an NSUnarchiver
fs14 
fs28 pard s8 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -}b  b0 (id)b initForReadingWithData:b0 (NSData *)i datai0 tab Initializes an NSUnarchiver object from data object i datai0 . Raises b NSInvalidArgumentExceptionb0  if the i datai0  argument is b nilb0 .
pard s16 li100 fi0 ri1007 ql f0 b fs48 
fs28 Decoding Objects
fs14 
fs28 pard s8 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 + (id)b unarchiveObjectWithData:b0 (NSData *)i datai0 tab Decodes an archived object stored in i datai0 .
fi-6552 fs16 
fs28 fi-6552 +b  b0 (id)b unarchiveObjectWithFile:b0 (NSString *)i pathi0 tab Decodes an archived object stored in the file i pathi0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b decodeArrayOfObjCType:b0 (const char *)i itemTypei0 tab   
s9 li7030 fi-6553 fi-5796 b count:b0 (unsigned int)i counti0 tab Decodes an i arrayi0  of i counti0  data elements of the same
b at:b0 (void *)i arrayi0 tab tab Objective C data i itemTypei0 . It is your responsibility to release any objects derived in this way.
pard s16 li100 fi0 ri1007 ql f0 b fs48 
fs28 Managing an NSUnarchiver
fs14 
fs28 pard s8 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (BOOL)b isAtEndb0 tab Returns YES if the end of data is reached, NO if more data follows.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSZone *)b objectZoneb0 tab Returns the allocation zone for the unarchiver object.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setObjectZone:b0 (NSZone *)i zonei0 tab Sets the allocation zone for the unarchiver object to i zonei0 . If i zonei0  is b nilb0 , it sets it to the default zone.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (unsigned int)b systemVersionb0 tab Returns the system version number for the unarchived data.
pard s16 li100 fi0 ri1007 ql f0 b fs48 
fs28 Substituting One Class for Another
fs14 
fs28 pard s8 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 + (NSString *)b classNameDecodedForArchiveClassName:b0 (NSString *)i nameInArchive
s9 li7030 fi-6553 fi-5796 i0 tab Returns the class name used to archive instances of the class (i nameInArchivei0 ). This may not be the original class name but another name encoded with NSArchiver'27s b encodeClassName:intoClassNameb0 .
s8 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 + (void)b decodeClassName:b0 (NSString *)i nameInArchivei0 tab 
s9 li7030 fi-6553 fi-5796 b asClassName:b0 (NSString *)i trueNamei0 tab Decodes from the archived data a class name (i nameInArchivei0 ) substituted for the real class name (i trueNamei0 ). This method enables easy conversion of unarchived data when there are name changes in classes.
s8 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSString *)b classNameDecodedForArchiveClassName:b0 (NSString *)i nameInArchive
s9 li7030 fi-6553 fi-5796 i0 tab Returns the class name used to archive instances of the class (i nameInArchivei0 ). This may not be the original class name but another name encoded with NSArchiver'27s b encodeClassName:intoClassNameb0 .
s8 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b decodeClassName:b0 (NSString *)i nameInArchivei0 tab 
s9 li7030 fi-6553 fi-5796 b asClassName:b0 (NSString *)i trueNamei0 tab Decodes from the archived data a class name (i nameInArchivei0 ) substituted for the real class name (i trueNamei0 ). This method enables easy conversion of unarchived data when there are name changes in classes.
s8 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 
}

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.