51 #define BM_ELEM_INDEX_VALIDATE(_bm, _msg_a, _msg_b) \
52 BM_mesh_elem_index_validate(_bm, __FILE__ ":" STRINGIFY(__LINE__), __func__, _msg_a, _msg_b)
68 #ifdef WITH_ASSERT_ABORT
69 # define _BMESH_DUMMY_ABORT abort
71 # define _BMESH_DUMMY_ABORT() (void)0
76 #define BMESH_ASSERT(a) \
77 (void)((!(a)) ? ((fprintf(stderr, \
78 "BMESH_ASSERT failed: %s, %s(), %d at \'%s\'\n", \
83 _BMESH_DUMMY_ABORT(), \
bool BMO_error_occurred(BMesh *bm)
void BMO_error_clear(BMesh *bm)
int BMO_error_pop(BMesh *bm, const char **msg, BMOperator **op)
@ BMERR_INVALID_SELECTION
@ BMERR_CONNECTVERT_FAILED
@ BMERR_DISSOLVEFACES_FAILED
@ BMERR_CONVEX_HULL_FAILED
void BMO_error_raise(BMesh *bm, BMOperator *owner, int errcode, const char *msg)
int BMO_error_get(BMesh *bm, const char **msg, BMOperator **op)
ATTR_WARN_UNUSED_RESULT BMesh * bm