libosip 3.6.0
Classes | Defines | Typedefs | Functions

osip_list.h File Reference

oSIP list Routines More...

Go to the source code of this file.


struct  osip_list_iterator_t
struct  osip_list


#define osip_list_iterator_has_elem(it)   ( 0 != (it).actual && (it).pos < (it).li->nb_elt )


typedef struct osip_list osip_list_t


int osip_list_init (osip_list_t *li)
void osip_list_special_free (osip_list_t *li, void(*free_func)(void *))
int osip_list_clone (const osip_list_t *src, osip_list_t *dst, int(*clone_func)(void *, void **))
void osip_list_ofchar_free (osip_list_t *li)
int osip_list_size (const osip_list_t *li)
int osip_list_eol (const osip_list_t *li, int pos)
int osip_list_add (osip_list_t *li, void *element, int pos)
void * osip_list_get (const osip_list_t *li, int pos)
int osip_list_remove (osip_list_t *li, int pos)
void * osip_list_get_first (osip_list_t *li, osip_list_iterator_t *it)
void * osip_list_get_next (osip_list_iterator_t *it)
void * osip_list_iterator_remove (osip_list_iterator_t *it)

Detailed Description

oSIP list Routines

This is a very simple implementation of a linked list.
There is not much to say about it... Except that it could be a lot improved. Sadly, it would be difficult to improve it without breaking the compatibility with older version!