Fabcoin Core  0.16.2
P2P Digital Currency
Classes | Namespaces | Macros | Typedefs | Functions
Exceptions.h File Reference
#include <exception>
#include <string>
#include <boost/exception/exception.hpp>
#include <boost/exception/info.hpp>
#include <boost/exception/info_tuple.hpp>
#include <boost/exception/diagnostic_information.hpp>
#include <boost/throw_exception.hpp>
#include <boost/tuple/tuple.hpp>
#include "CommonData.h"
#include "FixedHash.h"
Include dependency graph for Exceptions.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  dev::Exception
 Base class for all exceptions. More...
 
struct  dev::RLPException
 Base class for all RLP exceptions. More...
 
struct  dev::BadRoot
 
struct  dev::InterfaceNotSupported
 
struct  dev::ExternalFunctionFailure
 

Namespaces

 dev
 Adapted from code found on http://stackoverflow.com/questions/180947/base64-decode-snippet-in-c Originally by RenĂ© Nyffenegger.
 

Macros

#define DEV_SIMPLE_EXCEPTION(X)   struct X: virtual Exception { const char* what() const noexcept override { return #X; } }
 
#define DEV_SIMPLE_EXCEPTION_RLP(X)   struct X: virtual RLPException { const char* what() const noexcept override { return #X; } }
 

Typedefs

using dev::errinfo_invalidSymbol = boost::error_info< struct tag_invalidSymbol, char >
 
using dev::errinfo_wrongAddress = boost::error_info< struct tag_address, std::string >
 
using dev::errinfo_required = boost::error_info< struct tag_required, bigint >
 
using dev::errinfo_got = boost::error_info< struct tag_got, bigint >
 
using dev::errinfo_min = boost::error_info< struct tag_min, bigint >
 
using dev::errinfo_max = boost::error_info< struct tag_max, bigint >
 
using dev::RequirementError = boost::tuple< errinfo_required, errinfo_got >
 
using dev::errinfo_hash256 = boost::error_info< struct tag_hash, h256 >
 
using dev::errinfo_required_h256 = boost::error_info< struct tag_required_h256, h256 >
 
using dev::errinfo_got_h256 = boost::error_info< struct tag_get_h256, h256 >
 
using dev::Hash256RequirementError = boost::tuple< errinfo_required_h256, errinfo_got_h256 >
 
using dev::errinfo_extraData = boost::error_info< struct tag_extraData, bytes >
 

Functions

 dev::DEV_SIMPLE_EXCEPTION_RLP (BadCast)
 
 dev::DEV_SIMPLE_EXCEPTION_RLP (BadRLP)
 
 dev::DEV_SIMPLE_EXCEPTION_RLP (OversizeRLP)
 
 dev::DEV_SIMPLE_EXCEPTION_RLP (UndersizeRLP)
 
 dev::DEV_SIMPLE_EXCEPTION (BadHexCharacter)
 
 dev::DEV_SIMPLE_EXCEPTION (NoNetworking)
 
 dev::DEV_SIMPLE_EXCEPTION (NoUPnPDevice)
 
 dev::DEV_SIMPLE_EXCEPTION (RootNotFound)
 
 dev::DEV_SIMPLE_EXCEPTION (FileError)
 
 dev::DEV_SIMPLE_EXCEPTION (Overflow)
 
 dev::DEV_SIMPLE_EXCEPTION (FailedInvariant)
 
 dev::DEV_SIMPLE_EXCEPTION (ValueTooLarge)
 

Macro Definition Documentation

#define DEV_SIMPLE_EXCEPTION (   X)    struct X: virtual Exception { const char* what() const noexcept override { return #X; } }

Definition at line 48 of file Exceptions.h.

#define DEV_SIMPLE_EXCEPTION_RLP (   X)    struct X: virtual RLPException { const char* what() const noexcept override { return #X; } }

Definition at line 52 of file Exceptions.h.