1995-12-14 00:01:36 +08:00
|
|
|
#ifndef _STRINGBUF_H_
|
|
|
|
#define _STRINGBUF_H_
|
|
|
|
|
1998-11-17 05:40:28 +08:00
|
|
|
typedef /*@abstract@*/ struct StringBufRec *StringBuf;
|
1995-12-14 00:01:36 +08:00
|
|
|
|
1998-11-21 04:18:22 +08:00
|
|
|
/*@only@*/ StringBuf newStringBuf(void);
|
|
|
|
void freeStringBuf(/*@only@*/ StringBuf sb);
|
1995-12-14 00:01:36 +08:00
|
|
|
void truncStringBuf(StringBuf sb);
|
|
|
|
char *getStringBuf(StringBuf sb);
|
1996-07-03 03:16:06 +08:00
|
|
|
void stripTrailingBlanksStringBuf(StringBuf sb);
|
1995-12-14 00:01:36 +08:00
|
|
|
|
|
|
|
#define appendStringBuf(sb, s) appendStringBufAux(sb, s, 0)
|
|
|
|
#define appendLineStringBuf(sb, s) appendStringBufAux(sb, s, 1)
|
|
|
|
|
1999-01-06 07:13:56 +08:00
|
|
|
void appendStringBufAux(StringBuf sb, const char *s, int nl);
|
1995-12-14 00:01:36 +08:00
|
|
|
|
1998-07-25 23:10:58 +08:00
|
|
|
#endif /* _STRINGBUF_H_ */
|