#include "pbori_defs.h"
#include "pbori_algo.h"
#include "pbori_traits.h"
#include "CRestrictedIter.h"
Go to the source code of this file.
Classes | |
class | dummy_data_type< DummyType > |
class | bounded_restricted_term< NaviType, DescendingProperty > |
Functions | |
template<class FirstIterator , class SecondIterator , class BinaryPredicate > | |
BEGIN_NAMESPACE_PBORI CTypes::comp_type | lex_compare_3way (FirstIterator start, FirstIterator finish, SecondIterator rhs_start, SecondIterator rhs_finish, BinaryPredicate idx_comp) |
template<class LhsType , class RhsType , class BinaryPredicate > | |
CTypes::comp_type | lex_compare (const LhsType &lhs, const RhsType &rhs, BinaryPredicate idx_comp, valid_tag has_easy_equality_test) |
defines lexicographic comparison | |
template<class LhsType , class RhsType , class BinaryPredicate > | |
CTypes::comp_type | lex_compare (const LhsType &lhs, const RhsType &rhs, BinaryPredicate idx_comp, invalid_tag has_no_easy_equality_test) |
defines lexicographic comparison | |
template<class LhsType , class RhsType , class BinaryPredicate > | |
CTypes::comp_type | lex_compare (const LhsType &lhs, const RhsType &rhs, BinaryPredicate idx_comp) |
defines lexicographic comparison | |
template<class LhsType , class RhsType , class BinaryPredicate > | |
CTypes::comp_type | deg_lex_compare (const LhsType &lhs, const RhsType &rhs, BinaryPredicate idx_comp) |
defines degree-lexicographic comparison | |
template<class StackType , class Iterator > | |
void | dummy_append (StackType &stack, Iterator start, Iterator finish) |
template<class DegreeCacher , class NaviType , class IdxType > | |
NaviType::deg_type | dd_cached_block_degree (const DegreeCacher &cache, NaviType navi, IdxType nextBlock) |
template<class DegCacheMgr , class NaviType , class IdxType , class SizeType > | |
bool | max_block_degree_on_then (const DegCacheMgr °_mgr, NaviType navi, IdxType next_block, SizeType degree, valid_tag is_descending) |
template<class DegCacheMgr , class NaviType , class IdxType , class SizeType > | |
bool | max_block_degree_on_then (const DegCacheMgr °_mgr, NaviType navi, IdxType next_block, SizeType degree, invalid_tag non_descending) |
template<class CacheType , class DegCacheMgr , class NaviType , class TermType , class Iterator , class SizeType , class DescendingProperty > | |
TermType | dd_block_degree_lead (const CacheType &cache_mgr, const DegCacheMgr °_mgr, NaviType navi, Iterator block_iter, TermType init, SizeType degree, DescendingProperty prop) |
template<class CacheType , class DegCacheMgr , class NaviType , class Iterator , class TermType , class DescendingProperty > | |
TermType | dd_block_degree_lead (const CacheType &cache_mgr, const DegCacheMgr °_mgr, NaviType navi, Iterator block_iter, TermType init, DescendingProperty prop) |
template<class FirstIterator , class SecondIterator , class IdxType , class BinaryPredicate > | |
CTypes::comp_type | restricted_lex_compare_3way (FirstIterator start, FirstIterator finish, SecondIterator rhs_start, SecondIterator rhs_finish, IdxType max_index, BinaryPredicate idx_comp) |
template<class LhsIterator , class RhsIterator , class Iterator , class BinaryPredicate > | |
CTypes::comp_type | block_dlex_compare (LhsIterator lhsStart, LhsIterator lhsFinish, RhsIterator rhsStart, RhsIterator rhsFinish, Iterator start, Iterator finish, BinaryPredicate idx_comp) |
template<class IdxType , class Iterator , class BinaryPredicate > | |
CTypes::comp_type | block_deg_lex_idx_compare (IdxType lhs, IdxType rhs, Iterator start, Iterator finish, BinaryPredicate idx_comp) |
This file includes files, which defines ordering-related function templates.
CTypes::comp_type block_deg_lex_idx_compare | ( | IdxType | lhs, | |
IdxType | rhs, | |||
Iterator | start, | |||
Iterator | finish, | |||
BinaryPredicate | idx_comp | |||
) | [inline] |
References CCompareEnums::equality, and generic_compare_3way().
Referenced by BlockDegRevLexAscOrder::compare().
CTypes::comp_type block_dlex_compare | ( | LhsIterator | lhsStart, | |
LhsIterator | lhsFinish, | |||
RhsIterator | rhsStart, | |||
RhsIterator | rhsFinish, | |||
Iterator | start, | |||
Iterator | finish, | |||
BinaryPredicate | idx_comp | |||
) | [inline] |
References CCompareEnums::equality, generic_compare_3way(), and restricted_lex_compare_3way().
Referenced by BlockDegRevLexAscOrder::compare(), and polybori::BlockDegLexOrder::compare().
TermType dd_block_degree_lead | ( | const CacheType & | cache_mgr, | |
const DegCacheMgr & | deg_mgr, | |||
NaviType | navi, | |||
Iterator | block_iter, | |||
TermType | init, | |||
DescendingProperty | prop | |||
) | [inline] |
References dd_block_degree_lead(), and dd_cached_block_degree().
TermType dd_block_degree_lead | ( | const CacheType & | cache_mgr, | |
const DegCacheMgr & | deg_mgr, | |||
NaviType | navi, | |||
Iterator | block_iter, | |||
TermType | init, | |||
SizeType | degree, | |||
DescendingProperty | prop | |||
) | [inline] |
References dd_cached_block_degree(), and max_block_degree_on_then().
Referenced by dd_block_degree_lead(), and BlockDegRevLexAscOrder::lead().
NaviType::deg_type dd_cached_block_degree | ( | const DegreeCacher & | cache, | |
NaviType | navi, | |||
IdxType | nextBlock | |||
) | [inline] |
Function templates for determining the degree of a decision diagram with the help of cache (e. g. CDegreeCache)
Referenced by dd_block_degree_lead(), max_block_degree_on_then(), and cached_block_deg< navigator >::operator()().
CTypes::comp_type deg_lex_compare | ( | const LhsType & | lhs, | |
const RhsType & | rhs, | |||
BinaryPredicate | idx_comp | |||
) | [inline] |
defines degree-lexicographic comparison
References CCompareEnums::equality, generic_compare_3way(), and lex_compare().
Referenced by DegRevLexAscOrder::compare(), and DegLexOrder::compare().
void dummy_append | ( | StackType & | stack, | |
Iterator | start, | |||
Iterator | finish | |||
) | [inline] |
CTypes::comp_type lex_compare | ( | const LhsType & | lhs, | |
const RhsType & | rhs, | |||
BinaryPredicate | idx_comp | |||
) | [inline] |
defines lexicographic comparison
References lex_compare().
CTypes::comp_type lex_compare | ( | const LhsType & | lhs, | |
const RhsType & | rhs, | |||
BinaryPredicate | idx_comp, | |||
invalid_tag | has_no_easy_equality_test | |||
) | [inline] |
defines lexicographic comparison
References lex_compare_3way().
CTypes::comp_type lex_compare | ( | const LhsType & | lhs, | |
const RhsType & | rhs, | |||
BinaryPredicate | idx_comp, | |||
valid_tag | has_easy_equality_test | |||
) | [inline] |
defines lexicographic comparison
References CCompareEnums::equality, and lex_compare_3way().
Referenced by LexOrder::compare(), deg_lex_compare(), and lex_compare().
BEGIN_NAMESPACE_PBORI CTypes::comp_type lex_compare_3way | ( | FirstIterator | start, | |
FirstIterator | finish, | |||
SecondIterator | rhs_start, | |||
SecondIterator | rhs_finish, | |||
BinaryPredicate | idx_comp | |||
) | [inline] |
References CCompareEnums::equality, CCompareEnums::greater_than, and CCompareEnums::less_than.
Referenced by lex_compare().
bool max_block_degree_on_then | ( | const DegCacheMgr & | deg_mgr, | |
NaviType | navi, | |||
IdxType | next_block, | |||
SizeType | degree, | |||
invalid_tag | non_descending | |||
) | [inline] |
References dd_cached_block_degree().
bool max_block_degree_on_then | ( | const DegCacheMgr & | deg_mgr, | |
NaviType | navi, | |||
IdxType | next_block, | |||
SizeType | degree, | |||
valid_tag | is_descending | |||
) | [inline] |
References dd_cached_block_degree().
Referenced by dd_block_degree_lead().
CTypes::comp_type restricted_lex_compare_3way | ( | FirstIterator | start, | |
FirstIterator | finish, | |||
SecondIterator | rhs_start, | |||
SecondIterator | rhs_finish, | |||
IdxType | max_index, | |||
BinaryPredicate | idx_comp | |||
) | [inline] |
References CCompareEnums::equality, CCompareEnums::greater_than, and CCompareEnums::less_than.
Referenced by block_dlex_compare().