kmediad 0.5.0a
A cross-platform Web-based audio player
klib_string.h
Go to the documentation of this file.
00001 #pragma once
00002 
00008 #include <klib_defines.h>
00009 #include <stdarg.h>
00010 
00011 struct _klib_List;
00012 
00022 struct _klib_String
00023   {
00024   klib_Object base;
00028   char *str;
00029   };
00030 
00031 typedef struct _klib_String klib_String; 
00032 
00033 // Protected
00034 void klib_string_construct (klib_String *self, const char *s);
00035 void klib_string_dispose (klib_String *self);
00038 void klib_string_lc (klib_String *self);
00039 
00040 // Public 
00044 klib_String *klib_string_new (const char *);
00045 
00047 klib_String *klib_string_new_empty (void);
00048 
00052 klib_String *klib_string_new_safe (const char *);
00053 
00055 void klib_string_printf (klib_String *sss, const char *fmt, ...);
00056 
00058 void klib_string_append_byte (klib_String *s, const char byte);
00059 
00061 int klib_string_append (klib_String *s, const char *s1);
00062 
00064 klib_String *klib_string_new_substring (const char *s, int start, int len);
00065 
00067 char klib_string_last_byte (const klib_String *s);
00068 
00071 void klib_string_set_safe (klib_String *self, const char *s);
00072 
00075 void klib_string_set (klib_String *self, const char *s);
00076 
00078 char *klib_string_strdup (const klib_String *self);
00079 
00082 klib_String *klib_string_clone_safe (const klib_String *s);
00083 
00086 klib_String *klib_string_clone (const klib_String *s);
00087 
00090 void klib_string_replace_all (klib_String *s, const char *find, 
00091    const char *replace);
00092 
00094 void klib_string_encode_url (klib_String *s);
00095 
00097 void klib_string_escape_squote (klib_String *s);
00098 
00100 void klib_string_escape_dquote (klib_String *s);
00101 
00103 BOOL klib_string_is_null_or_empty (const klib_String *s);
00104 
00107 struct _klib_List *klib_string_tokenize (const klib_String *s);
00108 
00111 void klib_string_escape_html (klib_String *s);
00112 
00114 void klib_string_capfirst (klib_String *s);
00115 
00117 void klib_string_vprintf (klib_String *sss, const char *fmt, va_list ap);
00118 
00119