struct DefaultDOTGraphTraits
Declaration
struct DefaultDOTGraphTraits { /* full declaration omitted */ };
Description
DefaultDOTGraphTraits - This class provides the default implementations of all of the DOTGraphTraits methods. If a specialization does not need to override all methods here it should inherit so that it can get the default implementations.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:28
Method Overview
- public DefaultDOTGraphTraits(bool simple = false)
- public template <typename GraphType, typename GraphWriter>static void addCustomGraphFeatures(const GraphType &, GraphWriter &)
- public template <typename EdgeIter>static bool edgeTargetsEdgeSource(const void *, EdgeIter)
- public template <typename EdgeIter, typename GraphType>static std::string getEdgeAttributes(const void *, EdgeIter, const GraphType &)
- public static std::string getEdgeDestLabel(const void *, unsigned int)
- public template <typename EdgeIter>static std::string getEdgeSourceLabel(const void *, EdgeIter)
- public template <typename EdgeIter>static EdgeIter getEdgeTarget(const void *, EdgeIter I)
- public template <typename GraphType>static std::string getGraphName(const GraphType &)
- public template <typename GraphType>static std::string getGraphProperties(const GraphType &)
- public template <typename GraphType>static std::string getNodeAttributes(const void *, const GraphType &)
- public template <typename GraphType>static std::string getNodeDescription(const void *, const GraphType &)
- public template <typename GraphType>static std::string getNodeIdentifierLabel(const void *, const GraphType &)
- public template <typename GraphType>std::string getNodeLabel(const void *, const GraphType &)
- public static bool hasEdgeDestLabels()
- public static bool isNodeHidden(const void *)
- protected bool isSimple()
- public static unsigned int numEdgeDestLabels(const void *)
- public static bool renderGraphFromBottomUp()
Methods
¶DefaultDOTGraphTraits(bool simple = false)
DefaultDOTGraphTraits(bool simple = false)
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:38
Parameters
- bool simple = false
¶template <typename GraphType,
typename GraphWriter>
static void addCustomGraphFeatures(
const GraphType&,
GraphWriter&)
template <typename GraphType,
typename GraphWriter>
static void addCustomGraphFeatures(
const GraphType&,
GraphWriter&)
Description
addCustomGraphFeatures - If a graph is made up of more than just straight-forward nodes and edges, this is the place to put all of the custom stuff necessary. The GraphWriter object, instantiated with your GraphType is passed in as an argument. You may call arbitrary methods on it to add things to the output graph.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:151
Templates
- GraphType
- GraphWriter
Parameters
- const GraphType&
- GraphWriter&
¶template <typename EdgeIter>
static bool edgeTargetsEdgeSource(const void*,
EdgeIter)
template <typename EdgeIter>
static bool edgeTargetsEdgeSource(const void*,
EdgeIter)
Description
edgeTargetsEdgeSource - This method returns true if this outgoing edge should actually target another edge source, not a node. If this method is implemented, getEdgeTarget should be implemented.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:114
Templates
- EdgeIter
Parameters
- const void*
- EdgeIter
¶template <typename EdgeIter, typename GraphType>
static std::string getEdgeAttributes(
const void*,
EdgeIter,
const GraphType&)
template <typename EdgeIter, typename GraphType>
static std::string getEdgeAttributes(
const void*,
EdgeIter,
const GraphType&)
Description
If you want to override the dot attributes printed for a particular edge, override this method.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:98
Templates
- EdgeIter
- GraphType
Parameters
- const void*
- EdgeIter
- const GraphType&
¶static std::string getEdgeDestLabel(const void*,
unsigned int)
static std::string getEdgeDestLabel(const void*,
unsigned int)
Description
getEdgeDestLabel - If hasEdgeDestLabels, this function returns the incoming edge label with the given index in the given node.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:140
Parameters
- const void*
- unsigned int
¶template <typename EdgeIter>
static std::string getEdgeSourceLabel(const void*,
EdgeIter)
template <typename EdgeIter>
static std::string getEdgeSourceLabel(const void*,
EdgeIter)
Description
getEdgeSourceLabel - If you want to label the edge source itself, implement this method.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:106
Templates
- EdgeIter
Parameters
- const void*
- EdgeIter
¶template <typename EdgeIter>
static EdgeIter getEdgeTarget(const void*,
EdgeIter I)
template <typename EdgeIter>
static EdgeIter getEdgeTarget(const void*,
EdgeIter I)
Description
getEdgeTarget - If edgeTargetsEdgeSource returns true, this method is called to determine which outgoing edge of Node is the target of this edge.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:122
Templates
- EdgeIter
Parameters
- const void*
- EdgeIter I
¶template <typename GraphType>
static std::string getGraphName(const GraphType&)
template <typename GraphType>
static std::string getGraphName(const GraphType&)
Description
getGraphName - Return the label for the graph as a whole. Printed at the top of the graph.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:44
Templates
- GraphType
Parameters
- const GraphType&
¶template <typename GraphType>
static std::string getGraphProperties(
const GraphType&)
template <typename GraphType>
static std::string getGraphProperties(
const GraphType&)
Description
getGraphProperties - Return any custom properties that should be included in the top level graph structure for dot.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:50
Templates
- GraphType
Parameters
- const GraphType&
¶template <typename GraphType>
static std::string getNodeAttributes(
const void*,
const GraphType&)
template <typename GraphType>
static std::string getNodeAttributes(
const void*,
const GraphType&)
Description
If you want to specify custom node attributes, this is the place to do so
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:90
Templates
- GraphType
Parameters
- const void*
- const GraphType&
¶template <typename GraphType>
static std::string getNodeDescription(
const void*,
const GraphType&)
template <typename GraphType>
static std::string getNodeDescription(
const void*,
const GraphType&)
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:83
Templates
- GraphType
Parameters
- const void*
- const GraphType&
¶template <typename GraphType>
static std::string getNodeIdentifierLabel(
const void*,
const GraphType&)
template <typename GraphType>
static std::string getNodeIdentifierLabel(
const void*,
const GraphType&)
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:78
Templates
- GraphType
Parameters
- const void*
- const GraphType&
¶template <typename GraphType>
std::string getNodeLabel(const void*,
const GraphType&)
template <typename GraphType>
std::string getNodeLabel(const void*,
const GraphType&)
Description
getNodeLabel - Given a node and a pointer to the top level graph, return the label to print in the node.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:70
Templates
- GraphType
Parameters
- const void*
- const GraphType&
¶static bool hasEdgeDestLabels()
static bool hasEdgeDestLabels()
Description
hasEdgeDestLabels - If this function returns true, the graph is able to provide labels for edge destinations.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:128
¶static bool isNodeHidden(const void*)
static bool isNodeHidden(const void*)
Description
isNodeHidden - If the function returns true, the given node is not displayed in the graph.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:63
Parameters
- const void*
¶bool isSimple()
bool isSimple()
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:33
¶static unsigned int numEdgeDestLabels(const void*)
static unsigned int numEdgeDestLabels(const void*)
Description
numEdgeDestLabels - If hasEdgeDestLabels, this function returns the number of incoming edge labels the given node has.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:134
Parameters
- const void*
¶static bool renderGraphFromBottomUp()
static bool renderGraphFromBottomUp()
Description
renderGraphFromBottomUp - If this function returns true, the graph is emitted bottom-up instead of top-down. This requires graphviz 2.0 to work though.
Declared at: llvm/include/llvm/Support/DOTGraphTraits.h:57