![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/share/doc/gnustep-base-doc/Base/Reference/ |
Upload File : |
<?xml version="1.0"?> <!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.4//EN" "http://www.gnustep.org/gsdoc-1_0_4.dtd"> <gsdoc base="NSCoder" up="Base"> <head> <title>NSCoder class reference</title> <author name="Andrew Kachites McCallum"> <email address="mccallum@gnu.ai.mit.edu"> mccallum@gnu.ai.mit.edu </email> </author> <author name="Adam Fedor"> <email address="fedor@boulder.colorado.edu"> fedor@boulder.colorado.edu </email> </author> <copy>1995, 1996 Free Software Foundation, Inc.</copy> </head> <body> <front><contents /></front> <chapter> <heading> Software documentation for the NSCoder class </heading> <class name="NSCoder" super="NSObject" ovadd="1.0.0"> <declared>Foundation/NSCoder.h</declared> <desc> <p> Top-level class defining methods for use when archiving (encoding) objects to a byte array or file, and when restoring (decoding) objects. Generally only subclasses of this class are used directly - <ref type="class" id="NSArchiver">NSArchiver</ref> , <ref type="class" id="NSUnarchiver">NSUnarchiver</ref> , <ref type="class" id="NSKeyedArchiver">NSKeyedArchiver</ref> , <ref type="class" id="NSKeyedUnarchiver">NSKeyedUnarchiver</ref> , or <ref type="class" id="NSPortCoder">NSPortCoder</ref>.</p> <p> <code>NSPortCoder</code> is used within the distributed objects framework. For archiving to/from disk, the <em>Keyed...</em> classes are preferred for new implementations, since they provide greater forward/backward compatibility in the face of class changes. </p> </desc> <method type="BOOL" override="subclass" ovadd="10.0.0"> <sel>allowsKeyedCoding</sel> <desc> Returns a flag indicating whether the receiver supported keyed coding. the default implementation returns <code>NO</code>. Subclasses supporting keyed coding must override this to return <code>YES</code>. </desc> </method> <method type="BOOL" override="subclass" ovadd="10.0.0"> <sel>containsValueForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns a class indicating whether an encoded value corresponding to <var>aKey</var> exists. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>decodeArrayOfObjCType:</sel> <arg type="const char*">type</arg> <sel>count:</sel> <arg type="NSUInteger">count</arg> <sel>at:</sel> <arg type="void*">address</arg> <desc> Decodes array of <var>count</var> structures or objects of given <var>type</var>, which may be obtained through the ' <code>@encode(...)</code> ' compile-time operator. Usually this is used for primitives though it can be used for objects as well. Objects will be retained and you must release them. </desc> </method> <method type="BOOL" override="subclass" ovadd="10.0.0"> <sel>decodeBoolForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns a boolean value associated with <var>aKey</var>. This value must previously have been encoded using <ref type="method" id="-encodeBool:forKey:"> -encodeBool:forKey: </ref> </desc> </method> <method type="const uint8_t*" override="subclass" ovadd="10.0.0"> <sel>decodeBytesForKey:</sel> <arg type="NSString*">aKey</arg> <sel>returnedLength:</sel> <arg type="NSUInteger*">alength</arg> <desc> Returns a pointer to a byte array associated with <var>aKey</var>. <br /> Returns the length of the data in aLength. <br /> This value must previously have been encoded using <ref type="method" id="-encodeBytes:length:forKey:"> -encodeBytes:length:forKey: </ref> </desc> </method> <method type="void*" ovadd="1.0.0"> <sel>decodeBytesWithReturnedLength:</sel> <arg type="NSUInteger*">l</arg> <desc> Retrieve bytes directly from archive. </desc> </method> <method type="NSData*" ovadd="1.0.0"> <sel>decodeDataObject</sel> <desc> Decode an instance of <ref type="class" id="NSData">NSData</ref> . </desc> </method> <method type="double" override="subclass" ovadd="10.0.0"> <sel>decodeDoubleForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns a <strong>double</strong> value associated with <var>aKey</var>. This value must previously have been encoded using <ref type="method" id="-encodeDouble:forKey:"> -encodeDouble:forKey: </ref> or <ref type="method" id="-encodeFloat:forKey:"> -encodeFloat:forKey: </ref> </desc> </method> <method type="float" override="subclass" ovadd="10.0.0"> <sel>decodeFloatForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns a <strong>float</strong> value associated with <var>aKey</var>. This value must previously have been encoded using <ref type="method" id="-encodeFloat:forKey:"> -encodeFloat:forKey: </ref> or <ref type="method" id="-encodeDouble:forKey:"> -encodeDouble:forKey: </ref> <br /> Precision may be lost (or an exception raised if the value will not fit in a <strong>float</strong>) if the value was encoded using <ref type="method" id="-encodeDouble:forKey:"> -encodeDouble:forKey: </ref> , </desc> </method> <method type="int32_t" override="subclass" ovadd="10.0.0"> <sel>decodeInt32ForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns a 32-bit integer value associated with <var>aKey</var>. This value must previously have been encoded using <ref type="method" id="-encodeInt:forKey:"> -encodeInt:forKey: </ref> , <ref type="method" id="-encodeInt32:forKey:"> -encodeInt32:forKey: </ref> , or <ref type="method" id="-encodeInt64:forKey:"> -encodeInt64:forKey: </ref> . <br /> An exception will be raised if the value does not fit in a 32-bit integer. </desc> </method> <method type="int64_t" override="subclass" ovadd="10.0.0"> <sel>decodeInt64ForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns a 64-bit integer value associated with <var>aKey</var>. This value must previously have been encoded using <ref type="method" id="-encodeInt:forKey:"> -encodeInt:forKey: </ref> , <ref type="method" id="-encodeInt32:forKey:"> -encodeInt32:forKey: </ref> , or <ref type="method" id="-encodeInt64:forKey:"> -encodeInt64:forKey: </ref> . </desc> </method> <method type="int" override="subclass" ovadd="10.0.0"> <sel>decodeIntForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns an integer value associated with <var>aKey</var>. This value must previously have been encoded using <ref type="method" id="-encodeInt:forKey:"> -encodeInt:forKey: </ref> , <ref type="method" id="-encodeInt32:forKey:"> -encodeInt32:forKey: </ref> , or <ref type="method" id="-encodeInt64:forKey:"> -encodeInt64:forKey: </ref> . <br /> An exception will be raised if the value does not fit in an integer. </desc> </method> <method type="NSInteger" override="subclass" ovadd="10.5.0"> <sel>decodeIntegerForKey:</sel> <arg type="NSString*">key</arg> <desc> Decodes an NSInteger associated with the <var>key</var>. </desc> </method> <method type="id" ovadd="1.0.0"> <sel>decodeObject</sel> <desc> Decodes a generic object. Usually the class will be read from the archive, an object will be created through an <code>alloc</code> call, then that class will be sent an <ref type="method" id="-initWithCoder:" class="(NSCoding)">[<NSCoding>-initWithCoder:]</ref> message. </desc> </method> <method type="id" override="subclass" ovadd="10.0.0"> <sel>decodeObjectForKey:</sel> <arg type="NSString*">aKey</arg> <desc> Returns an object value associated with <var>aKey</var>. This value must previously have been encoded using <ref type="method" id="-encodeObject:forKey:"> -encodeObject:forKey: </ref> or <ref type="method" id="-encodeConditionalObject:forKey:"> -encodeConditionalObject:forKey: </ref> </desc> </method> <method type="id" ovadd="10.8.0"> <sel>decodeObjectOfClass:</sel> <arg type="Class">cls</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> <em>Description forthcoming.</em> </desc> </method> <method type="id" ovadd="10.8.0"> <sel>decodeObjectOfClasses:</sel> <arg type="NSSet*">classes</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> <em>Description forthcoming.</em> </desc> </method> <method type="NSPoint" ovadd="1.0.0"> <sel>decodePoint</sel> <desc> Decodes a point structure. </desc> </method> <method type="id" ovadd="1.0.0"> <sel>decodePropertyList</sel> <desc> Decodes a property list from the archive previously stored through a call to <ref type="method" id="-encodePropertyList:"> -encodePropertyList: </ref> . </desc> </method> <method type="NSRect" ovadd="1.0.0"> <sel>decodeRect</sel> <desc> Decodes a rectangle structure. </desc> </method> <method type="NSSize" ovadd="1.0.0"> <sel>decodeSize</sel> <desc> Decodes a size structure. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>decodeValueOfObjCType:</sel> <arg type="const char*">type</arg> <sel>at:</sel> <arg type="void*">address</arg> <desc> Decodes structure or object of given <var>type</var>, which may be obtained through the ' <code>@encode(...)</code> ' compile-time operator. Usually this is used for primitives though it can be used for objects as well, in which case you are responsible for releasing them. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>decodeValuesOfObjCTypes:</sel> <arg type="const char*">types</arg> <vararg /> <desc> Multiple version of <ref type="method" id="-decodeValueOfObjCType:at:"> -decodeValueOfObjCType:at: </ref> . </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeArrayOfObjCType:</sel> <arg type="const char*">type</arg> <sel>count:</sel> <arg type="NSUInteger">count</arg> <sel>at:</sel> <arg type="const void*">array</arg> <desc> Encodes <var>array</var> of <var>count</var> structures or objects of given <var>type</var>, which may be obtained through the ' <code>@encode(...)</code> ' compile-time operator. Usually this is used for primitives though it can be used for objects as well. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeBool:</sel> <arg type="BOOL">aBool</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes <var>aBool</var> and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeBycopyObject:</sel> <arg type="id">anObject</arg> <desc> Can be ignored. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeByrefObject:</sel> <arg type="id">anObject</arg> <desc> Can be ignored. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeBytes:</sel> <arg type="void*">d</arg> <sel>length:</sel> <arg type="NSUInteger">l</arg> <desc> Stores bytes directly into archive. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeBytes:</sel> <arg type="const uint8_t*">aPointer</arg> <sel>length:</sel> <arg type="NSUInteger">length</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes the data of the specified <var>length</var> and pointed to by <var>aPointer</var>, and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeConditionalObject:</sel> <arg type="id">anObject</arg> <desc> Encode object if it is/will be encoded unconditionally by this coder, otherwise store a <code>nil</code>. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeConditionalObject:</sel> <arg type="id">anObject</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes <var>anObject</var> and associates the encoded value with <var>aKey</var>, but only if <var>anObject</var> has already been encoded using <ref type="method" id="-encodeObject:forKey:"> -encodeObject:forKey: </ref> </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeDataObject:</sel> <arg type="NSData*">data</arg> <desc> Encode an instance of <ref type="class" id="NSData">NSData</ref> . </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeDouble:</sel> <arg type="double">aDouble</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes <var>aDouble</var> and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeFloat:</sel> <arg type="float">aFloat</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes <var>aFloat</var> and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeInt32:</sel> <arg type="int32_t">anInteger</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes 32 bit integer and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeInt64:</sel> <arg type="int64_t">anInteger</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes a 64 bit integer and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeInt:</sel> <arg type="int">anInteger</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes an <strong>int</strong> and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" override="subclass" ovadd="10.5.0"> <sel>encodeInteger:</sel> <arg type="NSInteger">anInteger</arg> <sel>forKey:</sel> <arg type="NSString*">key</arg> <desc> Encodes an NSInteger and associates the encoded value with <var>key</var>. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeObject:</sel> <arg type="id">anObject</arg> <desc> Encodes a generic object. This will usually result in an <ref type="method" id="-encodeWithCoder:" class="(NSCoding)">[<NSCoding>-encodeWithCoder:]</ref> message being sent to <var>anObject</var> so it can encode itself. </desc> </method> <method type="void" override="subclass" ovadd="10.0.0"> <sel>encodeObject:</sel> <arg type="id">anObject</arg> <sel>forKey:</sel> <arg type="NSString*">aKey</arg> <desc> Encodes <var>anObject</var> and associates the encoded value with <var>aKey</var>. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodePoint:</sel> <arg type="NSPoint">point</arg> <desc> Encodes a <var>point</var> structure. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodePropertyList:</sel> <arg type="id">plist</arg> <desc> Encodes a property list by calling [NSSerializer -serializePropertyList:], then encoding the resulting <ref type="class" id="NSData">NSData</ref> object. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeRect:</sel> <arg type="NSRect">rect</arg> <desc> Encodes a rectangle structure. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeRootObject:</sel> <arg type="id">rootObject</arg> <desc> Store object and objects it refers to in archive (i.e., complete object graph). </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeSize:</sel> <arg type="NSSize">size</arg> <desc> Encodes a <var>size</var> structure. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeValueOfObjCType:</sel> <arg type="const char*">type</arg> <sel>at:</sel> <arg type="const void*">address</arg> <desc> Encodes structure or object of given <var>type</var>, which may be obtained through the ' <code>@encode(...)</code> ' compile-time operator. Usually this is used for primitives though it can be used for objects as well. </desc> </method> <method type="void" ovadd="1.0.0"> <sel>encodeValuesOfObjCTypes:</sel> <arg type="const char*">types</arg> <vararg /> <desc> Multiple version of <ref type="method" id="-encodeValueOfObjCType:at:"> -encodeValueOfObjCType:at: </ref> . </desc> </method> <method type="NSZone*" ovadd="1.0.0"> <sel>objectZone</sel> <desc> Returns zone being used to allocate memory for decoded objects. </desc> </method> <method type="BOOL" ovadd="10.8.0"> <sel>requiresSecureCoding</sel> <desc> <em>Description forthcoming.</em> </desc> </method> <method type="void" ovadd="1.0.0"> <sel>setObjectZone:</sel> <arg type="NSZone*">zone</arg> <desc> Sets <var>zone</var> to use for allocating memory for decoded objects. </desc> </method> <method type="void" ovadd="10.8.0"> <sel>setRequiresSecureCoding:</sel> <arg type="BOOL">secure</arg> <desc> <em>Description forthcoming.</em> </desc> </method> <method type="unsigned int" ovadd="1.0.0"> <sel>systemVersion</sel> <desc> Returns *Step version, which is not the release version, but a large number, by specification <1000 for pre-OpenStep. This implementation returns a number based on the GNUstep major, minor, and subminor versions. </desc> </method> <method type="NSInteger" ovadd="1.0.0"> <sel>versionForClassName:</sel> <arg type="NSString*">className</arg> <desc> Returns current version of class (when encoding) or version of decoded class (decoded). Version comes from [NSObject -getVersion]. </desc> </method> </class> </chapter> </body> </gsdoc>