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.
typedef GraphTraits::cluster_t digraph< GraphTraits >::cluster_t |
typedef GraphTraits::dump_args_t digraph< GraphTraits >::dump_args_t |
typedef GraphTraits::edge_t digraph< GraphTraits >::edge_t |
typedef GraphTraits::node_t digraph< GraphTraits >::node_t |
Add EDGE to this digraph, and to the preds/succs of its endpoints. Take ownership of EDGE.
References m_edges.
Add NODE to this DIGRAPH, taking ownership.
References m_nodes.
|
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 dump_dot_to_file(), fopen, and path.
|
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(), dump_dot_to_pp(), pp_flush(), pp_format_decoder(), and pretty_printer::set_output_stream().
Referenced by dump_dot().
|
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(), m_edges, m_nodes, graphviz_out::outdent(), pp_newline(), and pp_string().
Referenced by dump_dot_to_file().
auto_delete_vec<edge_t> digraph< GraphTraits >::m_edges |
Referenced by add_edge(), and dump_dot_to_pp().
auto_delete_vec<node_t> digraph< GraphTraits >::m_nodes |
Referenced by add_node(), and dump_dot_to_pp().