26 #ifndef _H_GRB_ITERATOR_UTILS 27 #define _H_GRB_ITERATOR_UTILS 57 template<
typename IterT >
61 const typename IterT::ColumnIndexType cols
64 "IterT is not an ALP matrix iterator" );
65 if( it.i() >= rows ) {
67 std::cerr <<
"Error: " << rows <<
" x " << cols
68 <<
" matrix nonzero ingestion encounters row " 69 <<
"index at " << it.i() << std::endl;
73 if( it.j() >= cols ) {
75 std::cerr <<
"Error: " << rows <<
" x " << cols
76 <<
" matrix nonzero ingestion encounters column " 77 <<
"input at " << it.j() << std::endl;
88 #endif // end _H_GRB_ITERATOR_UTILS Defines the ALP error codes.
unsigned int RowIndexType
What data type should be used to store row indices.
Definition: base/config.hpp:436
RC
Return codes of ALP primitives.
Definition: rc.hpp:47
RC check_input_coordinates(const IterT &it, const typename IterT::RowIndexType rows, const typename IterT::ColumnIndexType cols)
Checks whether the input iterator it stores valid row and column coordinates.
Definition: utils.hpp:58
Specifies the ALP algebraic type traits.
The ALP/GraphBLAS namespace.
Definition: graphblas.hpp:477
Indicates the primitive has executed successfully.
Definition: rc.hpp:54
One or more of the ALP/GraphBLAS objects passed to the primitive that returned this error have mismat...
Definition: rc.hpp:90
Used to gauge whether a given type is an ALP matrix iterator.
Definition: utils/iterators/type_traits.hpp:112