1 #ifndef __JTOOLS__JPERMUTATION__ 
    2 #define __JTOOLS__JPERMUTATION__ 
   12 namespace JPP { 
using namespace JTOOLS; }
 
   19   template<
class T, 
class JComparator_t>
 
   24                                std::bidirectional_iterator_tag)
 
   31     for (
T __i = __last; --__i != __rend; ) {
 
   35       for (__j = __last; __j != __end && !
compare(*__i,*__j); ++__j) {}
 
   41         if (++__i != __last && ++__j != __end) {
 
   48           while (__k != __j && __i != __last)
 
   49             iter_swap(__i++,--__k);
 
   59     reverse(__begin, __last);
 
   60     reverse(__last,  __end);
 
   61     reverse(__begin, __end);
 
   78   template<
class T, 
class JComparator_t>
 
   84     return next_permutation(__begin, __last, __end, compare, 
typename std::iterator_traits<T>::iterator_category());
 
do set_variable OUTPUT_DIRECTORY $WORKDIR T
 
static struct JACOUSTICS::@4 compare
Auxiliary data structure to sort transmissions.