@@ -12,21 +12,93 @@ #import #import #import "OFObject.h" +/** + * The OFString class can store and modify string of different types. + */ @interface OFString: OFObject +/** + * \param str A constant C string from which the new OFConstCString will be + * created + * \return A new OFConstCString + */ + newAsConstCString: (const char*)str; + +/** + * \param str A constant wide C string from which the new OFConstCString will be + * created + * \return A new OFConstWideCString + */ + newAsConstWideCString: (const wchar_t*)str; + +/** + * \param str A C string from which the new OFConstCString will be created + * \return A new OFCString + */ + newAsCString: (char*)str; + +/** + * \param str A wide C string from which the new OFConstCString will be created + * \return A new OFWideCString + */ + newAsWideCString: (wchar_t*)str; +/** + * \return The OFString as a C-type string of the type it was created as + */ - (char*)cString; + +/** + * \return The OFString as a C-type wide string of the type it was created as + */ - (wchar_t*)wcString; + +/** + * \return The length of the OFString + */ - (size_t)length; + +/** + * Sets the OFString to the specified OFString. + * + * \param str The OFString to set the current OFString to + */ - (OFString*)setTo: (OFString*)str; + +/** + * Clones the OFString, creating a new one. + * + * \return A copy of the OFString + */ - (OFString*)clone; + +/** + * Compares the OFString to another OFString. + * + * \param str An OFString in a compatible type to compare with + * \return An integer which is the result of the comparison, see strcmp + */ - (int)compareTo: (OFString*)str; + +/** + * Append another OFString to the OFString. + * + * \param str An OFString in a compatible type to append + */ - append: (OFString*)str; + +/** + * Append a C string to the OFString. + * + * \param str A C string to append + */ - appendCString: (const char*)str; + +/** + * Append a wide C string to the OFString. + * + * \param str A wide C string to append + */ - appendWideCString: (const wchar_t*)str; @end