16#ifndef LLVM_SUPPORT_DOTGRAPHTRAITS_H
17#define LLVM_SUPPORT_DOTGRAPHTRAITS_H
43 template<
typename GraphType>
49 template<
typename GraphType>
63 template <
typename GraphType>
75 template<
typename GraphType>
83 template <
typename GraphType>
88 template<
typename GraphType>
95 template<
typename GraphType>
103 template<
typename EdgeIter,
typename GraphType>
111 template<
typename EdgeIter>
119 template<
typename EdgeIter>
127 template<
typename EdgeIter>
156 template<
typename GraphType,
typename GraphWriter>
165template <
typename Ty>
This is an optimization pass for GlobalISel generic memory operations.
DOTGraphTraits - Template class that can be specialized to customize how graphs are converted to 'dot...
DOTGraphTraits(bool simple=false)
DefaultDOTGraphTraits - This class provides the default implementations of all of the DOTGraphTraits ...
static std::string getNodeIdentifierLabel(const void *, const GraphType &)
static bool isNodeHidden(const void *, const GraphType &)
isNodeHidden - If the function returns true, the given node is not displayed in the graph.
static std::string getGraphName(const GraphType &)
getGraphName - Return the label for the graph as a whole.
static EdgeIter getEdgeTarget(const void *, EdgeIter I)
getEdgeTarget - If edgeTargetsEdgeSource returns true, this method is called to determine which outgo...
static std::string getGraphProperties(const GraphType &)
getGraphProperties - Return any custom properties that should be included in the top level graph stru...
static std::string getEdgeAttributes(const void *, EdgeIter, const GraphType &)
If you want to override the dot attributes printed for a particular edge, override this method.
std::string getNodeLabel(const void *, const GraphType &)
getNodeLabel - Given a node and a pointer to the top level graph, return the label to print in the no...
static bool edgeTargetsEdgeSource(const void *, EdgeIter)
edgeTargetsEdgeSource - This method returns true if this outgoing edge should actually target another...
DefaultDOTGraphTraits(bool simple=false)
static bool renderGraphFromBottomUp()
renderGraphFromBottomUp - If this function returns true, the graph is emitted bottom-up instead of to...
static std::string getEdgeDestLabel(const void *, unsigned)
getEdgeDestLabel - If hasEdgeDestLabels, this function returns the incoming edge label with the given...
static std::string getEdgeSourceLabel(const void *, EdgeIter)
getEdgeSourceLabel - If you want to label the edge source itself, implement this method.
static bool hasEdgeDestLabels()
hasEdgeDestLabels - If this function returns true, the graph is able to provide labels for edge desti...
static bool renderNodesUsingHTML()
static void addCustomGraphFeatures(const GraphType &, GraphWriter &)
addCustomGraphFeatures - If a graph is made up of more than just straight-forward nodes and edges,...
static std::string getNodeDescription(const void *, const GraphType &)
static std::string getNodeAttributes(const void *, const GraphType &)
If you want to specify custom node attributes, this is the place to do so.
static unsigned numEdgeDestLabels(const void *)
numEdgeDestLabels - If hasEdgeDestLabels, this function returns the number of incoming edge labels th...