7#ifndef ARP_USE_ARP_SYSTEM_COMMONS_EXCEPTIONS 
    8#include "Arp/Base/Commons/Exceptions/NotImplementedException.hpp" 
   15#include "Arp/System/Commons/Exceptions/CommonException.hpp" 
   17namespace Arp { 
namespace System { 
namespace Commons
 
   21class NotImplementedException : 
public CommonException
 
   24    template<
typename... Args>
 
   25    NotImplementedException(
const char* message, 
const Args& ... args);
 
   26    NotImplementedException(
const String& message);
 
   27    NotImplementedException(String&& message);
 
   28    NotImplementedException(
const String& message, 
const Exception& innerException);
 
   29    NotImplementedException(String&& message, Exception&& innerException);
 
   30    NotImplementedException(
const NotImplementedException& arg) = 
default;
 
   31    NotImplementedException(NotImplementedException&& arg) = 
default;
 
   32    virtual ~NotImplementedException(
void) = 
default;
 
   35    static NotImplementedException 
Create(
const char* functionName);
 
   36    static NotImplementedException 
Create(
const char* functionName, 
const Exception& innerException);
 
   42    NotImplementedException& operator=(
const NotImplementedException& arg) = 
delete;
 
   45    static const char* 
const defaultMessage;
 
   53template<
typename... Args>
 
   55    : CommonException(
ExceptionTypeId::NotImplemented, String::Format(message, args...))
 
   60inline NotImplementedException::NotImplementedException(
const String& message)
 
   61    : CommonException(ExceptionTypeId::NotImplemented, message)
 
   66inline NotImplementedException::NotImplementedException(String&& message)
 
   67    : CommonException(ExceptionTypeId::NotImplemented, 
std::move(message))
 
   72inline NotImplementedException::NotImplementedException(
const String& message, 
const Exception& innerException)
 
   73    : CommonException(ExceptionTypeId::NotImplemented, message, innerException)
 
   78inline NotImplementedException::NotImplementedException(String&& message, Exception&& innerException)
 
   79    : CommonException(ExceptionTypeId::NotImplemented, 
std::move(message), 
std::move(innerException))
 
   84inline NotImplementedException NotImplementedException::Create(
const char* functionName)
 
   86    return NotImplementedException(defaultMessage, functionName);
 
   90inline NotImplementedException NotImplementedException::Create(
const char* functionName, 
const Exception& innerException)
 
   92    return NotImplementedException(String::Format(defaultMessage, functionName), innerException);
 
   99template<> 
struct fmt::formatter<
Arp::System::Commons::NotImplementedException> : 
public fmt::ostream_formatter {};
 
This exception is thrown when an operation was not implemented yet.
Definition: NotImplementedException.hpp:17
 
NotImplementedException(const char *message, const Args &... args)
Creates an NotImplementedException with message.
Definition: NotImplementedException.hpp:68
 
std::unique_ptr< Exception > Ptr
The smart pointer type of this class.
Definition: Exception.hpp:27
 
@ Create
Creates a new file. If the file already exists, it is overwritten.
 
ExceptionTypeId
Specifies the type id of any exception derived by <see cref="CommonException".
Definition: ExceptionTypeId.hpp:15
 
Root namespace for the PLCnext API
 
Namespace of the C++ standard library