struct pdf_list_s
{
void *gl_list;
};
struct pdf_list_iterator_s
{
void *gl_iterator;
};
struct pdf_list_node_s
{
void *gl_node;
};
typedef pdf_list_s *pdf_list_t;
typedef pdf_list_node_s *pdf_list_node_t;
typedef pdf_list_iterator_s *pdf_list_iterator_t;
Fine for me.
Another issue is the function pointers,
typedef bool (*gl_listelement_equals_fn) (const void *elt1, const void
*elt2);
typedef size_t (*gl_listelement_hashcode_fn) (const void *elt);
typedef void (*gl_listelement_dispose_fn) (const void *elt);
I think they're just fine for inclusion in pdf-list.h, don't you ?
Yes. But it is much better to change the names of the callback types
to pdf_list_element_equals_fn, pdf_list_element_hashcode_fn and
pdf_list_element_dispose_fn.