Vcsn
2.0
Be Rational
|
Military strict order predicate. More...
#include <military-order.hh>
Public Member Functions | |
bool | operator() (const T &x, const T &y) const |
Private Member Functions | |
template<typename T2 > | |
auto | lt_ (const T2 &x, const T2 &y) const -> typename std::enable_if< has_size_member_function< T2 >::value, bool >::type |
Case where T features a size() member function. More... | |
template<typename T2 > | |
auto | lt_ (const T2 &x, const T2 &y) const -> typename std::enable_if<!has_size_member_function< T2 >::value, bool >::type |
Case where T does not feature a size() member function. More... | |
Military strict order predicate.
This predicate applies to any type which provides, or does not provide, a size method. If two elements have the same size they are compared with operator<, otherwise, the shortest is the smallest.
Definition at line 38 of file military-order.hh.
|
inlineprivate |
Case where T features a size() member function.
Definition at line 49 of file military-order.hh.
|
inlineprivate |
Case where T does not feature a size() member function.
Definition at line 58 of file military-order.hh.
|
inline |
Definition at line 41 of file military-order.hh.