DefinedObject -- Object with defined type and implementation.
Description
DefinedObject is the top-level supertype for all objects that follow the object programming conventions of the defobj library. The messages defined by this type are the only messages which should be assumed to be automatically available on objects that follow these conventions. In particular, use of messages defined by the Object superclass of the GNU Objective C runtime should not generally be assumed because future implementations of some objects might not give continued access to them.
The DefinedObject type defines a minimum of standard messages, and leaves to other types the definition of message that might or might not apply in any general way to particular objects.
- (id <Zone>)getZone The getZone message returns the zone in which the object was created.
- (void)xfprintid print id for each member of a collection on debug output stream
- (void)xfprint print description for each member of a collection on debug output stream
- (void)xprintid Like describeID:, but output goes to standard output.
- (void)xprint Like describe:, but output goes to standard output.
- (void)describeID:outputCharStream Prints a one-line describe string, consisting of the built-in default to outputCharStream.
- (void)describe:outputCharStream The describe: message prints a brief description of the object for debug purposes to the object passed as its argument. The object passed as the outputCharStream argument must accept a catC: message as defined in String and OutputStream in the collections library. Particular object types may generate object description strings with additional information beyond the built-in default, which is just to print the hex value of the object id pointer along with the name of its class, and the display name of the object, if any.
- (const char *)getDisplayName Return a string that identifies an object for external display purposes, either from a previously assigned string or an identification string default
- (void)setDisplayName: (const char *)displayName Assigns a character string as a name that identifies an object for display or debug purposes.
- perform: (SEL)aSel A local implementation of an Object method.
- perform: (SEL)aSelwith:anObject1 A local implementation of an Object method.
- perform: (SEL)aSelwith:anObject1with:anObj2 A local implementation of an Object method.
- perform: (SEL)aSelwith:anObject1with:anObj2with:anObj3 Perform a selector with three object arguments.
- (int)compare:anObject A local implementation of an Object method.
- (void)removeRef: (ref_t)refVal Remove an external reference to an object.
- (ref_t)addRef: (notify_t)notifyFunctionwithArgument: (void *)arg Adds an external reference to an object that is notified when a an object is dropped.
- (const char *)getTypeName getTypeName returns the name of the originating type of this object.
- (Class)getClass getClass returns the class that implements the current behavior of an object.
+ (BOOL)conformsTo: (Protocol *)protocol
- (BOOL)conformsTo: (Protocol *)protocol
- (BOOL)respondsTo: (SEL)aSel The respondsTo: message returns true if the object implements the message identified by the selector argument. To implement a message means only that some method will receive control if the message is sent to the object. (The method could still raise an error.) The respondsTo: message is implemented by direct lookup in a method dispatch table, so is just as fast as a normal message send. It provides a quick way to test whether the type of an object includes a particular message.