ARTS 2.5.11 (git: 6827797f)
|
Helper macros for debugging. More...
#include <sstream>
#include <string>
#include <version>
#include <exception>
#include <iostream>
Go to the source code of this file.
Macros | |
#define | CURRENT_SOURCE_LOCATION var_string("\t", __FILE__, ":", __LINE__) |
#define | DEBUG_ONLY(...) __VA_ARGS__ |
#define | DEBUG_COUNTER(n) |
#define | DEBUG_PRINT(e) { std::cerr << "DBG: " << (e) << std::endl; } |
#define | DEBUG_VAR(e) { std::cerr << "DBG: " << #e << ": " << (e) << std::endl; } |
#define | DEBUG_VAR_FLT(p, e) |
#define | ARTS_NOEXCEPT noexcept(false) |
#define | ARTS_ASSERT(condition, ...) |
#define | ARTS_USER_NOEXCEPT noexcept(false) |
#define | ARTS_USER_ERROR_IF(condition, ...) |
#define | ARTS_USER_ERROR(...) |
Functions | |
template<typename ... Args> | |
std::string | var_string (Args &&... args) |
#define ARTS_ASSERT | ( | condition, | |
... | |||
) |
Condition should be true to pass internal check
#define ARTS_USER_ERROR | ( | ... | ) |
An error has occured, will throw the error
#define ARTS_USER_ERROR_IF | ( | condition, | |
... | |||
) |
Condition should be false to pass external check
#define ARTS_USER_NOEXCEPT noexcept(false) |
#define CURRENT_SOURCE_LOCATION var_string("\t", __FILE__, ":", __LINE__) |
#define DEBUG_COUNTER | ( | n | ) |
#define DEBUG_PRINT | ( | e | ) | { std::cerr << "DBG: " << (e) << std::endl; } |
#define DEBUG_VAR | ( | e | ) | { std::cerr << "DBG: " << #e << ": " << (e) << std::endl; } |
#define DEBUG_VAR_FLT | ( | p, | |
e | |||
) |
std::string var_string | ( | Args &&... | args | ) |
Take all arguments and turn to string by their operator<<()
Definition at line 18 of file debug.h.
Referenced by abs_cia_dataReadSpeciesSplitCatalog(), abs_lines_per_speciesReadSpeciesSplitCatalog(), AgendaManip::MethodVariable::add_del(), AgendaManip::MethodVariable::add_set(), AtmFieldsCalc(), atmgeom_checkedCalc(), chk_griddedfield_gridname(), chk_interpolation_grids(), AgendaManip::AgendaCreator::finalize(), GriddedField::get_numeric_grid(), GriddedField::get_string_grid(), main(), Quantum::Helpers::molecular_term_symbol(), ArtsParser::parse_generic_output(), AgendaManip::AgendaCreator::set(), Quantum::Number::ValueList::set(), Quantum::Number::Value::str_low(), Quantum::Number::Value::str_upp(), Quantum::Number::Value::swap_values(), AgendaManip::MethodVariable::wsv_position(), and xml_write_to_stream().