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

Name

Description

DefaultDOTGraphTraits

Default implementations of all DOTGraphTraits customization hooks.

Member Functions

Name

Description

getNodeLabel

Return the label to print inside the given node.

Static Member Functions

Name

Description

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

Name

Description

DOTGraphTraits

Inherit constructors from DefaultDOTGraphTraits.

Protected Member Functions

Name

Description

isSimple

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

Specializations

Name

Description

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.

Created with MrDocs