| Index: bison/src/bison/2.4.1/bison-2.4.1-src/src/graphviz.c
|
| ===================================================================
|
| --- bison/src/bison/2.4.1/bison-2.4.1-src/src/graphviz.c (revision 0)
|
| +++ bison/src/bison/2.4.1/bison-2.4.1-src/src/graphviz.c (revision 0)
|
| @@ -0,0 +1,64 @@
|
| +/* Output Graphviz specification of a state machine generated by Bison.
|
| +
|
| + Copyright (C) 2006, 2007 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 <http://www.gnu.org/licenses/>. */
|
| +
|
| +/* Written by Paul Eggert and Satya Kiran Popuri. */
|
| +
|
| +#include <config.h>
|
| +#include "system.h"
|
| +
|
| +#include <quotearg.h>
|
| +
|
| +#include "graphviz.h"
|
| +
|
| +/* Return an unambiguous printable representation for NAME, suitable
|
| + for C strings. Use slot 2 since the user may use slots 0 and 1. */
|
| +
|
| +static char const *
|
| +quote (char const *name)
|
| +{
|
| + return quotearg_n_style (2, c_quoting_style, name);
|
| +}
|
| +
|
| +void
|
| +start_graph (FILE *fout)
|
| +{
|
| + fputs ("digraph Automaton {\n", fout);
|
| +}
|
| +
|
| +void
|
| +output_node (int id, char const *label, FILE *fout)
|
| +{
|
| + fprintf (fout, " %d [label=%s]\n", id, quote (label));
|
| +}
|
| +
|
| +void
|
| +output_edge (int source, int destination, char const *label,
|
| + char const *style, FILE *fout)
|
| +{
|
| + fprintf (fout, " %d -> %d [style=%s", source, destination, style);
|
| + if (label)
|
| + fprintf (fout, " label=%s", quote (label));
|
| + fputs ("]\n", fout);
|
| +}
|
| +
|
| +void
|
| +finish_graph (FILE *fout)
|
| +{
|
| + fputs ("}\n", fout);
|
| +}
|
|
|
| Property changes on: bison\src\bison\2.4.1\bison-2.4.1-src\src\graphviz.c
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|