Go to the documentation of this file.
19 #ifndef GEOS_LINEARALGEBRA_INTERFACES_COMMON_HPP_
20 #define GEOS_LINEARALGEBRA_INTERFACES_COMMON_HPP_
28 #define GEOS_LAI_RUNTIME_ASSERT 1
29 #if GEOS_LAI_RUNTIME_ASSERT
35 #define GEOS_LAI_ASSERT( expr ) GEOS_ERROR_IF( !(expr), "" )
42 #define GEOS_LAI_ASSERT_MSG( expr, msg ) GEOS_ERROR_IF( !(expr), msg )
49 #define GEOS_LAI_ASSERT_EQ( lhs, rhs ) GEOS_ERROR_IF_NE( lhs, rhs )
56 #define GEOS_LAI_ASSERT_NE( lhs, rhs ) GEOS_ERROR_IF_EQ( lhs, rhs )
63 #define GEOS_LAI_ASSERT_GT( lhs, rhs ) GEOS_ERROR_IF_GE( rhs, lhs )
70 #define GEOS_LAI_ASSERT_GE( lhs, rhs ) GEOS_ERROR_IF_GT( rhs, lhs )
77 #define GEOS_LAI_ASSERT( expr ) GEOS_ASSERT( expr )
84 #define GEOS_LAI_ASSERT_MSG( expr, msg ) GEOS_ASSERT_MSG( expr, msg )
91 #define GEOS_LAI_ASSERT_EQ( lhs, rhs ) GEOS_ASSERT_EQ( lhs, rhs )
98 #define GEOS_LAI_ASSERT_NE( lhs, rhs ) GEOS_ASSERT_NE( lhs, rhs )
105 #define GEOS_LAI_ASSERT_GT( lhs, rhs ) GEOS_ASSERT_GT( lhs, rhs )
112 #define GEOS_LAI_ASSERT_GE( lhs, rhs ) GEOS_ASSERT_GE( lhs, rhs )
119 #define GEOS_LAI_CHECK_ERROR( call ) \
121 auto const ierr = call; \
122 GEOS_ERROR_IF_NE_MSG( ierr, 0, "Error in call to " << #call ); \
129 #define GEOS_LAI_CHECK_ERROR_NNEG( call ) \
131 auto const ierr = call; \
132 GEOS_ERROR_IF_GT_MSG( 0, ierr, "Error in call to " << #call ); \