Mercurial > libpst
comparison src/vbuf.h @ 176:ac6e22c8a9cf
build separate libpst, libpst-libs, libpst-devel rpms.
remove many functions from the interface by making them static.
author | Carl Byington <carl@five-ten-sg.com> |
---|---|
date | Wed, 08 Apr 2009 14:13:06 -0700 |
parents | 6954d315aaa8 |
children | b65e8d0a088a |
comparison
equal
deleted
inserted
replaced
175:03dbd449290f | 176:ac6e22c8a9cf |
---|---|
40 typedef struct varstr vstr; | 40 typedef struct varstr vstr; |
41 | 41 |
42 #define VBUF_STATIC(x,y) static vbuf *x = NULL; if(!x) x = pst_vballoc(y); | 42 #define VBUF_STATIC(x,y) static vbuf *x = NULL; if(!x) x = pst_vballoc(y); |
43 #define VSTR_STATIC(x,y) static vstr *x = NULL; if(!x) x = pst_vsalloc(y); | 43 #define VSTR_STATIC(x,y) static vstr *x = NULL; if(!x) x = pst_vsalloc(y); |
44 | 44 |
45 int pst_skip_nl( char *s ); // returns the width of the newline at s[0] | 45 vbuf *pst_vballoc(size_t len); |
46 int pst_find_nl( vstr *vs ); // find newline of type type in b | 46 void pst_vbgrow(vbuf *vb, size_t len); // grow buffer by len bytes, data are preserved |
47 | 47 void pst_vbset(vbuf *vb, void *data, size_t len); |
48 // vbuf functions | 48 void pst_vbappend(vbuf *vb, void *data, size_t length); |
49 vbuf *pst_vballoc( size_t len ); | 49 void pst_unicode_init(); |
50 void pst_vbfree( vbuf *vb ); | |
51 void pst_vbclear( vbuf *vb ); //ditch the data, keep the buffer | |
52 void pst_vbresize( vbuf *vb, size_t len ); | |
53 size_t pst_vbavail( vbuf *vb ); | |
54 void pst_vbdump( vbuf *vb ); | |
55 void pst_vbgrow( vbuf *vb, size_t len ); // grow buffer by len bytes, data are preserved | |
56 void pst_vbset( vbuf *vb, void *data, size_t len ); | |
57 void pst_vbskipws( vbuf *vb ); | |
58 void pst_vbappend( vbuf *vb, void *data, size_t length ); | |
59 void pst_vbskip( vbuf *vb, size_t skip ); | |
60 void pst_vboverwrite( vbuf *vbdest, vbuf *vbsrc ); | |
61 | |
62 // vstr functions | |
63 vstr *pst_vsalloc( size_t len ); | |
64 char *pst_vsb( vstr *vs ); | |
65 size_t pst_vslen( vstr *vs ); //strlen | |
66 void pst_vsfree( vstr *vs ); | |
67 void pst_vsset( vstr *vs, char *s ); // Store string s in vb | |
68 void pst_vsnset( vstr *vs, char *s, size_t n ); // Store string s in vb | |
69 void pst_vsgrow( vstr *vs, size_t len ); // grow buffer by len bytes, data are preserved | |
70 size_t pst_vsavail( vstr *vs ); | |
71 void pst_vscat( vstr *vs, char *str ); | |
72 void pst_vsncat( vstr *vs, char *str, size_t len ); | |
73 void pst_vsnprepend( vstr *vs, char *str, size_t len ) ; | |
74 void pst_vsskip( vstr *vs, size_t len ); | |
75 int pst_vscmp( vstr *vs, char *str ); | |
76 void pst_vsskipws( vstr *vs ); | |
77 void pst_vs_printf( vstr *vs, char *fmt, ... ); | |
78 void pst_vs_printfa( vstr *vs, char *fmt, ... ); | |
79 void pst_vshexdump( vstr *vs, const char *b, size_t start, size_t stop, int ascii ); | |
80 int pst_vscatprintf( vstr *vs, char *fmt, ... ); | |
81 void pst_vsvprintf( vstr *vs, char *fmt, va_list ap ); | |
82 void pst_vstrunc( vstr *vs, size_t off ); // Drop chars [off..dlen] | |
83 int pst_vslast( vstr *vs ); // returns the last character stored in a vstr string | |
84 void pst_vscharcat( vstr *vs, int ch ); | |
85 | |
86 | |
87 void pst_unicode_init(); | |
88 void pst_unicode_close(); | |
89 size_t pst_vb_utf16to8(vbuf *dest, const char *inbuf, int iblen); | 50 size_t pst_vb_utf16to8(vbuf *dest, const char *inbuf, int iblen); |
90 size_t pst_vb_utf8to8bit(vbuf *dest, const char *inbuf, int iblen, const char* charset); | 51 size_t pst_vb_utf8to8bit(vbuf *dest, const char *inbuf, int iblen, const char* charset); |
91 size_t pst_vb_8bit2utf8(vbuf *dest, const char *inbuf, int iblen, const char* charset); | 52 size_t pst_vb_8bit2utf8(vbuf *dest, const char *inbuf, int iblen, const char* charset); |
92 | 53 |
93 int pst_vb_skipline( struct varbuf *vb ); // in: vb->b == "stuff\nmore_stuff"; out: vb->b == "more_stuff" | |
94 | |
95 | 54 |
96 #endif // VBUF_H | 55 #endif // VBUF_H |