GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
NoAlias< ArrayClass > Class Template Reference

This is a simple wrapper template that will subclass an Array<T> type or any later type derived from it and override the default non-const operator() to not check for the array's uniqueness. More...

#include "Array.h"

Inheritance diagram for NoAlias< ArrayClass >:
Collaboration diagram for NoAlias< ArrayClass >:

Public Member Functions

 NoAlias ()
 
template<typename X >
 NoAlias (X x)
 
template<typename X , typename Y >
 NoAlias (X x, Y y)
 
template<typename X , typename Y , typename Z >
 NoAlias (X x, Y y, Z z)
 
Toperator() (octave_idx_type n)
 
Toperator() (octave_idx_type i, octave_idx_type j)
 
Toperator() (octave_idx_type i, octave_idx_type j, octave_idx_type k)
 
Toperator() (const Array< octave_idx_type > &ra_idx)
 

Private Types

typedef ArrayClass::element_type T
 

Detailed Description

template<typename ArrayClass>
class NoAlias< ArrayClass >

This is a simple wrapper template that will subclass an Array<T> type or any later type derived from it and override the default non-const operator() to not check for the array's uniqueness.

It is, however, the user's responsibility to ensure the array is actually unaliased whenever elements are accessed.

Definition at line 892 of file Array.h.

Member Typedef Documentation

◆ T

template<typename ArrayClass>
typedef ArrayClass::element_type NoAlias< ArrayClass >::T
private

Definition at line 894 of file Array.h.

Constructor & Destructor Documentation

◆ NoAlias() [1/4]

template<typename ArrayClass>
NoAlias< ArrayClass >::NoAlias ( )
inline

Definition at line 896 of file Array.h.

◆ NoAlias() [2/4]

template<typename ArrayClass>
template<typename X >
NoAlias< ArrayClass >::NoAlias ( x)
inlineexplicit

Definition at line 900 of file Array.h.

◆ NoAlias() [3/4]

template<typename ArrayClass>
template<typename X , typename Y >
NoAlias< ArrayClass >::NoAlias ( x,
y 
)
inlineexplicit

Definition at line 903 of file Array.h.

◆ NoAlias() [4/4]

template<typename ArrayClass>
template<typename X , typename Y , typename Z >
NoAlias< ArrayClass >::NoAlias ( x,
y,
Z  z 
)
inlineexplicit

Definition at line 906 of file Array.h.

Member Function Documentation

◆ operator()() [1/4]

template<typename ArrayClass>
T& NoAlias< ArrayClass >::operator() ( octave_idx_type  n)
inline

Definition at line 908 of file Array.h.

◆ operator()() [2/4]

template<typename ArrayClass>
T& NoAlias< ArrayClass >::operator() ( octave_idx_type  i,
octave_idx_type  j 
)
inline

Definition at line 910 of file Array.h.

References i.

◆ operator()() [3/4]

template<typename ArrayClass>
T& NoAlias< ArrayClass >::operator() ( octave_idx_type  i,
octave_idx_type  j,
octave_idx_type  k 
)
inline

Definition at line 912 of file Array.h.

References i, and k.

◆ operator()() [4/4]

template<typename ArrayClass>
T& NoAlias< ArrayClass >::operator() ( const Array< octave_idx_type > &  ra_idx)
inline

Definition at line 914 of file Array.h.

References ra_idx.


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