PIP 5.6.1
Platform-Independent Primitives
Public Member Functions | List of all members
PIVector2D< T >::ColConst Class Reference

Proxy class representing a single read-only column in a PIVector2D. Returned by const col(). Provides const access to column elements. More...

#include <pivector2d.h>

Inheritance diagram for PIVector2D< T >::ColConst:
Inheritance graph
[legend]

Public Member Functions

 ColConst (const PIVector2D< T >::Col &c)
 Copy constructor from modifiable Col to read-only ColConst. More...
 
size_t size () const
 Size of the column (number of rows).
 
const T & operator[] (size_t index) const
 Const access to the element at the given row index within the column.
 
const T * data (size_t index=0) const
 Returns a const pointer to the column data starting at an optional row offset.
 
PIVector< T > toVector () const
 Converts the column to a PIVector.
 
ssize_t indexOf (const T &e, ssize_t start=0) const
 Returns the first index of element e in the row, starting from start. See PIVector::indexOf() for details on negative start handling. More...
 
ssize_t lastIndexOf (const T &e, ssize_t start=-1) const
 Returns the last index of element e in the row, searching backwards from start. More...
 
ssize_t indexWhere (std::function< bool(const T &e)> test, ssize_t start=0) const
 Returns the first index where the predicate test returns true, starting from start. More...
 
ssize_t lastIndexWhere (std::function< bool(const T &e)> test, ssize_t start=-1) const
 Returns the last index where the predicate test returns true, searching backwards from start. More...
 
void forEach (std::function< void(const T &)> func) const
 Applies a function to each element of the column (read-only). The function can't modify the elements. More...
 
bool contains (const T &e, ssize_t start=0) const
 Checks if the column contains the element e. More...
 
int entries (const T &e, ssize_t start=0) const
 Counts occurrences of e in the column. More...
 
int entries (std::function< bool(const T &e)> test, ssize_t start=0) const
 Counts elements in the column that pass the test. More...
 
bool any (std::function< bool(const T &e)> test) const
 Tests if any element in the column passes the test. More...
 
bool every (std::function< bool(const T &e)> test) const
 Tests if all elements in the column pass the test. More...
 

Detailed Description

template<typename T>
class PIVector2D< T >::ColConst

Proxy class representing a single read-only column in a PIVector2D. Returned by const col(). Provides const access to column elements.

See also
Col, RowConst

Constructor & Destructor Documentation

◆ ColConst()

template<typename T >
PIVector2D< T >::ColConst::ColConst ( const PIVector2D< T >::Col &  c)
inline

Copy constructor from modifiable Col to read-only ColConst.

See also
Col

Member Function Documentation

◆ indexOf()

template<typename T >
ssize_t PIVector2D< T >::ColConst::indexOf ( const T &  e,
ssize_t  start = 0 
) const
inline

Returns the first index of element e in the row, starting from start. See PIVector::indexOf() for details on negative start handling.

See also
PIVector::indexOf()

◆ lastIndexOf()

template<typename T >
ssize_t PIVector2D< T >::ColConst::lastIndexOf ( const T &  e,
ssize_t  start = -1 
) const
inline

Returns the last index of element e in the row, searching backwards from start.

See also
PIVector::lastIndexOf()

◆ indexWhere()

template<typename T >
ssize_t PIVector2D< T >::ColConst::indexWhere ( std::function< bool(const T &e)>  test,
ssize_t  start = 0 
) const
inline

Returns the first index where the predicate test returns true, starting from start.

See also
PIVector::indexWhere()

◆ lastIndexWhere()

template<typename T >
ssize_t PIVector2D< T >::ColConst::lastIndexWhere ( std::function< bool(const T &e)>  test,
ssize_t  start = -1 
) const
inline

Returns the last index where the predicate test returns true, searching backwards from start.

See also
PIVector::lastIndexWhere()

◆ forEach()

template<typename T >
void PIVector2D< T >::ColConst::forEach ( std::function< void(const T &)>  func) const
inline

Applies a function to each element of the column (read-only). The function can't modify the elements.

See also
forEach (modifiable)

◆ contains()

template<typename T >
bool PIVector2D< T >::ColConst::contains ( const T &  e,
ssize_t  start = 0 
) const
inline

Checks if the column contains the element e.

See also
PIVector::contains()

◆ entries() [1/2]

template<typename T >
int PIVector2D< T >::ColConst::entries ( const T &  e,
ssize_t  start = 0 
) const
inline

Counts occurrences of e in the column.

See also
PIVector::entries()

◆ entries() [2/2]

template<typename T >
int PIVector2D< T >::ColConst::entries ( std::function< bool(const T &e)>  test,
ssize_t  start = 0 
) const
inline

Counts elements in the column that pass the test.

See also
PIVector::entries(std::function)

◆ any()

template<typename T >
bool PIVector2D< T >::ColConst::any ( std::function< bool(const T &e)>  test) const
inline

Tests if any element in the column passes the test.

See also
PIVector::any()

◆ every()

template<typename T >
bool PIVector2D< T >::ColConst::every ( std::function< bool(const T &e)>  test) const
inline

Tests if all elements in the column pass the test.

See also
PIVector::every()