llvm::DOTGraphTraits

Traits that customize how a graph type is converted to DOT.

Synopsis

Declared in <llvm/Support/DOTGraphTraits.h>

template<typename Ty>
struct DOTGraphTraits
    : DefaultDOTGraphTraits

Description

Specialize for each graph type. When specializing, you may inherit from DefaultDOTGraphTraits if you don't need to override everything.

Base Classes

NameDescription
DefaultDOTGraphTraitsDefault implementations of all DOTGraphTraits customization hooks.

Member Functions

NameDescription
getNodeLabel Return the label to print inside the given node.

Static Member Functions

NameDescription
addCustomGraphFeatures Emit graph features beyond ordinary nodes and edges.
edgeTargetsEdgeSource Return true if this outgoing edge should target another edge source.
getEdgeAttributes Return custom DOT attributes for a particular edge.
getEdgeDestLabel Return the incoming edge destination label at the given index.
getEdgeSourceLabel Return a label for the edge source itself, if any.
getEdgeTarget Return the outgoing edge that is the target of this edge.
getGraphName Return the label for the graph as a whole.
getGraphProperties Return custom properties for the top-level DOT graph structure.
getNodeAttributes Return custom DOT attributes for the given node.
getNodeDescription Return an optional longer description for the given node.
getNodeIdentifierLabel Return a unique identifier string for the given node.
hasEdgeDestLabels hasEdgeDestLabels - If this function returns true, the graph is able to provide labels for edge destinations.
isNodeHidden Return true if the given node should be omitted from the graph.
numEdgeDestLabels Return how many incoming edge destination labels the node has.
renderGraphFromBottomUp renderGraphFromBottomUp - If this function returns true, the graph is emitted bottom-up instead of top-down. This requires graphviz 2.0 to work though.
renderNodesUsingHTML Return true if nodes should be rendered with HTML-like labels.

Using Declarations

NameDescription
DOTGraphTraits Inherit constructors from DefaultDOTGraphTraits.

Protected Member Functions

NameDescription
isSimple Return true if this traits instance was constructed for simple names.

Specializations

NameDescription
DOTGraphTraits<AttributorCallGraph*> DOT graph traits for Attributor call-graph visualization.
DOTGraphTraits<DOTFuncInfo*> DOTGraphTraits specialization for rendering a function CFG via DOTFuncInfo.
DOTGraphTraits<DOTMachineFuncInfo*> DOTGraphTraits specialization for rendering a machine CFG via DOTMachineFuncInfo.
DOTGraphTraits<DomTreeNode*> DOTGraphTraits specialization for rendering a dominator-tree node.
DOTGraphTraits<DominatorTree*> DOTGraphTraits specialization for rendering a dominator tree.
DOTGraphTraits<PostDominatorTree*> DOTGraphTraits specialization for rendering a post-dominator tree.
DOTGraphTraits<RegionNode*> DOTGraphTraits specialization for rendering a region node.
DOTGraphTraits<DataDependenceGraph const*> DOTGraphTraits specialization for rendering a data-dependence graph.