#ifndef _KRB5_DYN_DYN_H
#define _KRB5_DYN_DYN_H
#ifdef __cplusplus
extern "C" {
#endif
typedef char *DynPtr;
typedef struct _DynObject {
DynPtr array;
int el_size, num_el, size, inc;
int debug, paranoid, initzero;
} DynObjectRec, *DynObject;
#define DynHigh(obj) (DynSize(obj) - 1)
#define DynLow(obj) (0)
#define DYN_OK -1000
#define DYN_NOMEM -1001
#define DYN_BADINDEX -1002
#define DYN_BADVALUE -1003
#ifdef __STDC__
#define P(args) args
#else
#define P(args) ()
#endif
DynObject DynCreate P((int el_size, int inc)), DynCopy P((DynObject obj));
int DynDestroy P((DynObject obj)), DynRelease P((DynObject obj));
int DynAdd P((DynObject obj, void *el));
int DynPut P((DynObject obj, void *el, int idx));
int DynInsert P((DynObject obj, int idx, void *els, int num));
int DynDelete P((DynObject obj, int idx));
DynPtr DynGet P((DynObject obj, int num));
DynPtr DynArray P((DynObject obj));
int DynDebug P((DynObject obj, int state));
int DynParanoid P((DynObject obj, int state));
int DynInitzero P((DynObject obj, int state));
int DynSize P((DynObject obj));
int DynCapacity P((DynObject obj));
#undef P
#ifdef __cplusplus
}
#endif
#endif