{ \
template<> \
class vector<__VA_ARGS__, std::allocator<__VA_ARGS__> > \
: public vector<__VA_ARGS__, EIGEN_ALIGNED_ALLOCATOR<__VA_ARGS__> > \
{ \
typedef vector<__VA_ARGS__, EIGEN_ALIGNED_ALLOCATOR<__VA_ARGS__> > vector_base; \
public: \
typedef __VA_ARGS__ value_type; \
typedef vector_base::allocator_type allocator_type; \
typedef vector_base::size_type size_type; \
typedef vector_base::iterator
iterator; \
explicit vector(
const allocator_type&
a = allocator_type()) : vector_base(
a) {} \
template<typename InputIterator> \
vector(InputIterator
first, InputIterator
last,
const allocator_type&
a = allocator_type()) : vector_base(first, last,
a) {} \
vector(
const vector&
c) : vector_base(c) {} \
explicit vector(size_type num, const value_type& val = value_type()) : vector_base(num, val) {} \
vector(iterator start, iterator
end) : vector_base(start, end) {} \
vector& operator=(
const vector&
x) { \
vector_base::operator=(
x);
\ } \
}; \
}
constexpr int last(int, int result)
constexpr int first(int i)
Implementation details for constexpr functions.
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
This section contains a convenience MACRO which allows an easy specialization of std::vector such that for data types with alignment issues the correct allocator is used automatically.