Teuchos Package Browser (Single Doxygen Collection)  Version of the Day
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
Teuchos::ArrayView< const T > Class Template Reference

Partial specialization of ArrayView for const T. More...

#include <Teuchos_ArrayViewDecl.hpp>

Public Types

typedef Teuchos_Ordinal Ordinal
 
typedef Ordinal size_type
 
typedef Ordinal difference_type
 
typedef const T value_type
 
typedef const T * pointer
 
typedef const T * const_pointer
 
typedef const T & reference
 
typedef const T & const_reference
 
typedef pointer iterator
 
typedef const_pointer const_iterator
 

Public Member Functions

 ArrayView (ENull null_arg=null)
 
 ArrayView (const T *p, size_type size, const ERCPNodeLookup rcpNodeLookup=RCP_ENABLE_NODE_LOOKUP)
 
 ArrayView (const ArrayView< const T > &array)
 
 ArrayView (std::vector< typename ConstTypeTraits< T >::NonConstType > &vec)
 
 ArrayView (const std::vector< typename ConstTypeTraits< T >::NonConstType > &vec)
 
ArrayView< const T > & operator= (const ArrayView< const T > &array)
 
 ~ArrayView ()
 
bool is_null () const
 
size_type size () const
 
std::string toString () const
 
const T * getRawPtr () const
 
const T & operator[] (size_type i) const
 
const T & front () const
 
const T & back () const
 
ArrayView< const T > view (size_type offset, size_type size) const
 
ArrayView< const T > operator() (size_type offset, size_type size) const
 
const ArrayView< const T > & operator() () const
 
ArrayView< const T > getConst () const
 Return a const view of *this. More...
 
iterator begin () const
 
iterator end () const
 
const ArrayView< const T > & assert_not_null () const
 
const ArrayView< const T > & assert_in_range (size_type offset, size_type size) const
 
const T * access_private_ptr () const
 

Private Member Functions

void setUpIterators (const ERCPNodeLookup rcpNodeLookup=RCP_ENABLE_NODE_LOOKUP)
 
void debug_assert_not_null () const
 
void debug_assert_in_range (size_type offset, size_type size_in) const
 
void debug_assert_valid_ptr () const
 

Private Attributes

const T * ptr_
 
int size_
 

Detailed Description

template<class T>
class Teuchos::ArrayView< const T >

Partial specialization of ArrayView for const T.

The main documentation for ArrayView explains why this class needs a partial specialization for const types.

Definition at line 428 of file Teuchos_ArrayViewDecl.hpp.

Member Typedef Documentation

◆ Ordinal

template<class T >
typedef Teuchos_Ordinal Teuchos::ArrayView< const T >::Ordinal

Definition at line 430 of file Teuchos_ArrayViewDecl.hpp.

◆ size_type

template<class T >
typedef Ordinal Teuchos::ArrayView< const T >::size_type

Definition at line 431 of file Teuchos_ArrayViewDecl.hpp.

◆ difference_type

template<class T >
typedef Ordinal Teuchos::ArrayView< const T >::difference_type

Definition at line 432 of file Teuchos_ArrayViewDecl.hpp.

◆ value_type

template<class T >
typedef const T Teuchos::ArrayView< const T >::value_type

Definition at line 433 of file Teuchos_ArrayViewDecl.hpp.

◆ pointer

template<class T >
typedef const T* Teuchos::ArrayView< const T >::pointer

Definition at line 434 of file Teuchos_ArrayViewDecl.hpp.

◆ const_pointer

template<class T >
typedef const T* Teuchos::ArrayView< const T >::const_pointer

Definition at line 435 of file Teuchos_ArrayViewDecl.hpp.

◆ reference

template<class T >
typedef const T& Teuchos::ArrayView< const T >::reference

Definition at line 436 of file Teuchos_ArrayViewDecl.hpp.

◆ const_reference

template<class T >
typedef const T& Teuchos::ArrayView< const T >::const_reference

Definition at line 437 of file Teuchos_ArrayViewDecl.hpp.

◆ iterator

template<class T >
typedef pointer Teuchos::ArrayView< const T >::iterator

Definition at line 443 of file Teuchos_ArrayViewDecl.hpp.

◆ const_iterator

template<class T >
typedef const_pointer Teuchos::ArrayView< const T >::const_iterator

Definition at line 444 of file Teuchos_ArrayViewDecl.hpp.

Constructor & Destructor Documentation

◆ ArrayView() [1/5]

template<class T >
Teuchos::ArrayView< const T >::ArrayView ( ENull  null_arg = null)
inline

Definition at line 65 of file Teuchos_ArrayView.hpp.

◆ ArrayView() [2/5]

template<class T >
Teuchos::ArrayView< const T >::ArrayView ( const T *  p,
size_type  size,
const ERCPNodeLookup  rcpNodeLookup = RCP_ENABLE_NODE_LOOKUP 
)
inline

Definition at line 88 of file Teuchos_ArrayView.hpp.

◆ ArrayView() [3/5]

template<class T >
Teuchos::ArrayView< const T >::ArrayView ( const ArrayView< const T > &  array)
inline

Definition at line 111 of file Teuchos_ArrayView.hpp.

◆ ArrayView() [4/5]

template<class T >
Teuchos::ArrayView< const T >::ArrayView ( std::vector< typename ConstTypeTraits< T >::NonConstType > &  vec)
inline

Definition at line 129 of file Teuchos_ArrayView.hpp.

◆ ArrayView() [5/5]

template<class T >
Teuchos::ArrayView< const T >::ArrayView ( const std::vector< typename ConstTypeTraits< T >::NonConstType > &  vec)
inline

Definition at line 148 of file Teuchos_ArrayView.hpp.

◆ ~ArrayView()

template<class T >
Teuchos::ArrayView< const T >::~ArrayView ( )
inline

Definition at line 185 of file Teuchos_ArrayView.hpp.

Member Function Documentation

◆ operator=()

template<class T >
ArrayView< const T > & Teuchos::ArrayView< const T >::operator= ( const ArrayView< const T > &  array)
inline

Definition at line 169 of file Teuchos_ArrayView.hpp.

◆ is_null()

template<class T >
bool Teuchos::ArrayView< const T >::is_null ( ) const
inline

Definition at line 201 of file Teuchos_ArrayView.hpp.

◆ size()

template<class T >
ArrayView< const T >::size_type Teuchos::ArrayView< const T >::size ( ) const
inline

Definition at line 215 of file Teuchos_ArrayView.hpp.

◆ toString()

template<typename T >
std::string Teuchos::ArrayView< const T >::toString ( ) const

Definition at line 243 of file Teuchos_ArrayView.hpp.

◆ getRawPtr()

template<class T >
const T * Teuchos::ArrayView< const T >::getRawPtr ( ) const
inline

Definition at line 299 of file Teuchos_ArrayView.hpp.

◆ operator[]()

template<class T >
const T & Teuchos::ArrayView< const T >::operator[] ( size_type  i) const
inline

Definition at line 315 of file Teuchos_ArrayView.hpp.

◆ front()

template<class T >
const T & Teuchos::ArrayView< const T >::front ( ) const
inline

Definition at line 332 of file Teuchos_ArrayView.hpp.

◆ back()

template<class T >
const T & Teuchos::ArrayView< const T >::back ( ) const
inline

Definition at line 348 of file Teuchos_ArrayView.hpp.

◆ view()

template<class T >
ArrayView< const T > Teuchos::ArrayView< const T >::view ( size_type  offset,
size_type  size 
) const
inline

Definition at line 376 of file Teuchos_ArrayView.hpp.

◆ operator()() [1/2]

template<class T >
ArrayView< const T > Teuchos::ArrayView< const T >::operator() ( size_type  offset,
size_type  size 
) const
inline

Definition at line 399 of file Teuchos_ArrayView.hpp.

◆ operator()() [2/2]

template<class T >
const ArrayView< const T > & Teuchos::ArrayView< const T >::operator() ( ) const
inline

Definition at line 413 of file Teuchos_ArrayView.hpp.

◆ getConst()

template<class T >
ArrayView< const T > Teuchos::ArrayView< const T >::getConst ( ) const
inline

Return a const view of *this.

This object is already const (this is a specialization for const T), so this method is trivial; it just returns *this.

Definition at line 432 of file Teuchos_ArrayView.hpp.

◆ begin()

template<class T >
ArrayView< const T >::iterator Teuchos::ArrayView< const T >::begin ( ) const

Definition at line 476 of file Teuchos_ArrayView.hpp.

◆ end()

template<class T >
ArrayView< const T >::iterator Teuchos::ArrayView< const T >::end ( ) const

Definition at line 499 of file Teuchos_ArrayView.hpp.

◆ assert_not_null()

template<class T >
const ArrayView< const T > & Teuchos::ArrayView< const T >::assert_not_null ( ) const

Definition at line 522 of file Teuchos_ArrayView.hpp.

◆ assert_in_range()

template<class T >
const ArrayView< const T > & Teuchos::ArrayView< const T >::assert_in_range ( size_type  offset,
size_type  size 
) const

Definition at line 553 of file Teuchos_ArrayView.hpp.

◆ setUpIterators()

template<class T >
void Teuchos::ArrayView< const T >::setUpIterators ( const ERCPNodeLookup  rcpNodeLookup = RCP_ENABLE_NODE_LOOKUP)
private

Definition at line 616 of file Teuchos_ArrayView.hpp.

◆ debug_assert_not_null()

template<class T >
void Teuchos::ArrayView< const T >::debug_assert_not_null ( ) const
inlineprivate

Definition at line 518 of file Teuchos_ArrayViewDecl.hpp.

◆ debug_assert_in_range()

template<class T >
void Teuchos::ArrayView< const T >::debug_assert_in_range ( size_type  offset,
size_type  size_in 
) const
inlineprivate

Definition at line 524 of file Teuchos_ArrayViewDecl.hpp.

◆ debug_assert_valid_ptr()

template<class T >
void Teuchos::ArrayView< const T >::debug_assert_valid_ptr ( ) const
inlineprivate

Definition at line 531 of file Teuchos_ArrayViewDecl.hpp.

◆ access_private_ptr()

template<class T >
const T* Teuchos::ArrayView< const T >::access_private_ptr ( ) const
inline

Definition at line 541 of file Teuchos_ArrayViewDecl.hpp.

Member Data Documentation

◆ ptr_

template<class T >
const T* Teuchos::ArrayView< const T >::ptr_
private

Definition at line 510 of file Teuchos_ArrayViewDecl.hpp.

◆ size_

template<class T >
int Teuchos::ArrayView< const T >::size_
private

Definition at line 511 of file Teuchos_ArrayViewDecl.hpp.


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