Merge pull request #2608 from facebook/docMinVer
Documented minimum version numbers
This commit is contained in:
commit
40cabd0efd
58
lib/zstd.h
58
lib/zstd.h
@ -109,7 +109,6 @@ ZSTDLIB_API const char* ZSTD_versionString(void);
|
|||||||
#define ZSTD_BLOCKSIZE_MAX (1<<ZSTD_BLOCKSIZELOG_MAX)
|
#define ZSTD_BLOCKSIZE_MAX (1<<ZSTD_BLOCKSIZELOG_MAX)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/***************************************
|
/***************************************
|
||||||
* Simple API
|
* Simple API
|
||||||
***************************************/
|
***************************************/
|
||||||
@ -166,7 +165,7 @@ ZSTDLIB_API unsigned long long ZSTD_getFrameContentSize(const void *src, size_t
|
|||||||
* @return : decompressed size of `src` frame content _if known and not empty_, 0 otherwise. */
|
* @return : decompressed size of `src` frame content _if known and not empty_, 0 otherwise. */
|
||||||
ZSTDLIB_API unsigned long long ZSTD_getDecompressedSize(const void* src, size_t srcSize);
|
ZSTDLIB_API unsigned long long ZSTD_getDecompressedSize(const void* src, size_t srcSize);
|
||||||
|
|
||||||
/*! ZSTD_findFrameCompressedSize() :
|
/*! ZSTD_findFrameCompressedSize() : Requires v1.4.0+
|
||||||
* `src` should point to the start of a ZSTD frame or skippable frame.
|
* `src` should point to the start of a ZSTD frame or skippable frame.
|
||||||
* `srcSize` must be >= first frame size
|
* `srcSize` must be >= first frame size
|
||||||
* @return : the compressed size of the first frame starting at `src`,
|
* @return : the compressed size of the first frame starting at `src`,
|
||||||
@ -180,9 +179,9 @@ ZSTDLIB_API size_t ZSTD_findFrameCompressedSize(const void* src, size_t srcSize)
|
|||||||
ZSTDLIB_API size_t ZSTD_compressBound(size_t srcSize); /*!< maximum compressed size in worst case single-pass scenario */
|
ZSTDLIB_API size_t ZSTD_compressBound(size_t srcSize); /*!< maximum compressed size in worst case single-pass scenario */
|
||||||
ZSTDLIB_API unsigned ZSTD_isError(size_t code); /*!< tells if a `size_t` function result is an error code */
|
ZSTDLIB_API unsigned ZSTD_isError(size_t code); /*!< tells if a `size_t` function result is an error code */
|
||||||
ZSTDLIB_API const char* ZSTD_getErrorName(size_t code); /*!< provides readable string from an error code */
|
ZSTDLIB_API const char* ZSTD_getErrorName(size_t code); /*!< provides readable string from an error code */
|
||||||
ZSTDLIB_API int ZSTD_minCLevel(void); /*!< minimum negative compression level allowed */
|
ZSTDLIB_API int ZSTD_minCLevel(void); /*!< minimum negative compression level allowed, requires v1.4.0+ */
|
||||||
ZSTDLIB_API int ZSTD_maxCLevel(void); /*!< maximum compression level available */
|
ZSTDLIB_API int ZSTD_maxCLevel(void); /*!< maximum compression level available */
|
||||||
ZSTDLIB_API int ZSTD_defaultCLevel(void); /*!< default compression level, specified by ZSTD_CLEVEL_DEFAULT */
|
ZSTDLIB_API int ZSTD_defaultCLevel(void); /*!< default compression level, specified by ZSTD_CLEVEL_DEFAULT, requires v1.5.0+ */
|
||||||
|
|
||||||
|
|
||||||
/***************************************
|
/***************************************
|
||||||
@ -235,9 +234,9 @@ ZSTDLIB_API size_t ZSTD_decompressDCtx(ZSTD_DCtx* dctx,
|
|||||||
const void* src, size_t srcSize);
|
const void* src, size_t srcSize);
|
||||||
|
|
||||||
|
|
||||||
/***************************************
|
/*********************************************
|
||||||
* Advanced compression API
|
* Advanced compression API (Requires v1.4.0+)
|
||||||
***************************************/
|
**********************************************/
|
||||||
|
|
||||||
/* API design :
|
/* API design :
|
||||||
* Parameters are pushed one by one into an existing context,
|
* Parameters are pushed one by one into an existing context,
|
||||||
@ -274,7 +273,7 @@ typedef enum {
|
|||||||
ZSTD_lcm_huffman = 1, /**< Always attempt Huffman compression. Uncompressed literals will still be
|
ZSTD_lcm_huffman = 1, /**< Always attempt Huffman compression. Uncompressed literals will still be
|
||||||
* emitted if Huffman compression is not profitable. */
|
* emitted if Huffman compression is not profitable. */
|
||||||
ZSTD_lcm_uncompressed = 2 /**< Always emit uncompressed literals. */
|
ZSTD_lcm_uncompressed = 2 /**< Always emit uncompressed literals. */
|
||||||
} ZSTD_literalCompressionMode_e;
|
} ZSTD_literalCompressionMode_e; /* Requires v1.5.0+ */
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
|
||||||
@ -341,7 +340,8 @@ typedef enum {
|
|||||||
* The higher the value of selected strategy, the more complex it is,
|
* The higher the value of selected strategy, the more complex it is,
|
||||||
* resulting in stronger and slower compression.
|
* resulting in stronger and slower compression.
|
||||||
* Special: value 0 means "use default strategy". */
|
* Special: value 0 means "use default strategy". */
|
||||||
ZSTD_c_literalCompressionMode=108, /* Controls how the literals are compressed (default is auto).
|
ZSTD_c_literalCompressionMode=108, /* Note : requires v1.5.0+
|
||||||
|
* Controls how the literals are compressed (default is auto).
|
||||||
* The value must be of type ZSTD_literalCompressionMode_e.
|
* The value must be of type ZSTD_literalCompressionMode_e.
|
||||||
* See ZSTD_literalCompressionMode_e enum definition for details.
|
* See ZSTD_literalCompressionMode_e enum definition for details.
|
||||||
*/
|
*/
|
||||||
@ -534,9 +534,9 @@ ZSTDLIB_API size_t ZSTD_compress2( ZSTD_CCtx* cctx,
|
|||||||
const void* src, size_t srcSize);
|
const void* src, size_t srcSize);
|
||||||
|
|
||||||
|
|
||||||
/***************************************
|
/***********************************************
|
||||||
* Advanced decompression API
|
* Advanced decompression API (Requires v1.4.0+)
|
||||||
***************************************/
|
************************************************/
|
||||||
|
|
||||||
/* The advanced API pushes parameters one by one into an existing DCtx context.
|
/* The advanced API pushes parameters one by one into an existing DCtx context.
|
||||||
* Parameters are sticky, and remain valid for all following frames
|
* Parameters are sticky, and remain valid for all following frames
|
||||||
@ -698,7 +698,7 @@ typedef enum {
|
|||||||
: note : multithreaded compression will block to flush as much output as possible. */
|
: note : multithreaded compression will block to flush as much output as possible. */
|
||||||
} ZSTD_EndDirective;
|
} ZSTD_EndDirective;
|
||||||
|
|
||||||
/*! ZSTD_compressStream2() :
|
/*! ZSTD_compressStream2() : Requires v1.4.0+
|
||||||
* Behaves about the same as ZSTD_compressStream, with additional control on end directive.
|
* Behaves about the same as ZSTD_compressStream, with additional control on end directive.
|
||||||
* - Compression parameters are pushed into CCtx before starting compression, using ZSTD_CCtx_set*()
|
* - Compression parameters are pushed into CCtx before starting compression, using ZSTD_CCtx_set*()
|
||||||
* - Compression parameters cannot be changed once compression is started (save a list of exceptions in multi-threading mode)
|
* - Compression parameters cannot be changed once compression is started (save a list of exceptions in multi-threading mode)
|
||||||
@ -744,11 +744,11 @@ ZSTDLIB_API size_t ZSTD_CStreamOutSize(void); /**< recommended size for output
|
|||||||
|
|
||||||
|
|
||||||
/* *****************************************************************************
|
/* *****************************************************************************
|
||||||
* This following is a legacy streaming API.
|
* This following is a legacy streaming API, available since v1.0+ .
|
||||||
* It can be replaced by ZSTD_CCtx_reset() and ZSTD_compressStream2().
|
* It can be replaced by ZSTD_CCtx_reset() and ZSTD_compressStream2().
|
||||||
* It is redundant, but remains fully supported.
|
* It is redundant, but remains fully supported.
|
||||||
* Advanced parameters and dictionary compression can only be used through the
|
* Streaming in combination with advanced parameters and dictionary compression
|
||||||
* new API.
|
* can only be used through the new API.
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@ -909,25 +909,25 @@ ZSTDLIB_API size_t ZSTD_decompress_usingDDict(ZSTD_DCtx* dctx,
|
|||||||
* Dictionary helper functions
|
* Dictionary helper functions
|
||||||
*******************************/
|
*******************************/
|
||||||
|
|
||||||
/*! ZSTD_getDictID_fromDict() :
|
/*! ZSTD_getDictID_fromDict() : Requires v1.4.0+
|
||||||
* Provides the dictID stored within dictionary.
|
* Provides the dictID stored within dictionary.
|
||||||
* if @return == 0, the dictionary is not conformant with Zstandard specification.
|
* if @return == 0, the dictionary is not conformant with Zstandard specification.
|
||||||
* It can still be loaded, but as a content-only dictionary. */
|
* It can still be loaded, but as a content-only dictionary. */
|
||||||
ZSTDLIB_API unsigned ZSTD_getDictID_fromDict(const void* dict, size_t dictSize);
|
ZSTDLIB_API unsigned ZSTD_getDictID_fromDict(const void* dict, size_t dictSize);
|
||||||
|
|
||||||
/*! ZSTD_getDictID_fromCDict() :
|
/*! ZSTD_getDictID_fromCDict() : Requires v1.5.0+
|
||||||
* Provides the dictID of the dictionary loaded into `cdict`.
|
* Provides the dictID of the dictionary loaded into `cdict`.
|
||||||
* If @return == 0, the dictionary is not conformant to Zstandard specification, or empty.
|
* If @return == 0, the dictionary is not conformant to Zstandard specification, or empty.
|
||||||
* Non-conformant dictionaries can still be loaded, but as content-only dictionaries. */
|
* Non-conformant dictionaries can still be loaded, but as content-only dictionaries. */
|
||||||
ZSTDLIB_API unsigned ZSTD_getDictID_fromCDict(const ZSTD_CDict* cdict);
|
ZSTDLIB_API unsigned ZSTD_getDictID_fromCDict(const ZSTD_CDict* cdict);
|
||||||
|
|
||||||
/*! ZSTD_getDictID_fromDDict() :
|
/*! ZSTD_getDictID_fromDDict() : Requires v1.4.0+
|
||||||
* Provides the dictID of the dictionary loaded into `ddict`.
|
* Provides the dictID of the dictionary loaded into `ddict`.
|
||||||
* If @return == 0, the dictionary is not conformant to Zstandard specification, or empty.
|
* If @return == 0, the dictionary is not conformant to Zstandard specification, or empty.
|
||||||
* Non-conformant dictionaries can still be loaded, but as content-only dictionaries. */
|
* Non-conformant dictionaries can still be loaded, but as content-only dictionaries. */
|
||||||
ZSTDLIB_API unsigned ZSTD_getDictID_fromDDict(const ZSTD_DDict* ddict);
|
ZSTDLIB_API unsigned ZSTD_getDictID_fromDDict(const ZSTD_DDict* ddict);
|
||||||
|
|
||||||
/*! ZSTD_getDictID_fromFrame() :
|
/*! ZSTD_getDictID_fromFrame() : Requires v1.4.0+
|
||||||
* Provides the dictID required to decompressed the frame stored within `src`.
|
* Provides the dictID required to decompressed the frame stored within `src`.
|
||||||
* If @return == 0, the dictID could not be decoded.
|
* If @return == 0, the dictID could not be decoded.
|
||||||
* This could for one of the following reasons :
|
* This could for one of the following reasons :
|
||||||
@ -941,7 +941,7 @@ ZSTDLIB_API unsigned ZSTD_getDictID_fromFrame(const void* src, size_t srcSize);
|
|||||||
|
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Advanced dictionary and prefix API
|
* Advanced dictionary and prefix API (Requires v1.4.0+)
|
||||||
*
|
*
|
||||||
* This API allows dictionaries to be used with ZSTD_compress2(),
|
* This API allows dictionaries to be used with ZSTD_compress2(),
|
||||||
* ZSTD_compressStream2(), and ZSTD_decompress(). Dictionaries are sticky, and
|
* ZSTD_compressStream2(), and ZSTD_decompress(). Dictionaries are sticky, and
|
||||||
@ -950,7 +950,7 @@ ZSTDLIB_API unsigned ZSTD_getDictID_fromFrame(const void* src, size_t srcSize);
|
|||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
/*! ZSTD_CCtx_loadDictionary() :
|
/*! ZSTD_CCtx_loadDictionary() : Requires v1.4.0+
|
||||||
* Create an internal CDict from `dict` buffer.
|
* Create an internal CDict from `dict` buffer.
|
||||||
* Decompression will have to use same dictionary.
|
* Decompression will have to use same dictionary.
|
||||||
* @result : 0, or an error code (which can be tested with ZSTD_isError()).
|
* @result : 0, or an error code (which can be tested with ZSTD_isError()).
|
||||||
@ -969,7 +969,7 @@ ZSTDLIB_API unsigned ZSTD_getDictID_fromFrame(const void* src, size_t srcSize);
|
|||||||
* to precisely select how dictionary content must be interpreted. */
|
* to precisely select how dictionary content must be interpreted. */
|
||||||
ZSTDLIB_API size_t ZSTD_CCtx_loadDictionary(ZSTD_CCtx* cctx, const void* dict, size_t dictSize);
|
ZSTDLIB_API size_t ZSTD_CCtx_loadDictionary(ZSTD_CCtx* cctx, const void* dict, size_t dictSize);
|
||||||
|
|
||||||
/*! ZSTD_CCtx_refCDict() :
|
/*! ZSTD_CCtx_refCDict() : Requires v1.4.0+
|
||||||
* Reference a prepared dictionary, to be used for all next compressed frames.
|
* Reference a prepared dictionary, to be used for all next compressed frames.
|
||||||
* Note that compression parameters are enforced from within CDict,
|
* Note that compression parameters are enforced from within CDict,
|
||||||
* and supersede any compression parameter previously set within CCtx.
|
* and supersede any compression parameter previously set within CCtx.
|
||||||
@ -983,7 +983,7 @@ ZSTDLIB_API size_t ZSTD_CCtx_loadDictionary(ZSTD_CCtx* cctx, const void* dict, s
|
|||||||
* Note 2 : CDict is just referenced, its lifetime must outlive its usage within CCtx. */
|
* Note 2 : CDict is just referenced, its lifetime must outlive its usage within CCtx. */
|
||||||
ZSTDLIB_API size_t ZSTD_CCtx_refCDict(ZSTD_CCtx* cctx, const ZSTD_CDict* cdict);
|
ZSTDLIB_API size_t ZSTD_CCtx_refCDict(ZSTD_CCtx* cctx, const ZSTD_CDict* cdict);
|
||||||
|
|
||||||
/*! ZSTD_CCtx_refPrefix() :
|
/*! ZSTD_CCtx_refPrefix() : Requires v1.4.0+
|
||||||
* Reference a prefix (single-usage dictionary) for next compressed frame.
|
* Reference a prefix (single-usage dictionary) for next compressed frame.
|
||||||
* A prefix is **only used once**. Tables are discarded at end of frame (ZSTD_e_end).
|
* A prefix is **only used once**. Tables are discarded at end of frame (ZSTD_e_end).
|
||||||
* Decompression will need same prefix to properly regenerate data.
|
* Decompression will need same prefix to properly regenerate data.
|
||||||
@ -1004,7 +1004,7 @@ ZSTDLIB_API size_t ZSTD_CCtx_refCDict(ZSTD_CCtx* cctx, const ZSTD_CDict* cdict);
|
|||||||
ZSTDLIB_API size_t ZSTD_CCtx_refPrefix(ZSTD_CCtx* cctx,
|
ZSTDLIB_API size_t ZSTD_CCtx_refPrefix(ZSTD_CCtx* cctx,
|
||||||
const void* prefix, size_t prefixSize);
|
const void* prefix, size_t prefixSize);
|
||||||
|
|
||||||
/*! ZSTD_DCtx_loadDictionary() :
|
/*! ZSTD_DCtx_loadDictionary() : Requires v1.4.0+
|
||||||
* Create an internal DDict from dict buffer,
|
* Create an internal DDict from dict buffer,
|
||||||
* to be used to decompress next frames.
|
* to be used to decompress next frames.
|
||||||
* The dictionary remains valid for all future frames, until explicitly invalidated.
|
* The dictionary remains valid for all future frames, until explicitly invalidated.
|
||||||
@ -1021,7 +1021,7 @@ ZSTDLIB_API size_t ZSTD_CCtx_refPrefix(ZSTD_CCtx* cctx,
|
|||||||
*/
|
*/
|
||||||
ZSTDLIB_API size_t ZSTD_DCtx_loadDictionary(ZSTD_DCtx* dctx, const void* dict, size_t dictSize);
|
ZSTDLIB_API size_t ZSTD_DCtx_loadDictionary(ZSTD_DCtx* dctx, const void* dict, size_t dictSize);
|
||||||
|
|
||||||
/*! ZSTD_DCtx_refDDict() :
|
/*! ZSTD_DCtx_refDDict() : Requires v1.4.0+
|
||||||
* Reference a prepared dictionary, to be used to decompress next frames.
|
* Reference a prepared dictionary, to be used to decompress next frames.
|
||||||
* The dictionary remains active for decompression of future frames using same DCtx.
|
* The dictionary remains active for decompression of future frames using same DCtx.
|
||||||
*
|
*
|
||||||
@ -1039,7 +1039,7 @@ ZSTDLIB_API size_t ZSTD_DCtx_loadDictionary(ZSTD_DCtx* dctx, const void* dict, s
|
|||||||
*/
|
*/
|
||||||
ZSTDLIB_API size_t ZSTD_DCtx_refDDict(ZSTD_DCtx* dctx, const ZSTD_DDict* ddict);
|
ZSTDLIB_API size_t ZSTD_DCtx_refDDict(ZSTD_DCtx* dctx, const ZSTD_DDict* ddict);
|
||||||
|
|
||||||
/*! ZSTD_DCtx_refPrefix() :
|
/*! ZSTD_DCtx_refPrefix() : Requires v1.4.0+
|
||||||
* Reference a prefix (single-usage dictionary) to decompress next frame.
|
* Reference a prefix (single-usage dictionary) to decompress next frame.
|
||||||
* This is the reverse operation of ZSTD_CCtx_refPrefix(),
|
* This is the reverse operation of ZSTD_CCtx_refPrefix(),
|
||||||
* and must use the same prefix as the one used during compression.
|
* and must use the same prefix as the one used during compression.
|
||||||
@ -1060,7 +1060,7 @@ ZSTDLIB_API size_t ZSTD_DCtx_refPrefix(ZSTD_DCtx* dctx,
|
|||||||
|
|
||||||
/* === Memory management === */
|
/* === Memory management === */
|
||||||
|
|
||||||
/*! ZSTD_sizeof_*() :
|
/*! ZSTD_sizeof_*() : Requires v1.4.0+
|
||||||
* These functions give the _current_ memory usage of selected object.
|
* These functions give the _current_ memory usage of selected object.
|
||||||
* Note that object memory usage can evolve (increase or decrease) over time. */
|
* Note that object memory usage can evolve (increase or decrease) over time. */
|
||||||
ZSTDLIB_API size_t ZSTD_sizeof_CCtx(const ZSTD_CCtx* cctx);
|
ZSTDLIB_API size_t ZSTD_sizeof_CCtx(const ZSTD_CCtx* cctx);
|
||||||
@ -1904,7 +1904,7 @@ ZSTDLIB_API size_t ZSTD_CCtxParams_init(ZSTD_CCtx_params* cctxParams, int compre
|
|||||||
*/
|
*/
|
||||||
ZSTDLIB_API size_t ZSTD_CCtxParams_init_advanced(ZSTD_CCtx_params* cctxParams, ZSTD_parameters params);
|
ZSTDLIB_API size_t ZSTD_CCtxParams_init_advanced(ZSTD_CCtx_params* cctxParams, ZSTD_parameters params);
|
||||||
|
|
||||||
/*! ZSTD_CCtxParams_setParameter() :
|
/*! ZSTD_CCtxParams_setParameter() : Requires v1.4.0+
|
||||||
* Similar to ZSTD_CCtx_setParameter.
|
* Similar to ZSTD_CCtx_setParameter.
|
||||||
* Set one compression parameter, selected by enum ZSTD_cParameter.
|
* Set one compression parameter, selected by enum ZSTD_cParameter.
|
||||||
* Parameters must be applied to a ZSTD_CCtx using
|
* Parameters must be applied to a ZSTD_CCtx using
|
||||||
|
Loading…
x
Reference in New Issue
Block a user