GCC Middle and Back End API Reference
|
#include <digraph.h>
Public Types | |
typedef GraphTraits::node_t | node_t |
typedef GraphTraits::edge_t | edge_t |
typedef GraphTraits::dump_args_t | dump_args_t |
typedef GraphTraits::cluster_t | cluster_t |
Public Member Functions | |
digraph () | |
virtual | ~digraph () |
void | dump_dot_to_pp (pretty_printer *pp, cluster_t *root_cluster, const dump_args_t &args) const |
void | dump_dot_to_file (FILE *fp, cluster_t *root_cluster, const dump_args_t &args) const |
void | dump_dot (const char *path, cluster_t *root_cluster, const dump_args_t &args) const |
void | add_node (node_t *node) |
void | add_edge (edge_t *edge) |
Data Fields | |
auto_delete_vec< node_t > | m_nodes |
auto_delete_vec< edge_t > | m_edges |
Abstract base class for a directed graph. This class maintains the vectors of nodes and edges, and owns the nodes and edges.
GraphTraits::cluster_t digraph< GraphTraits >::cluster_t |
GraphTraits::dump_args_t digraph< GraphTraits >::dump_args_t |
GraphTraits::edge_t digraph< GraphTraits >::edge_t |
GraphTraits::node_t digraph< GraphTraits >::node_t |
Add EDGE to this digraph, and to the preds/succs of its endpoints. Take ownership of EDGE.
Add NODE to this DIGRAPH, taking ownership.
|
inline |
Write .dot information for this graph to a file at PATH, passing ARGS to the nodes and edges. If ROOT_CLUSTER is non-NULL, use it to organize the nodes into clusters.
References fopen.
|
inline |
Write .dot information for this graph to FP, passing ARGS to the nodes and edges. If ROOT_CLUSTER is non-NULL, use it to organize the nodes into clusters.
References default_tree_printer(), pp_flush(), pp_format_decoder(), and pretty_printer::set_output_stream().
|
inline |
Write .dot information for this graph to PP, passing ARGS to the nodes and edges. If ROOT_CLUSTER is non-NULL, use it to organize the nodes into clusters.
References FOR_EACH_VEC_ELT, i, graphviz_out::indent(), graphviz_out::outdent(), pp_newline(), and pp_string().
auto_delete_vec<edge_t> digraph< GraphTraits >::m_edges |
auto_delete_vec<node_t> digraph< GraphTraits >::m_nodes |