Quick Links: |
#include <bdlb_topologicalsortutil.h>
This struct
represents a customization point allowing clients to supply input iterators to sort
having a value_types
other than a bsl::pair
. Clients may specialize TopologicalSortUtilEdgeTraits
to supply the following:
typedef EDGE_TYPE EdgeType; // The type of the directed connection from one node to another // 'bsl::pair<NodeType, NodeType>' and 'std::pair<NodeType>' work // without 'TopologicalSortUtilEdgeTraits' specialization. typedef user-defined NodeType; // Alias describing the output values from a sort, as well as the // results of the 'from' and 'to' functions of this edge traits // instance. Or in other words, the node (or node identifier) type // of the directed acyclic graph. static const NodeType& from(const EDGE_TYPE& input); // Return a 'const' reference to the "from" attribute of the // specified 'input'. Note that the template parameter type // 'EDGE_TYPE' is an element in the input range to 'sort'. static const NodeType& to(const EDGE_TYPE& input) // Return a 'const' reference to the "from" attribute of the // specified 'input'. Note that the template parameter type // 'EDGE_TYPE' is an element in the input range to 'sort'.
See Component bdlb_topologicalsortutil