22#ifndef Rcpp_Dimension_h 
   23#define Rcpp_Dimension_h 
   43                dims[0] = 
static_cast<int>(n1) ;
 
 
   46                dims[0] = 
static_cast<int>(n1) ;
 
   47                dims[1] = 
static_cast<int>(n2) ;
 
 
   50                dims[0] = 
static_cast<int>(n1) ;
 
   51                dims[1] = 
static_cast<int>(n2) ;
 
   52                dims[2] = 
static_cast<int>(
n3) ;
 
 
   54            operator SEXP() 
const ;
 
   57                return (
int) 
dims.size() ;
 
 
   60                return std::accumulate( 
dims.begin(), 
dims.end(), 
static_cast<R_xlen_t>(1), std::multiplies<R_xlen_t>() );
 
 
   64                if( 
i < 0 || i>=
static_cast<int>(
dims.size()) ) 
throw std::range_error(
"index out of bounds") ;
 
 
   68                if( 
i < 0 || i>=
static_cast<int>(
dims.size()) ) 
throw std::range_error(
"index out of bounds") ;
 
 
 
reference operator[](int i)
 
std::vector< int >::reference reference
 
Dimension & operator=(const Dimension &other)
 
const_reference operator[](int i) const
 
Dimension(const size_t &n1)
 
Dimension(const size_t &n1, const size_t &n2, const size_t &n3)
 
std::vector< int >::const_reference const_reference
 
Dimension(const size_t &n1, const size_t &n2)
 
Dimension(const Dimension &other)