23 static int idcmpf(
Dict_t * d,
void *arg_p0,
void *arg_p1,
Dtdisc_t * disc)
35 else if (p0->
id < p1->
id)
48 static int namecmpf(
Dict_t * d,
void *arg_p0,
void *arg_p1,
61 else if (p0->
str < p1->
str)
106 template.str = search_str;
122 Dict_t *d_name_to_id, *d_id_to_name;
159 if ((isym = find_isym(g, objtype,
id)))
171 if ((isym = find_isym(g, objtype,
id))) {
191 for (i = 0; i < 3; i++) {
193 for (sym =
dtfirst(d_name[i]); sym; sym = nxt) {
194 nxt =
dtnext(d_name[i], sym);
202 static void closeit(
Dict_t ** d)
206 for (i = 0; i < 3; i++) {
void aginternalmapinsert(Agraph_t *g, int objtype, char *str, IDTYPE result)
unsigned int(* Dthash_f)(Dt_t *, void *, Dtdisc_t *)
CDT_API int dtclose(Dt_t *)
struct IMapEntry_s IMapEntry_t
void *(* Dtmake_f)(Dt_t *, void *, Dtdisc_t *)
CGRAPH_API void agfree(Agraph_t *g, void *ptr)
char * aginternalmapprint(Agraph_t *g, int objtype, IDTYPE id)
Dict_t * lookup_by_name[3]
int aginternalmaplookup(Agraph_t *g, int objtype, char *str, IDTYPE *result)
CGRAPH_API int agstrfree(Agraph_t *, char *)
CGRAPH_API char * agstrdup(Agraph_t *, char *)
void aginternalmapclose(Agraph_t *g)
EXTERN Agraph_t * Ag_G_global
int aginternalmapdelete(Agraph_t *g, int objtype, IDTYPE id)
Dict_t * agdtopen(Agraph_t *g, Dtdisc_t *disc, Dtmethod_t *method)
CDT_API Dtmethod_t * Dttree
CGRAPH_API void aginternalmapclearlocalnames(Agraph_t *g)
void * agdictobjmem(Dict_t *dict, void *p, size_t size, Dtdisc_t *disc)
int(* Dtevent_f)(Dt_t *, int, void *, Dtdisc_t *)
void(* Dtfree_f)(Dt_t *, void *, Dtdisc_t *)
CGRAPH_API char * agstrbind(Agraph_t *g, char *)