00001
00026 #ifndef _PURPLE_STRINGREF_H_
00027 #define _PURPLE_STRINGREF_H_
00028
00029 #ifdef __cplusplus
00030 extern "C" {
00031 #endif
00032
00033 typedef struct _PurpleStringref PurpleStringref;
00034
00045 PurpleStringref *purple_stringref_new(const char *value);
00046
00059 PurpleStringref *purple_stringref_new_noref(const char *value);
00060
00071 PurpleStringref *purple_stringref_printf(const char *format, ...);
00072
00080 PurpleStringref *purple_stringref_ref(PurpleStringref *stringref);
00081
00089 void purple_stringref_unref(PurpleStringref *stringref);
00090
00107 const char *purple_stringref_value(const PurpleStringref *stringref);
00108
00120 int purple_stringref_cmp(const PurpleStringref *s1, const PurpleStringref *s2);
00121
00129 size_t purple_stringref_len(const PurpleStringref *stringref);
00130
00131 #ifdef __cplusplus
00132 }
00133 #endif
00134
00135 #endif