1 #ifndef __JTOOLS__JARRAY__
2 #define __JTOOLS__JARRAY__
22 namespace JPP {
using namespace JTOOLS; }
35 template<
unsigned int N,
class T>
69 std::copy_n(array.
data(), N-1, this->
data());
83 std::copy_n(array.
data(), N-1, this->
data());
94 template<
unsigned int M>
97 std::copy_n(array.
data(), N-1 < M ? N-1 : M, this->
data());
106 template<
unsigned int M>
109 std::copy_n(array.
data(), N-1 < M ? N-1 : M, this->
data());
128 for (
unsigned int i = 2; i != N; ++i) {
130 T value = va_arg(ap, T);
146 std::copy_n(p, N,
data());
220 if (index >= 0 && index < N)
235 if (index >= 0 && index < N)
440 template<
unsigned int M>
454 template<
unsigned int M>
497 static const unsigned int N = 1;
523 template<
unsigned int M>
535 template<
unsigned int M>
634 if (index >= 0 && index < N)
649 if (index >= 0 && index < N)
766 return buffer[0] == array[0];
779 return in >> buffer[0];
792 return out << buffer[0];
812 template<
unsigned int N,
class T>
830 template<
unsigned int M>
843 template<
unsigned int M>
879 if (index >= 0 && index < N)
915 return JArray<N-1,
const T>(p + 1);
926 return JArray<N-1,
const T>(p);
970 static const unsigned int N = 1;
986 template<
unsigned int M>
999 template<
unsigned int M>
1035 if (index >= 0 && index < N)
1073 return out << buffer[0];
1095 class JArray<0, const T>;
Interface for binary output.
Auxiliary base class for aritmetic operations of derived class types.
JArgument< T >::argument_type argument_type
Template definition of auxiliary base class for comparison of data structures.
Interface for binary input.
#define STATIC_CHECK(expr)
Base class for data structures with artithmetic capabilities.
Exception for accessing an index in a collection that is outside of its range.