Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
duckdb::array_ptr_iterator< DATA_TYPE > Class Template Reference

Public Member Functions

 array_ptr_iterator (DATA_TYPE *ptr, idx_t index, idx_t size)
 
array_ptr_iterator< DATA_TYPE > & operator++ ()
 
bool operator!= (const array_ptr_iterator< DATA_TYPE > &other) const
 
DATA_TYPEoperator* () const
 

Private Attributes

DATA_TYPEptr
 
idx_t index
 
idx_t size
 

Constructor & Destructor Documentation

◆ array_ptr_iterator()

template<class DATA_TYPE >
duckdb::array_ptr_iterator< DATA_TYPE >::array_ptr_iterator ( DATA_TYPE ptr,
idx_t  index,
idx_t  size 
)
inline
15073 : ptr(ptr), index(index), size(size) {
15074 }

Member Function Documentation

◆ operator++()

15077 {
15078 index++;
15079 if (index > size) {
15080 index = size;
15081 }
15082 return *this;
15083 }

◆ operator!=()

15084 {
15085 return ptr != other.ptr || index != other.index || size != other.size;
15086 }

◆ operator*()

template<class DATA_TYPE >
DATA_TYPE & duckdb::array_ptr_iterator< DATA_TYPE >::operator* ( ) const
inline
15087 {
15088 if (DUCKDB_UNLIKELY(index >= size)) {
15089 throw InternalException("array_ptr iterator dereferenced while iterator is out of range");
15090 }
15091 return ptr[index];
15092 }

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