diff options
author | Ian C <ianc@noddybox.co.uk> | 2003-12-04 01:54:55 +0000 |
---|---|---|
committer | Ian C <ianc@noddybox.co.uk> | 2003-12-04 01:54:55 +0000 |
commit | 8520befe602e9b90d455342068a623f2cf89f631 (patch) | |
tree | c180cccf55eac9870101cb564fc28eb8badd698e /src/dstring.h | |
parent | 7d304c66c4870344e9617eb665000183b4f84802 (diff) |
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'src/dstring.h')
-rw-r--r-- | src/dstring.h | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/src/dstring.h b/src/dstring.h new file mode 100644 index 0000000..db6454f --- /dev/null +++ b/src/dstring.h @@ -0,0 +1,86 @@ +/* + + kbs - Simple, easily fooled, POP3 spam filter + + Copyright (C) 2003 Ian Cowburn (ianc@noddybox.demon.co.uk) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + ------------------------------------------------------------------------- + + $Id$ + + Dynamic strings + +*/ + +#ifndef KBS_DSTRING_H +#define KBS_DSTRING_H + +/* ---------------------------------------- TYPES +*/ +typedef struct + { + size_t len; + char *text; + } *DString; + +/* ---------------------------------------- INTERFACES +*/ + +/* Sets a DString up for use. Note when reusing the same DString, remember + to call DSReset() and get the return. + + Returns the new DString. +*/ +DString DSInit(); + + +/* Frees a DString. +*/ +void DSFree(DString ds); + + +/* Resets a string. Basically calls DSFree() then DSInit(). + + Returns the parameter. +*/ +DString DSReset(DString ds); + + +/* Adds a character onto a DString. + + Returns the passed DString. +*/ +DString DSAddChar(DString to, char c); + + +/* Adds a nul-terminated char pointer onto a DString. + + Returns the passed DString. +*/ +DString DSAddCP(DString to, const char *p); + + +/* Adds another DString. + + Returns the passed to DString. +*/ +DString DSAddDS(DString to, const DString from); + + +#endif + +/* END OF FILE */ |