#ifndef GRAPHVIZ_H_
# define GRAPHVIZ_H_
+#include "state.h"
+
/// Begin a Dot graph.
/// \param fout output stream.
void start_graph (FILE *fout);
/// \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);
+ char const *style, FILE *fout);
+
+/// Output a reduction.
+/// \param s current state
+/// \param reds the set of reductions
+/// \param fout output stream.
+void output_red (state const *s, reductions const *reds, FILE *fout);
/// End a Dot graph.
/// \param fout output stream.
void finish_graph (FILE *fout);
+/// Escape a lookahead token.
+/// \param name the token.
+char const *escape (char const *name);
+
#endif /* ! GRAPHVIZ_H_ */