Electroneum
wallet_errors.h File Reference
#include <stdexcept>
#include <system_error>
#include <string>
#include <vector>
#include "cryptonote_basic/cryptonote_format_utils.h"
#include "cryptonote_core/cryptonote_tx_utils.h"
#include "rpc/core_rpc_server_commands_defs.h"
#include "include_base_utils.h"
Include dependency graph for wallet_errors.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tools::error::wallet_error_base< Base >
 
struct  tools::error::failed_rpc_request< Base, msg_index >
 
struct  tools::error::wallet_internal_error
 
struct  tools::error::unexpected_txin_type
 
struct  tools::error::unexpected_txout_type
 
struct  tools::error::wallet_not_initialized
 
struct  tools::error::multisig_export_needed
 
struct  tools::error::multisig_import_needed
 
struct  tools::error::password_needed
 
struct  tools::error::password_entry_failed
 
struct  tools::error::file_error_base< msg_index >
 
struct  tools::error::invalid_password
 
struct  tools::error::invalid_priority
 
struct  tools::error::invalid_multisig_seed
 
struct  tools::error::invalid_pregenerated_random
 
struct  tools::error::refresh_error
 
struct  tools::error::index_outofbound
 
struct  tools::error::account_index_outofbound
 
struct  tools::error::address_index_outofbound
 
struct  tools::error::acc_outs_lookup_error
 
struct  tools::error::block_parse_error
 
struct  tools::error::tx_parse_error
 
struct  tools::error::get_tx_pool_error
 
struct  tools::error::out_of_hashchain_bounds_error
 
struct  tools::error::signature_check_failed
 
struct  tools::error::transfer_error
 
struct  tools::error::not_enough_unlocked_etn
 
struct  tools::error::not_enough_etn
 
struct  tools::error::tx_not_possible
 
struct  tools::error::not_enough_outs_to_mix
 
struct  tools::error::tx_not_constructed
 
struct  tools::error::tx_rejected
 
struct  tools::error::tx_sum_overflow
 
struct  tools::error::tx_too_big
 
struct  tools::error::zero_destination
 
struct  tools::error::wallet_rpc_error
 
struct  tools::error::wallet_generic_rpc_error
 
struct  tools::error::daemon_busy
 
struct  tools::error::no_connection_to_daemon
 
struct  tools::error::is_key_image_spent_error
 
struct  tools::error::is_public_output_spent_error
 
struct  tools::error::get_histogram_error
 
struct  tools::error::get_output_distribution
 
struct  tools::error::wallet_files_doesnt_correspond
 
struct  tools::error::mms_error
 
struct  tools::error::no_connection_to_bitmessage
 
struct  tools::error::bitmessage_api_error
 

Namespaces

 tools
 Various Tools.
 
 tools::error
 

Macros

#define STRINGIZE_DETAIL(x)   #x
 
#define STRINGIZE(x)   STRINGIZE_DETAIL(x)
 
#define THROW_WALLET_EXCEPTION(err_type, ...)
 
#define THROW_WALLET_EXCEPTION_IF(cond, err_type, ...)
 

Typedefs

typedef wallet_error_base< std::logic_error > tools::error::wallet_logic_error
 
typedef wallet_error_base< std::runtime_error > tools::error::wallet_runtime_error
 
typedef file_error_base< file_exists_message_index > tools::error::file_exists
 
typedef file_error_base< file_not_found_message_index > tools::error::file_not_found
 
typedef file_error_base< file_read_error_message_index > tools::error::file_read_error
 
typedef file_error_base< file_save_error_message_index > tools::error::file_save_error
 
typedef failed_rpc_request< refresh_error, get_blocks_error_message_index > tools::error::get_blocks_error
 
typedef failed_rpc_request< refresh_error, get_hashes_error_message_index > tools::error::get_hashes_error
 
typedef failed_rpc_request< refresh_error, get_out_indices_error_message_index > tools::error::get_out_indices_error
 
typedef failed_rpc_request< transfer_error, get_outs_error_message_index > tools::error::get_outs_error
 

Enumerations

enum  tools::error::failed_rpc_request_message_indices { tools::error::get_blocks_error_message_index, tools::error::get_hashes_error_message_index, tools::error::get_out_indices_error_message_index, tools::error::get_outs_error_message_index }
 
enum  tools::error::file_error_message_indices { tools::error::file_exists_message_index, tools::error::file_not_found_message_index, tools::error::file_read_error_message_index, tools::error::file_save_error_message_index }
 

Functions

template<typename TException , typename... TArgs>
void tools::error::throw_wallet_ex (std::string &&loc, const TArgs &... args)
 

Variables

const char *const tools::error::failed_rpc_request_messages []
 
const char *const tools::error::file_error_messages []
 

Macro Definition Documentation

◆ STRINGIZE

#define STRINGIZE (   x)    STRINGIZE_DETAIL(x)

Definition at line 938 of file wallet_errors.h.

◆ STRINGIZE_DETAIL

#define STRINGIZE_DETAIL (   x)    #x

Definition at line 937 of file wallet_errors.h.

◆ THROW_WALLET_EXCEPTION

#define THROW_WALLET_EXCEPTION (   err_type,
  ... 
)
Value:
do { \
LOG_ERROR("THROW EXCEPTION: " << #err_type); \
tools::error::throw_wallet_ex<err_type>(std::string(__FILE__ ":" STRINGIZE(__LINE__)), ## __VA_ARGS__); \
} while(0)
::std::string string
Definition: gtest-port.h:1097
#define STRINGIZE(x)

Definition at line 940 of file wallet_errors.h.

◆ THROW_WALLET_EXCEPTION_IF

#define THROW_WALLET_EXCEPTION_IF (   cond,
  err_type,
  ... 
)
Value:
if (cond) \
{ \
LOG_ERROR(#cond << ". THROW EXCEPTION: " << #err_type); \
tools::error::throw_wallet_ex<err_type>(std::string(__FILE__ ":" STRINGIZE(__LINE__)), ## __VA_ARGS__); \
}
::std::string string
Definition: gtest-port.h:1097
#define STRINGIZE(x)

Definition at line 946 of file wallet_errors.h.