00001
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef OVALCOLLECTION_H_
00031 #define OVALCOLLECTION_H_
00032
00033 struct oval_collection;
00034 struct oval_iterator;
00035 typedef void (*oval_item_free_func) (void *);
00036
00037 struct oval_collection *oval_collection_new();
00038 void oval_collection_free(struct oval_collection *);
00039 void oval_collection_free_items(struct oval_collection *, oval_item_free_func);
00040 void oval_collection_add(struct oval_collection *, void *);
00041 struct oval_iterator *oval_collection_iterator(struct oval_collection *);
00042 struct oval_iterator *oval_collection_iterator_new();
00043 void oval_collection_iterator_add(struct oval_iterator *, void *);
00044 int oval_collection_iterator_has_more(struct oval_iterator *);
00045 void *oval_collection_iterator_next(struct oval_iterator *);
00046
00047 struct oval_iterator_string;
00048
00049 #endif