X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/35fe08345edf43644a80a5987a50937c67e7c937..53e2cd1ebd0a99048610004ccb7ba11d351981bc:/src/graphviz.h?ds=sidebyside diff --git a/src/graphviz.h b/src/graphviz.h index 1cf9422f..556fdda1 100644 --- a/src/graphviz.h +++ b/src/graphviz.h @@ -1,7 +1,49 @@ -#include +/* Output Graphviz specification of a state machine generated by Bison. + Copyright (C) 2006, 2010-2012 Free Software Foundation, Inc. + + This file is part of Bison, the GNU Compiler Compiler. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Paul Eggert and Satya Kiran Popuri. */ + +#ifndef GRAPHVIZ_H_ +# define GRAPHVIZ_H_ + +/// Begin a Dot graph. +/// \param fout output stream. void start_graph (FILE *fout); + +/// Output a Dot node. +/// \param id identifier of the node +/// \param label human readable label of the node (no Dot escaping needed). +/// \param fout output stream. void output_node (int id, char const *label, FILE *fout); + +/// Output a Dot edge. +/// \param source id of the source node +/// \param destination id of the target node +/// \param label human readable label of the edge +/// (no Dot escaping needed). Can be 0. +/// \param style Dot style of the edge (e.g., "dotted" or "solid"). +/// \param fout output stream. void output_edge (int source, int destination, char const *label, char const *style, FILE *fout); + +/// End a Dot graph. +/// \param fout output stream. void finish_graph (FILE *fout); + +#endif /* ! GRAPHVIZ_H_ */