75int main(
int argc, 
char **argv)
 
   83    JParser<> zap(
"Example program to test selection of ordered data.");
 
   89  catch(
const exception &error) {
 
   90    FATAL(error.what() << endl);
 
   98  int numberOfElements = 5;
 
  100  for (
int i = 0; i != numberOfElements; ++i) {
 
  101    buffer.push_back(__A__(i));
 
  104  print(cout, 
debug, 
"original:", numberOfElements, buffer.data());
 
  106  for (
int index = 0; index != numberOfElements -1; ++ index) {
 
  108    buffer[index].i += 1;
 
  110    print(cout, 
debug, 
"before:", numberOfElements, buffer.data());
 
  114    print(cout, 
debug, 
"after:", N, buffer.data());
 
  116    ASSERT(N == numberOfElements - 1);
 
  118    for (
int i = 0; i != index; ++i) {
 
  122    for (
int i = index; i != N; ++i) {
 
  123      ASSERT(buffer[i].i == i+1);
 
  128    sort(buffer.begin(), buffer.end());
 
  132    const int index = numberOfElements - 1;
 
  134    buffer[index].i += 1;
 
  136    print(cout, 
debug, 
"before:", numberOfElements, buffer.data());
 
  140    print(cout, 
debug, 
"after:", N, buffer.data());
 
  142    ASSERT(N == numberOfElements);
 
  144    buffer[index].i = index;
 
  150    buffer[index].i -= 1;
 
  152    print(cout, 
debug, 
"before:", numberOfElements, buffer.data());
 
  156    print(cout, 
debug, 
"after:", N, buffer.data());
 
  158    ASSERT(N == numberOfElements);
 
  160    buffer[index].i = index;
 
  163  for (
int index = 1; index != numberOfElements; ++ index) {
 
  165    buffer[index].i -= 1;
 
  167    print(cout, 
debug, 
"before:", numberOfElements, buffer.data());
 
  171    print(cout, 
debug, 
"after:", N, buffer.data());
 
  173    ASSERT(N == numberOfElements - 1);
 
  175    for (
int i = 0; i != index; ++i) {
 
  179    for (
int i = index; i != N; ++i) {
 
  180      ASSERT(buffer[i].i == i+1);
 
  185    sort(buffer.begin(), buffer.end());