identList.h 993 Bytes
#ifndef _IDENT_LIST_H_
#define _IDENT_LIST_H_

typedef struct identList s_identList;

#include <ident.h>
#include <expValue.h>

/* constructor/destructor for new identList */
s_identList *	identListNew				(void);
void				identListFree				(s_identList *);

/* insertions or deletion into a list */
s_ident *	identListPutVal		(s_identList *, s_ident *);
s_ident *	identListPutExpByIdx	(s_identList *, int, s_expVal *);
s_ident *	identListPutIdlByIdx	(s_identList *, int, s_identList *);
s_ident *	identListPutExpByKey	(s_identList *, const char *, s_expVal *);
s_ident *	identListPutIdlByKey	(s_identList *, const char *, s_identList *);
void			identListRemoveByIdx	(s_identList *, int);
void			identListRemoveByKey	(s_identList *, const char *);

/* seeking in list */
s_ident *	identListSeekIdx		(s_identList *, int);
s_ident *	identListSeekKey		(s_identList *, const char *);

/* identList to other DataStructures */
s_ident **	identListToArray		(s_identList *);

#endif /* _IDENT_LIST_H_ */