zstd_errors.h
93 lines
| 3.7 KiB
| text/x-c
|
CLexer
Gregory Szorc
|
r37513 | /* | ||
Gregory Szorc
|
r30434 | * Copyright (c) 2016-present, Yann Collet, Facebook, Inc. | ||
* All rights reserved. | ||||
* | ||||
Gregory Szorc
|
r37513 | * This source code is licensed under both the BSD-style license (found in the | ||
* LICENSE file in the root directory of this source tree) and the GPLv2 (found | ||||
* in the COPYING file in the root directory of this source tree). | ||||
* You may select, at your option, one of the above-listed licenses. | ||||
Gregory Szorc
|
r30434 | */ | ||
#ifndef ZSTD_ERRORS_H_398273423 | ||||
#define ZSTD_ERRORS_H_398273423 | ||||
#if defined (__cplusplus) | ||||
extern "C" { | ||||
#endif | ||||
/*===== dependency =====*/ | ||||
#include <stddef.h> /* size_t */ | ||||
Gregory Szorc
|
r30895 | /* ===== ZSTDERRORLIB_API : control library symbols visibility ===== */ | ||
Gregory Szorc
|
r37513 | #ifndef ZSTDERRORLIB_VISIBILITY | ||
# if defined(__GNUC__) && (__GNUC__ >= 4) | ||||
# define ZSTDERRORLIB_VISIBILITY __attribute__ ((visibility ("default"))) | ||||
# else | ||||
# define ZSTDERRORLIB_VISIBILITY | ||||
# endif | ||||
Gregory Szorc
|
r30895 | #endif | ||
#if defined(ZSTD_DLL_EXPORT) && (ZSTD_DLL_EXPORT==1) | ||||
# define ZSTDERRORLIB_API __declspec(dllexport) ZSTDERRORLIB_VISIBILITY | ||||
#elif defined(ZSTD_DLL_IMPORT) && (ZSTD_DLL_IMPORT==1) | ||||
# define ZSTDERRORLIB_API __declspec(dllimport) ZSTDERRORLIB_VISIBILITY /* It isn't required but allows to generate better code, saving a function pointer load from the IAT and an indirect jump.*/ | ||||
#else | ||||
# define ZSTDERRORLIB_API ZSTDERRORLIB_VISIBILITY | ||||
#endif | ||||
Gregory Szorc
|
r37513 | /*-********************************************* | ||
* Error codes list | ||||
*-********************************************* | ||||
* Error codes _values_ are pinned down since v1.3.1 only. | ||||
* Therefore, don't rely on values if you may link to any version < v1.3.1. | ||||
* | ||||
* Only values < 100 are considered stable. | ||||
* | ||||
* note 1 : this API shall be used with static linking only. | ||||
* dynamic linking is not yet officially supported. | ||||
* note 2 : Prefer relying on the enum than on its value whenever possible | ||||
* This is the only supported way to use the error list < v1.3.1 | ||||
* note 3 : ZSTD_isError() is always correct, whatever the library version. | ||||
**********************************************/ | ||||
Gregory Szorc
|
r30434 | typedef enum { | ||
Gregory Szorc
|
r37513 | ZSTD_error_no_error = 0, | ||
ZSTD_error_GENERIC = 1, | ||||
ZSTD_error_prefix_unknown = 10, | ||||
ZSTD_error_version_unsupported = 12, | ||||
ZSTD_error_frameParameter_unsupported = 14, | ||||
ZSTD_error_frameParameter_windowTooLarge = 16, | ||||
ZSTD_error_corruption_detected = 20, | ||||
ZSTD_error_checksum_wrong = 22, | ||||
ZSTD_error_dictionary_corrupted = 30, | ||||
ZSTD_error_dictionary_wrong = 32, | ||||
ZSTD_error_dictionaryCreation_failed = 34, | ||||
ZSTD_error_parameter_unsupported = 40, | ||||
ZSTD_error_parameter_outOfBound = 42, | ||||
ZSTD_error_tableLog_tooLarge = 44, | ||||
ZSTD_error_maxSymbolValue_tooLarge = 46, | ||||
ZSTD_error_maxSymbolValue_tooSmall = 48, | ||||
ZSTD_error_stage_wrong = 60, | ||||
ZSTD_error_init_missing = 62, | ||||
ZSTD_error_memory_allocation = 64, | ||||
ZSTD_error_workSpace_tooSmall= 66, | ||||
ZSTD_error_dstSize_tooSmall = 70, | ||||
ZSTD_error_srcSize_wrong = 72, | ||||
Gregory Szorc
|
r42237 | ZSTD_error_dstBuffer_null = 74, | ||
Gregory Szorc
|
r37513 | /* following error codes are __NOT STABLE__, they can be removed or changed in future versions */ | ||
ZSTD_error_frameIndex_tooLarge = 100, | ||||
ZSTD_error_seekableIO = 102, | ||||
ZSTD_error_maxCode = 120 /* never EVER use this value directly, it can change in future versions! Use ZSTD_isError() instead */ | ||||
Gregory Szorc
|
r30434 | } ZSTD_ErrorCode; | ||
/*! ZSTD_getErrorCode() : | ||||
convert a `size_t` function result into a `ZSTD_ErrorCode` enum type, | ||||
Gregory Szorc
|
r37513 | which can be used to compare with enum list published above */ | ||
Gregory Szorc
|
r30895 | ZSTDERRORLIB_API ZSTD_ErrorCode ZSTD_getErrorCode(size_t functionResult); | ||
Gregory Szorc
|
r37513 | ZSTDERRORLIB_API const char* ZSTD_getErrorString(ZSTD_ErrorCode code); /**< Same as ZSTD_getErrorName, but using a `ZSTD_ErrorCode` enum argument */ | ||
Gregory Szorc
|
r30434 | |||
#if defined (__cplusplus) | ||||
} | ||||
#endif | ||||
#endif /* ZSTD_ERRORS_H_398273423 */ | ||||