22#include <fmt/format.h>
24#include <vrs/os/Platform.h>
28#if IS_MAC_PLATFORM() || IS_IOS_PLATFORM()
31const int kPlatformUserErrorsStart = 200000;
32#elif IS_WINDOWS_PLATFORM()
33const int kPlatformUserErrorsStart = 1 << 29;
34#elif IS_LINUX_PLATFORM() || IS_ANDROID_PLATFORM()
35const int kPlatformUserErrorsStart = 1000;
37#error "unknown platform"
40const int kSimpleVRSErrorsSize = 1000;
41const int kVRSErrorsDomainSize = 100;
42const int kDomainErrorsStart = kPlatformUserErrorsStart + kSimpleVRSErrorsSize;
48 FAILURE = kPlatformUserErrorsStart,
51 VRSERROR_INTERNAL_ERROR,
68 UNSUPPORTED_DESCRIPTION_FORMAT_VERSION,
69 UNSUPPORTED_INDEX_FORMAT_VERSION,
73 REQUESTED_FILE_HANDLER_UNAVAILABLE,
74 REQUESTED_DELEGATOR_UNAVAILABLE,
75 FILE_HANDLER_MISMATCH,
77 MULTICHUNKS_NOT_SUPPORTED,
80 DISKFILE_FILE_NOT_FOUND,
81 DISKFILE_INVALID_OFFSET,
82 DISKFILE_NOT_ENOUGH_DATA,
84 DISKFILE_INVALID_STATE,
85 DISKFILE_PARTIAL_WRITE_ERROR,
100 Lz4DecompressionErrorDomain,
101 ZstdCompressionErrorDomain,
102 ZstdDecompressionErrorDomain,
111 return kDomainErrorsStart +
static_cast<int>(errorDomain) * kVRSErrorsDomainSize;
145 return domainErrorCode(errorDomain,
static_cast<int64_t
>(errorCode), errorMessage);
160int domainError(EC errorCode) {
161 const std::map<EC, const char*>& registry = getErrorCodeRegistry<EC>();
162 auto iter = registry.find(errorCode);
163 if (iter != registry.end()) {
166 std::string msg = fmt::format(
"<Unknown error code '{}'>",
static_cast<int>(errorCode));
Definition AsyncDiskFileChunk.hpp:49
constexpr int errorDomainToErrorCodeStart(ErrorDomain errorDomain)
Conversion of a error domain to an int. For internal & test purposes only.
Definition ErrorCode.h:110
ErrorDomain
Core VRS error domains.
Definition ErrorCode.h:99
ErrorCode
Enum for regular VRS errors.
Definition ErrorCode.h:45
const std::map< EC, const char * > & getErrorCodeRegistry()
string errorCodeToMessage(int errorCode)
Definition ErrorCode.cpp:103
string errorCodeToMessageWithCode(int errorCode)
Definition ErrorCode.cpp:121
int domainErrorCode(ErrorDomain errorDomain, int64_t errorCode, const char *errorMessage)
Definition ErrorCode.cpp:140