QMCPACK
container_traits< Array< T, D > > Struct Template Reference
+ Collaboration diagram for container_traits< Array< T, D > >:

Public Types

using element_type = T
 
using CT = Array< T, D >
 

Static Public Member Functions

template<typename I >
static void resize (CT &ref, I *n, int d)
 
static size_t getSize (const CT &ref)
 
static auto getElementPtr (CT &ref)
 

Detailed Description

template<typename T, unsigned D>
struct qmcplusplus::container_traits< Array< T, D > >

Definition at line 69 of file container_traits_ohmms.h.

Member Typedef Documentation

◆ CT

using CT = Array<T, D>

Definition at line 72 of file container_traits_ohmms.h.

◆ element_type

using element_type = T

Definition at line 71 of file container_traits_ohmms.h.

Member Function Documentation

◆ getElementPtr()

static auto getElementPtr ( CT ref)
inlinestatic

Definition at line 88 of file container_traits_ohmms.h.

References Array< T, D, ALLOC >::data().

88 { return ref.data(); }

◆ getSize()

static size_t getSize ( const CT ref)
inlinestatic

Definition at line 86 of file container_traits_ohmms.h.

References Array< T, D, ALLOC >::size().

86 { return ref.size(); }

◆ resize()

static void resize ( CT ref,
I n,
int  d 
)
inlinestatic

Definition at line 75 of file container_traits_ohmms.h.

References qmcplusplus::n, and Array< T, D, ALLOC >::resize().

76  {
77  if (d != D)
78  {
79  std::ostringstream err_msg;
80  err_msg << "Array<T, " << D << "> cannot be resized. Requested dimension = " << d << std::endl;
81  throw std::runtime_error(err_msg.str());
82  }
83  ref.resize(n);
84  }

The documentation for this struct was generated from the following file: