gds_err.h 916 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #ifndef _GDS_ERR_H_
  2. #define _GDS_ERR_H_
  3. #include <esp_log.h>
  4. #define GDS_DoAbort( )
  5. #if ! defined NullCheck
  6. #define NullCheck( ptr, retexpr ) { \
  7. if ( ptr == NULL ) { \
  8. ESP_LOGE( __FUNCTION__, "%s == NULL", #ptr ); \
  9. GDS_DoAbort( ); \
  10. retexpr; \
  11. } \
  12. }
  13. #endif
  14. #if ! defined ESP_ERROR_CHECK_NONFATAL
  15. #define ESP_ERROR_CHECK_NONFATAL( expr, retexpr ) { \
  16. esp_err_t __err_rc = ( expr ); \
  17. if ( __err_rc != ESP_OK ) { \
  18. ESP_LOGE( __FUNCTION__, "%s != ESP_OK, result: %d", #expr, __err_rc ); \
  19. GDS_DoAbort( ); \
  20. retexpr; \
  21. } \
  22. }
  23. #endif
  24. #if ! defined CheckBounds
  25. #define CheckBounds( expr, retexpr ) { \
  26. if ( expr ) { \
  27. ESP_LOGE( __FUNCTION__, "Line %d: %s", __LINE__, #expr ); \
  28. GDS_DoAbort( ); \
  29. retexpr; \
  30. } \
  31. }
  32. #endif
  33. #endif