27 if ((uL.
size > 0) && (vL.
size > 0)) {
29 for (i = 0; (e = uL.
list[i]); i++)
33 for (i = 0; (e = vL.
list[i]); i++)
68 for (i = 0; i < L->
size; i++)
81 fprintf(stderr,
"duplicate fast edge\n");
88 fprintf(stderr,
"duplicate fast edge\n");
104 for (i = 0; i < L->
size; i++) {
105 if (L->
list[i] == e) {
123 safe_delete_fast_edge(
edge_t * e)
149 delete_other_edge(
edge_t * e)
231 assert(find_fast_node(g, n));
277 static char *NAME(
node_t * n)
282 sprintf(buf,
"V%p", n);
293 fprintf(stderr,
"%s %d: (", NAME(n),
ND_rank(n));
294 for (i = 0; (e =
ND_out(n).list[i]); i++) {
298 for (j = 0; (f =
ND_in(w).list[j]); j++)
304 fprintf(stderr,
" ) (");
305 for (i = 0; (e =
ND_in(n).list[i]); i++) {
309 for (j = 0; (f =
ND_out(w).list[j]); j++)
315 fprintf(stderr,
" )\n");
356 for (rep =
ED_to_virt(e); rep; rep = nextrep) {
360 safe_delete_fast_edge(rep);
void delete_fast_node(Agraph_t *, Agnode_t *)
#define elist_append(item, L)
Agedge_t * find_flat_edge(Agnode_t *, Agnode_t *)
void fast_nodeapp(Agnode_t *, Agnode_t *)
Agedge_t * find_fast_edge(Agnode_t *, Agnode_t *)
Agnode_t * virtual_node(Agraph_t *)
#define GD_has_flat_edges(g)
void unmerge_oneway(Agedge_t *)
void delete_flat_edge(Agedge_t *)
#define alloc_elist(n, L)
int agerr(agerrlevel_t level, const char *fmt,...)
void delete_fast_edge(Agedge_t *)
CGRAPH_API Agraph_t * agroot(void *obj)
Agedge_t * virtual_edge(Agnode_t *, Agnode_t *, Agedge_t *)
CGRAPH_API Agnode_t * agtail(Agedge_t *e)
void safe_other_edge(Agedge_t *)
void fast_node(Agraph_t *, Agnode_t *)
void other_edge(Agedge_t *)
CGRAPH_API Agnode_t * aghead(Agedge_t *e)
CGRAPH_API char * agnameof(void *)
void merge_oneway(Agedge_t *, Agedge_t *)
Agraph_t * dot_root(void *p)
void flat_edge(Agraph_t *, Agedge_t *)
Agedge_t * new_virtual_edge(Agnode_t *, Agnode_t *, Agedge_t *)
void zapinlist(elist *, Agedge_t *)
Agedge_t * fast_edge(Agedge_t *)