Files
espcpputils/src/espcppmacros.h

22 lines
657 B
C
Raw Normal View History

2021-07-15 17:04:35 +02:00
#pragma once
namespace espcpputils {
#define CALL_AND_EXIT_ON_ERROR(METHOD, ...) \
if (const auto result##__LINE__ = METHOD(__VA_ARGS__); result##__LINE__ != ESP_OK) \
2021-07-15 17:04:35 +02:00
{ \
ESP_LOGE(TAG, "%s() failed with %s", #METHOD, esp_err_to_name(result##__LINE__)); \
return result##__LINE__; \
2021-07-15 17:04:35 +02:00
}
#define CALL_AND_EXIT(METHOD, ...) \
if (const auto result##__LINE__ = METHOD(__VA_ARGS__); result##__LINE__ != ESP_OK) \
2021-07-15 17:04:35 +02:00
{ \
ESP_LOGE(TAG, "%s() failed with %s", #METHOD, esp_err_to_name(result##__LINE__)); \
return result##__LINE__; \
2021-07-15 17:04:35 +02:00
} \
else \
return result##__LINE__;
2021-07-15 17:04:35 +02:00
} // namespace espcpputils