{ \
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::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); \
return *this; \
} \
}; \
}
EIGEN_CONSTEXPR Index first(const T &x) EIGEN_NOEXCEPT
Definition: IndexedViewHelper.h:81
static const symbolic::SymbolExpr< internal::symbolic_last_tag > last
Definition: IndexedViewHelper.h:38
CEREAL_SIZE_TYPE size_type
The size type used by cereal.
Definition: helpers.hpp:61
Definition: json.hpp:5678
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
Definition: pointer.h:1181
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.