28     JParser<> zap(
"Example program to test fixed length array class.");
 
   34   catch(
const exception &error) {
 
   35     FATAL(error.what() << endl);
 
   42     JArray<1, int> array(i0);
 
   51     JArray<2, int> array(i0, i1);
 
   61     typedef JArray<N,   int>       JArray1_t;
 
   62     typedef JArray<N-1, 
int>       JArray2_t;
 
   66     for (JArray1_t::iterator i = array.begin(); i != array.end(); ++i) {
 
   72       copy(array.begin(), array.end(), ostream_iterator<int>(cout, 
" "));
 
   77       JArray1_t buffer = array + array;
 
   79       for (
int i = 0; i != N; ++i) {
 
   80         ASSERT(2*array[i] == buffer[i]);
 
   85       JArray2_t buffer = array.pop_front();
 
   89         copy(buffer.begin(), buffer.end(), ostream_iterator<int>(cout, 
" "));
 
   93       for (
int i = 0; i != N-1; ++i) {
 
   94         ASSERT(array[i+1] == buffer[i]);
 
   99       JArray1_t buffer(array.pop_back(), array[N-1]);
 
  105       JArray2_t buffer = array.pop_back();
 
  109         copy(buffer.begin(), buffer.end(), ostream_iterator<int>(cout, 
" "));
 
  113       for (
int i = 0; i != N-1; ++i) {
 
  114         ASSERT(array[i] == buffer[i]);
 
  120     JArray<3, int> array(1, 2, 3);
 
  122     JArray<3, const int> p3(array);
 
  125       copy(p3.begin(), p3.end(), ostream_iterator<int>(cout, 
" "));
 
  129     ASSERT(array[0] == p3[0]);
 
  131     JArray<2, const int> p2(p3.pop_front());
 
  134       copy(p2.begin(), p2.end(), ostream_iterator<int>(cout, 
" "));
 
  138     ASSERT(array[1] == p2[0]);
 
  140     JArray<1, const int> 
p1(p2.pop_front());
 
  143       copy(
p1.begin(), 
p1.end(), ostream_iterator<int>(cout, 
" "));