1 #ifndef _INCLUDED_STRING_H_ 2 #define _INCLUDED_STRING_H_ 3 4 #include "../../rss/rss.h" 5 6 typedef Variable String; 7 8 /* all constructors return a pointer to a statically allocated data 9 struct. In order to use the returned data it needs to be copied 10 to a locally defined variable 11 */ 12 13 void stringcons(String *str); 14 void stringcons_charPtr(String *str, char const *ntbs); 15 void stringcons_swallowCharPtr(String *str, char *ntbs); 16 void stringcopycons(String *str, String const *var); 17 18 void stringDestructor(String const *var); 19 20 void string_assign(String *lhs, String const *rhs); 21 22 void string_add(String *lhs, String const *rhs); 23 int string_bool(String const *lhs); /* returns 0 if empty */ 24 25 char const *string_charp(String const *lhs); 26 void string_reduce(String *str, unsigned length); /* reduce length */ 27 28 void string_trimLeft(String *lhs, String const *str); 29 void string_trimRight(String *lhs, String const *str); 30 31 #endif 32 33 34 35 36 37 38 39 40 41