@@ -38,10 +38,12 @@ typedef struct __of_range { size_t start; size_t length; } of_range_t; +@class OFString; + /** * \brief The root class for all other classes inside ObjFW. */ @interface OFObject { @@ -127,10 +129,17 @@ * \param selector The selector for which the type encoding should be returned * \return The type encoding of the instance method for the specified selector */ + (const char*)typeEncodingForInstanceSelector: (SEL)selector; +/** + * Returns a description for the class, which is usually the class name. + * + * This is mostly for debugging purposes. + */ ++ (OFString*)description; + /** * Replaces a class method implementation with another implementation. * * \param newimp The new implementation for the class method * \param selector The selector of the class method to replace @@ -241,10 +250,17 @@ * * \return A 32 bit hash for the object */ - (uint32_t)hash; +/** + * Returns a description for the object. + * + * This is mostly for debugging purposes. + */ +- (OFString*)description; + /** * Adds a pointer to the object's memory pool. * * This is useful to add memory allocated by functions such as asprintf to the * pool so it gets free'd automatically when the object is deallocated.