OR-Tools  8.2
util::internal Namespace Reference

Classes

class  DenseIntTopologicalSorterTpl
 

Functions

template<typename T , typename Sorter >
ABSL_MUST_USE_RESULT bool RunTopologicalSorter (Sorter *sorter, const std::vector< std::pair< T, T > > &arcs, std::vector< T > *topological_order_or_cycle)
 
template<typename T , typename Sorter >
ABSL_MUST_USE_RESULT bool RunTopologicalSorter (Sorter *sorter, const std::vector< std::pair< T, T > > &arcs, std::vector< T > *topological_order, std::vector< T > *cycle)
 
template<bool stable_sort = false>
ABSL_MUST_USE_RESULT bool DenseIntTopologicalSortImpl (int num_nodes, const std::vector< std::pair< int, int > > &arcs, std::vector< int > *topological_order)
 
template<typename T , bool stable_sort = false>
ABSL_MUST_USE_RESULT bool TopologicalSortImpl (const std::vector< T > &nodes, const std::vector< std::pair< T, T > > &arcs, std::vector< T > *topological_order)
 
template<typename T , typename Sorter >
std::vector< T > RunTopologicalSorterOrDie (Sorter *sorter, const std::vector< std::pair< T, T > > &arcs)
 
template<bool stable_sort = false>
std::vector< int > DenseIntTopologicalSortOrDieImpl (int num_nodes, const std::vector< std::pair< int, int > > &arcs)
 
template<typename T , bool stable_sort = false>
std::vector< T > TopologicalSortOrDieImpl (const std::vector< T > &nodes, const std::vector< std::pair< T, T > > &arcs)
 

Variables

static const int kLazyDuplicateDetectionSizeThreshold = 16
 

Function Documentation

◆ DenseIntTopologicalSortImpl()

ABSL_MUST_USE_RESULT bool DenseIntTopologicalSortImpl ( int  num_nodes,
const std::vector< std::pair< int, int > > &  arcs,
std::vector< int > *  topological_order 
)

Definition at line 403 of file topologicalsorter.h.

◆ DenseIntTopologicalSortOrDieImpl()

std::vector< int > DenseIntTopologicalSortOrDieImpl ( int  num_nodes,
const std::vector< std::pair< int, int > > &  arcs 
)

Definition at line 434 of file topologicalsorter.h.

◆ RunTopologicalSorter() [1/2]

ABSL_MUST_USE_RESULT bool RunTopologicalSorter ( Sorter *  sorter,
const std::vector< std::pair< T, T > > &  arcs,
std::vector< T > *  topological_order,
std::vector< T > *  cycle 
)

Definition at line 386 of file topologicalsorter.h.

◆ RunTopologicalSorter() [2/2]

ABSL_MUST_USE_RESULT bool RunTopologicalSorter ( Sorter *  sorter,
const std::vector< std::pair< T, T > > &  arcs,
std::vector< T > *  topological_order_or_cycle 
)

◆ RunTopologicalSorterOrDie()

std::vector< T > RunTopologicalSorterOrDie ( Sorter *  sorter,
const std::vector< std::pair< T, T > > &  arcs 
)

Definition at line 425 of file topologicalsorter.h.

◆ TopologicalSortImpl()

ABSL_MUST_USE_RESULT bool TopologicalSortImpl ( const std::vector< T > &  nodes,
const std::vector< std::pair< T, T > > &  arcs,
std::vector< T > *  topological_order 
)

Definition at line 412 of file topologicalsorter.h.

◆ TopologicalSortOrDieImpl()

std::vector< T > TopologicalSortOrDieImpl ( const std::vector< T > &  nodes,
const std::vector< std::pair< T, T > > &  arcs 
)

Definition at line 441 of file topologicalsorter.h.

Variable Documentation

◆ kLazyDuplicateDetectionSizeThreshold

const int kLazyDuplicateDetectionSizeThreshold = 16
static

Definition at line 61 of file topologicalsorter.cc.