本文整理汇总了C++中Exception::displayText方法的典型用法代码示例。如果您正苦于以下问题:C++ Exception::displayText方法的具体用法?C++ Exception::displayText怎么用?C++ Exception::displayText使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Exception
的用法示例。
在下文中一共展示了Exception::displayText方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getExceptionMessage
std::string getExceptionMessage(const Exception & e, bool with_stacktrace, bool check_embedded_stacktrace)
{
std::stringstream stream;
try
{
std::string text = e.displayText();
bool has_embedded_stack_trace = false;
if (check_embedded_stacktrace)
{
auto embedded_stack_trace_pos = text.find("Stack trace");
has_embedded_stack_trace = embedded_stack_trace_pos != std::string::npos;
if (!with_stacktrace && has_embedded_stack_trace)
{
text.resize(embedded_stack_trace_pos);
Poco::trimRightInPlace(text);
}
}
stream << "Code: " << e.code() << ", e.displayText() = " << text;
if (with_stacktrace && !has_embedded_stack_trace)
stream << ", Stack trace:\n\n" << e.getStackTrace().toString();
}
catch (...) {}
return stream.str();
}
示例2:
void kdrive::connector::raiseError(Connector& connector, const Exception& exception)
{
const int errorCode = exception.code() ? exception.code() : ConnectorErrorCodes::ConnectorError;
connector.setLastErrorCode(errorCode);
connector.setLastErrorMessage(exception.displayText());
connector.routeEvent(ConnectorEvents::Error);
exception.rethrow();
}
示例3: writeException
void writeException(const Exception & e, WriteBuffer & buf, bool with_stack_trace)
{
writeBinary(e.code(), buf);
writeBinary(String(e.name()), buf);
writeBinary(e.displayText(), buf);
if (with_stack_trace)
writeBinary(e.getStackTrace().toString(), buf);
else
writeBinary(String(), buf);
bool has_nested = e.nested() != nullptr;
writeBinary(has_nested, buf);
if (has_nested)
writeException(Exception(Exception::CreateFromPoco, *e.nested()), buf, with_stack_trace);
}
示例4: log
void Logger::log(const Exception& exc, const char* file, int line)
{
error(exc.displayText(), file, line);
}