|
| #define | FARM_VARGS(...) FARM_PP_COMMA() __VA_ARGS__ |
| |
| #define | FARM_VARGS_NONE(...) |
| |
| #define | FARM_MAYBE_VARGS(...) |
| |
| #define | FARM_LOG_ENABLED 1 |
| |
| #define | FARM_INFO(...) |
| | Log level to be used for more noisy FYI type of status. Don't use FARM_INFO if the pure compile-time invocation of the macro would hurt performance. E.g. if this code might be executed within an inner loop such as for every pixel of an image. Use FARM_DEBUG or FARM_TRACE instead which can be toggled at compile-time (and are turned off by default). More...
|
| |
| #define | FARM_WARN(...) |
| | More significant information with high signal to noise. Typically to communicate an usual but valid state of the program. More...
|
| |
| #define | FARM_ERROR(...) |
| | Error state (but not logical error/precondition violation nor panic). Currently not used. More...
|
| |
| #define | FARM_CRITICAL(...) |
| | Critical error state to communicated. Often followed by a panic (i.e. std::abort, if enabled). More...
|
| |
| #define | FARM_IMPL_ASSERT_OP(symbol, name_str, lhs, rhs, ...) |
| |
| #define | FARM_IMPL_LOG_HEADER(msg) FARM_IMPL_LOG_PRINTLN("[FARM {} in {}:{}]", msg, __FILE__, __LINE__) |
| |
| #define | FARM_PANIC(...) |
| | Print formatted error message and then panic. More...
|
| |
| #define | FARM_UNIMPLEMENTED(...) |
| | Print formatted error message and then panic. More...
|
| |
| #define | FARM_PRINTLN(cstr, ...) FARM_IMPL_LOG_PRINTLN(cstr, ##__VA_ARGS__) |
| |
| #define | FARM_INFO_EVERY_N(N, ...) |
| | LOG INFO: Only log every nth encounter. More...
|
| |
| #define | FARM_ASSERT(condition, ...) |
| | If condition is false, Print formatted error message and then panic. More...
|
| |
| #define | FARM_ASSERT_EQ(lhs, rhs, ...) FARM_IMPL_ASSERT_OP(==, "EQ", lhs, rhs, __VA_ARGS__) |
| | If it is false that lhs == rhs, print formatted error message and then panic. More...
|
| |
| #define | FARM_ASSERT_NE(lhs, rhs, ...) FARM_IMPL_ASSERT_OP(!=, "NE", lhs, rhs, __VA_ARGS__) |
| | If it is false that lhs != rhs, print formatted error message and then panic. More...
|
| |
| #define | FARM_ASSERT_LE(lhs, rhs, ...) FARM_IMPL_ASSERT_OP(<=, "LE", lhs, rhs, __VA_ARGS__) |
| | If it is false that lhs <= rhs, print formatted error message and then panic. More...
|
| |
| #define | FARM_ASSERT_LT(lhs, rhs, ...) FARM_IMPL_ASSERT_OP(<, "LT", lhs, rhs, __VA_ARGS__) |
| | If it is false that lhs < rhs, print formatted error message and then panic. More...
|
| |
| #define | FARM_ASSERT_GE(lhs, rhs, ...) FARM_IMPL_ASSERT_OP(>=, "GE", lhs, rhs, __VA_ARGS__) |
| | If it is false that lhs >= rhs, print formatted error message and then panic. More...
|
| |
| #define | FARM_ASSERT_GT(lhs, rhs, ...) FARM_IMPL_ASSERT_OP(>, "GT", lhs, rhs, __VA_ARGS__) |
| | If it is false that lhs > rhs, print formatted error message and then panic. More...
|
| |
| #define | FARM_ASSERT_NEAR(lhs, rhs, thr, ...) |
| | If it is false that lhs is near rhs according to threshold thr, print formatted error message and then panic. More...
|
| |
| #define | FARM_AT(contiguous_container, index, ...) |
| | Returns contiguous_container[index], but panics if index is out of bounds. More...
|
| |
| #define | FARM_GET(associative_container, key, ...) |
| | Returns associative_container[key], but panics if the container does not contain key . More...
|
| |
| #define | FARM_MAP_INSERT(map, key, value, ...) |
| | Insert val to map, but panics if the container does contain key already. More...
|
| |
| #define | FARM_UNWRAP(wrapper, ...) |
| | Returns *wrapper, but panics if wrapper is nullopt or null. More...
|
| |
| #define | FARM_ASSERT_PATH_EXIST(path, ...) |
| | Asserts that the given path exits. More...
|
| |
| #define | FARM_ASSERT_IS_FILE(path, ...) |
| | Asserts that the given path is a regular file. Hence it asserts that a) it does exit, b) it is a regular file. More...
|
| |
| #define | FARM_ASSERT_IS_FOLDER(path, ...) |
| | Asserts that the given path is a folder. Hence it asserts that a) it does exit, b) it is a folder (and not a file). More...
|
| |
| #define | FARM_ASSERT_FOLDER_IS_EMPTY(path, ...) |
| | Asserts that the given path is an empty folder. Hence it asserts that a) it does exit, b) it is a folder (and not a file), c) it is empty. More...
|
| |
|
| | farm_ng::FARM_ENUM (LogLevel, int,((trace, 0),(debug, 1),(info, 2),(warning, 3),(error, 4),(critical, 5))) |
| |
| auto | farm_ng::stringFromLogLevel (LogLevel level) -> std::string |
| |
| StreamLogger & | farm_ng::defaultLogger () |
| |
| template<class TContainer > |
| auto | farm_ng::details::checkedAtContiguousContainer (TContainer &container, size_t index, char const *container_cstr, char const *index_cstr, std::string const &file, int line, std::string const &func, std::string const &str) -> decltype(container[index]) |
| |
| template<class TContainer , class TKey > |
| auto | farm_ng::details::checkedGetFromAssociativeContainer (TContainer &container, TKey const &key, char const *container_cstr, char const *key_cstr, std::string const &file, int line, std::string const &func, std::string const &str) -> decltype(*(container.find(key))) |
| |
| template<class TMapLike , class TKey , class TValue > |
| auto | farm_ng::details::insertKeyValueInMap (TMapLike &map, TKey const &key, TValue const &value, char const *container_cstr, char const *key_cstr, char const *value_cstr, std::string const &file, int line, std::string const &func, std::string const &str) |
| |
| template<class TWrapper > |
| auto | farm_ng::details::unwrapImpl (TWrapper &wrapper, char const *wrapper_cstr, ::farm_ng::ErrorDetail detail) -> decltype(*wrapper) |
| |