8#include "Arp/System/Commons/Exceptions/CommonException.hpp"
10namespace Arp {
namespace System {
namespace Commons {
namespace Plc
16 template<
typename... Args>
36 static PlcException CreateWithStackTrace(
int exc,
const String& message,
const String& additionalStackTrace,
int skipStackTraceDepth = 0);
45 static const char*
const defaultMessage;
48 static const int DefaultSkipStackTraceDepth = 3;
55template<
typename... Args>
66template<>
struct fmt::formatter<
Arp::System::Commons::Plc::PlcException> :
public fmt::ostream_formatter {};
This is the base class of all Arp exception classes.
Definition: Exception.hpp:21
std::unique_ptr< Exception > Ptr
The smart pointer type of this class.
Definition: Exception.hpp:27
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
This is the base class of common exception classes.
Definition: CommonException.hpp:18
Definition: PlcException.hpp:14
static PlcException Create(int exc, const String &message)
Creates an PlcException instance using a default message text.
Definition: PlcException.cpp:21
Exception::Ptr Clone(void) const override
This operation clones this instance polymorpically as a deep copy.
Definition: PlcException.cpp:15
PlcException(const char *message, const Args &... args)
Constructs an PlcException instance.
Definition: PlcException.hpp:56
ExceptionTypeId
Specifies the type id of any exception derived by <see cref="CommonException".
Definition: ExceptionTypeId.hpp:15
Root namespace for the PLCnext API