vSMC
vSMC: Scalable Monte Carlo
Classes | Namespaces | Macros | Functions
array.hpp File Reference
#include <vsmc/internal/common.hpp>

Go to the source code of this file.

Classes

class  vsmc::Array< T, N >
 Static array. More...
 
struct  vsmc::TupleElement< size_t, typename >
 
struct  vsmc::TupleElement< I, Array< T, N > >
 The type of Array. More...
 
struct  vsmc::TupleSize< typename >
 
struct  vsmc::TupleSize< Array< T, N > >
 The size of Array. More...
 

Namespaces

 vsmc
 

Macros

#define VSMC_RUNTIME_ASSERT_UTILITY_ARRAY_RANGE(i, N)   VSMC_RUNTIME_ASSERT((i < N), ("**Array** USED WITH AN INDEX OUT OF RANGE"))
 
#define VSMC_STATIC_ASSERT_UTILITY_ARRAY_RANGE(Pos, N)   VSMC_STATIC_ASSERT((Pos < N), USE_Array_WITH_AN_INDEX_OUT_OF_RANGE)
 

Functions

template<std::size_t I, typename T , std::size_t N>
T & vsmc::get (Array< T, N > &ary)
 Array ADL of get. More...
 
template<std::size_t I, typename T , std::size_t N>
const T & vsmc::get (const Array< T, N > &ary)
 Array ADL of get. More...
 
template<std::size_t I, typename T , std::size_t N>
T && vsmc::get (Array< T, N > &&ary)
 Array ADL of get. More...
 
template<typename T , std::size_t N>
void vsmc::swap (Array< T, N > &ary1, Array< T, N > &ary2)
 Array ADL of swap. More...
 

Macro Definition Documentation

#define VSMC_RUNTIME_ASSERT_UTILITY_ARRAY_RANGE (   i,
 
)    VSMC_RUNTIME_ASSERT((i < N), ("**Array** USED WITH AN INDEX OUT OF RANGE"))

Definition at line 45 of file array.hpp.

#define VSMC_STATIC_ASSERT_UTILITY_ARRAY_RANGE (   Pos,
 
)    VSMC_STATIC_ASSERT((Pos < N), USE_Array_WITH_AN_INDEX_OUT_OF_RANGE)

Definition at line 42 of file array.hpp.