19 #ifndef itkLexicographicCompare_h
20 #define itkLexicographicCompare_h
47 template <
class TAggregateType1,
class TAggregateType2>
49 operator()(
const TAggregateType1 & lhs,
const TAggregateType2 & rhs)
const
51 return std::lexicographical_compare(std::begin(lhs), std::end(lhs), std::begin(rhs), std::end(rhs));
73 template <
typename TB
idirectionalRange1,
typename TB
idirectionalRange2>
75 operator()(
const TBidirectionalRange1 & lhs,
const TBidirectionalRange2 & rhs)
const
79 return std::lexicographical_compare(std::make_reverse_iterator(std::end(lhs)),
80 std::make_reverse_iterator(std::begin(lhs)),
81 std::make_reverse_iterator(std::end(rhs)),
82 std::make_reverse_iterator(std::begin(rhs)));