vec.h - bmf - bmf (Bayesian Mail Filter) 0.9.4 fork + patches
 (HTM) git clone git://git.codemadness.org/bmf
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       vec.h (1018B)
       ---
            1 /* $Id: vec.h,v 1.3 2002/10/20 18:19:17 tommy Exp $ */
            2 
            3 /*
            4  * Copyright (c) 2002 Tom Marshall <tommy@tig-grr.com>
            5  *
            6  * This program is free software.  It may be distributed under the terms
            7  * in the file LICENSE, found in the top level of the distribution.
            8  */
            9 
           10 #ifndef _VEC_H
           11 #define _VEC_H
           12 
           13 /* item count for initial alloc */
           14 #define VEC_INITIAL_SIZE    256
           15 
           16 typedef struct _vec {
           17         uint nalloc;                /* items allocated in pitems */
           18         uint nitems;                /* items available */
           19         str_t *pitems;                /* growing vector of items */
           20 } vec_t;
           21 
           22 typedef struct _veciter {
           23         struct _vec *plist;
           24         uint index;
           25 } veciter_t;
           26 
           27 /* class vector */
           28 void vec_create(vec_t * pthis);
           29 void vec_destroy(vec_t * pthis);
           30 void vec_addtail(vec_t * pthis, str_t * pstr);
           31 void vec_first(vec_t * pthis, veciter_t * piter);
           32 
           33 /* class sorted_vector */
           34 void svec_sort(vec_t * pthis);
           35 
           36 /* veciter_create not needed */
           37 void veciter_destroy(veciter_t * pthis);
           38 
           39 str_t *veciter_get(veciter_t * pthis);
           40 bool_t veciter_next(veciter_t * pthis);
           41 
           42 #endif /* ndef _VEC_H */