Lines Matching refs:ofile

24 static int ioput(Agraph_t * g, iochan_t * ofile, char *str)  in ioput()  argument
26 return AGDISC(g, io)->putstr(ofile, str); in ioput()
32 static int write_body(Agraph_t * g, iochan_t * ofile);
38 static int indent(Agraph_t * g, iochan_t * ofile) in indent() argument
42 CHKRV(ioput(g, ofile, "\t")); in indent()
226 static int _write_canonstr(Agraph_t * g, iochan_t * ofile, char *str, in _write_canonstr() argument
233 return ioput(g, ofile, str); in _write_canonstr()
236 static int write_canonstr(Agraph_t * g, iochan_t * ofile, char *str) in write_canonstr() argument
238 return _write_canonstr(g, ofile, str, TRUE); in write_canonstr()
241 static int write_dict(Agraph_t * g, iochan_t * ofile, char *name, in write_dict() argument
263 CHKRV(indent(g, ofile)); in write_dict()
264 CHKRV(ioput(g, ofile, name)); in write_dict()
265 CHKRV(ioput(g, ofile, " [")); in write_dict()
268 CHKRV(ioput(g, ofile, ",\n")); in write_dict()
269 CHKRV(indent(g, ofile)); in write_dict()
271 CHKRV(write_canonstr(g, ofile, sym->name)); in write_dict()
272 CHKRV(ioput(g, ofile, "=")); in write_dict()
273 CHKRV(write_canonstr(g, ofile, sym->defval)); in write_dict()
278 CHKRV(ioput(g, ofile, "\n")); in write_dict()
279 CHKRV(indent(g, ofile)); in write_dict()
281 CHKRV(ioput(g, ofile, "];\n")); in write_dict()
288 static int write_dicts(Agraph_t * g, iochan_t * ofile, int top) in write_dicts() argument
292 CHKRV(write_dict(g, ofile, "graph", def->dict.g, top)); in write_dicts()
293 CHKRV(write_dict(g, ofile, "node", def->dict.n, top)); in write_dicts()
294 CHKRV(write_dict(g, ofile, "edge", def->dict.e, top)); in write_dicts()
299 static int write_hdr(Agraph_t * g, iochan_t * ofile, int top) in write_hdr() argument
326 CHKRV(indent(g, ofile)); in write_hdr()
327 CHKRV(ioput(g, ofile, strict)); in write_hdr()
331 CHKRV(ioput(g, ofile, kind)); in write_hdr()
332 CHKRV(ioput(g, ofile, "graph ")); in write_hdr()
335 CHKRV(write_canonstr(g, ofile, name)); in write_hdr()
336 CHKRV(ioput(g, ofile, sep)); in write_hdr()
337 CHKRV(ioput(g, ofile, "{\n")); in write_hdr()
339 CHKRV(write_dicts(g, ofile, top)); in write_hdr()
344 static int write_trl(Agraph_t * g, iochan_t * ofile) in write_trl() argument
348 CHKRV(indent(g, ofile)); in write_trl()
349 CHKRV(ioput(g, ofile, "}\n")); in write_trl()
428 static int write_subgs(Agraph_t * g, iochan_t * ofile) in write_subgs() argument
434 write_subgs(subg, ofile); in write_subgs()
437 CHKRV(write_hdr(subg, ofile, FALSE)); in write_subgs()
438 CHKRV(write_body(subg, ofile)); in write_subgs()
439 CHKRV(write_trl(subg, ofile)); in write_subgs()
445 static int write_edge_name(Agedge_t * e, iochan_t * ofile, int terminate) in write_edge_name() argument
457 CHKRV(ioput(g, ofile, "\t[key=")); in write_edge_name()
458 CHKRV(write_canonstr(g, ofile, p)); in write_edge_name()
460 CHKRV(ioput(g, ofile, "]")); in write_edge_name()
468 static int write_nondefault_attrs(void *obj, iochan_t * ofile, in write_nondefault_attrs() argument
478 CHKRV(rv = write_edge_name(obj, ofile, FALSE)); in write_nondefault_attrs()
495 CHKRV(ioput(g, ofile, "\t[")); in write_nondefault_attrs()
498 CHKRV(ioput(g, ofile, ",\n")); in write_nondefault_attrs()
499 CHKRV(indent(g, ofile)); in write_nondefault_attrs()
501 CHKRV(write_canonstr(g, ofile, sym->name)); in write_nondefault_attrs()
502 CHKRV(ioput(g, ofile, "=")); in write_nondefault_attrs()
503 CHKRV(write_canonstr(g, ofile, data->str[sym->id])); in write_nondefault_attrs()
507 CHKRV(ioput(g, ofile, "]")); in write_nondefault_attrs()
514 static int write_nodename(Agnode_t * n, iochan_t * ofile) in write_nodename() argument
522 CHKRV(write_canonstr(g, ofile, name)); in write_nodename()
525 CHKRV(ioput(g, ofile, buf)); in write_nodename()
535 static int write_node(Agnode_t * n, iochan_t * ofile, Dict_t * d) in write_node() argument
540 CHKRV(indent(g, ofile)); in write_node()
541 CHKRV(write_nodename(n, ofile)); in write_node()
543 CHKRV(write_nondefault_attrs(n, ofile, d)); in write_node()
544 return ioput(g, ofile, ";\n"); in write_node()
561 static int write_port(Agedge_t * e, iochan_t * ofile, Agsym_t * port) in write_port() argument
573 CHKRV(ioput(g, ofile, ":")); in write_port()
575 CHKRV(write_canonstr(g, ofile, val)); in write_port()
580 CHKRV(_write_canonstr(g, ofile, val, FALSE)); in write_port()
581 CHKRV(ioput(g, ofile, ":")); in write_port()
582 CHKRV(_write_canonstr(g, ofile, s + 1, FALSE)); in write_port()
585 CHKRV(_write_canonstr(g, ofile, val, FALSE)); in write_port()
605 static int write_edge(Agedge_t * e, iochan_t * ofile, Dict_t * d) in write_edge() argument
613 CHKRV(indent(g, ofile)); in write_edge()
614 CHKRV(write_nodename(t, ofile)); in write_edge()
615 CHKRV(write_port(e, ofile, Tailport)); in write_edge()
616 CHKRV(ioput(g, ofile, (agisdirected(agraphof(t)) ? " -> " : " -- "))); in write_edge()
617 CHKRV(write_nodename(h, ofile)); in write_edge()
618 CHKRV(write_port(e, ofile, Headport)); in write_edge()
620 CHKRV(write_nondefault_attrs(e, ofile, d)); in write_edge()
622 CHKRV(write_edge_name(e, ofile, TRUE)); in write_edge()
624 return ioput(g, ofile, ";\n"); in write_edge()
627 static int write_body(Agraph_t * g, iochan_t * ofile) in write_body() argument
636 CHKRV(write_subgs(g, ofile)); in write_body()
640 CHKRV(write_node(n, ofile, dd ? dd->dict.n : 0)); in write_body()
645 CHKRV(write_node(aghead(e), ofile, dd ? dd->dict.n : 0)); in write_body()
649 CHKRV(write_edge(e, ofile, dd ? dd->dict.e : 0)); in write_body()
678 int agwrite(Agraph_t * g, void *ofile) in agwrite() argument
689 CHKRV(write_hdr(g, ofile, TRUE)); in agwrite()
690 CHKRV(write_body(g, ofile)); in agwrite()
691 CHKRV(write_trl(g, ofile)); in agwrite()
693 return AGDISC(g, io)->flush(ofile); in agwrite()