CASM
AClustersApproachtoStatisticalMechanics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
multivector.hh
Go to the documentation of this file.
1 #ifndef CASM_multivector
2 #define CASM_multivector
3 
4 #include <vector>
5 
6 namespace CASM {
7 
8  namespace multivector_impl {
9  template<typename T, size_t N>
11 
12  template<typename T>
13  struct multivector_tmp<T, 0> {
14  using type = T;
15  };
16  template<typename T, size_t N>
17  struct multivector_tmp {
18  using type = std::vector < typename multivector_tmp < T, N - 1 >::type >;
19  };
20  }
21 
25  template<typename T>
26  struct multivector {
27  template<size_t N>
29  };
30 
31 }
32 
33 #endif
Main CASM namespace.
Definition: complete.cpp:8
typename multivector_impl::multivector_tmp< Index, N >::type X
Definition: multivector.hh:28
std::vector< typename multivector_tmp< T, N-1 >::type > type
Definition: multivector.hh:18
Shortcut for multidimensional vector (std::vector< std::vector< ...)
Definition: multivector.hh:26