1#ifndef ZSERIO_CPP_RUNTIME_EXCEPTION_H_INC
2#define ZSERIO_CPP_RUNTIME_EXCEPTION_H_INC
129 std::array<char, 24> buffer = {};
142template <
typename ALLOC>
146 exception.
append(value.c_str(), value.size());
158template <
typename T,
typename ALLOC>
161 return exception <<
"vector([...], " << value.size() <<
")";
172template <
typename EXCEPTION,
typename VALUE,
173 typename =
typename std::enable_if<std::is_base_of<CppRuntimeException, EXCEPTION>::value,
int>::type>
174using CppRuntimeExceptionRValueInsertion = EXCEPTION&&;
189template <
typename CPP_RUNTIME_EXCEPTION,
typename T>
190detail::CppRuntimeExceptionRValueInsertion<CPP_RUNTIME_EXCEPTION, T>
operator<<(
191 CPP_RUNTIME_EXCEPTION&& exception,
const T& value)
194 return std::forward<CPP_RUNTIME_EXCEPTION>(exception);
~CppRuntimeException() override
CppRuntimeException & operator=(CppRuntimeException &&other)=default
CppRuntimeException & operator=(const CppRuntimeException &other)=default
CppRuntimeException(CppRuntimeException &&other)=default
CppRuntimeException(const CppRuntimeException &other)=default
const char * what() const noexcept override
void append(const char *message)
const char * convertIntToString(std::array< char, 24 > &buffer, T value)
CppRuntimeException & operator<<(CppRuntimeException &exception, const BasicBitBuffer< ALLOC > &bitBuffer)