Quick Links:

bal | bbl | bdl | bsl

bdlb::TopologicalSortUtilEdgeTraits< EDGE_TYPE > Struct Template Reference

#include <bdlb_topologicalsortutil.h>


Detailed Description

template<class EDGE_TYPE>
struct bdlb::TopologicalSortUtilEdgeTraits< EDGE_TYPE >

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


The documentation for this struct was generated from the following file: