函数逻辑报告 |
Source Code:lib\zstd\decompress.c |
Create Date:2022-07-27 08:05:06 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:ZSTD_execSequenceLong
函数原型:size_t ZSTD_execSequenceLong(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr, const BYTE *const litLimit, const BYTE *const base, const BYTE *const vBase, const BYTE *const dictEnd)
返回类型:size_t
参数:
类型 | 参数 | 名称 |
---|---|---|
BYTE * | op | |
BYTE *const | oend | |
seq_t | sequence | |
const BYTE ** | litPtr | |
const BYTE *const | litLimit | |
const BYTE *const | base | |
const BYTE *const | vBase | |
const BYTE *const | dictEnd |
1268 | oMatchEnd等于op加sequenceLength |
1269 | oend_w等于oend减! ZSTD_wildcopy() :* custom version of memcpy(), can copy up to 7 bytes too many (8 bytes if length==0) |
1274 | 如果oMatchEnd大于oend则返回:-***************************************** Error codes handling(dstSize_tooSmall) |
1276 | 如果iLitEnd大于litLimit则返回:-***************************************** Error codes handling(corruption_detected) |
1278 | 如果oLitEnd大于oend_w则返回:ZSTD_execSequenceLast7(op, oend, sequence, litPtr, litLimit, base, vBase, dictEnd) |
1283 | 如果litLength大于8则ZSTD_wildcopy(op + 8, ( * litPtr) + 8, litLength - 8) |
1292 | 如果offset大于oLitEnd减vBase则返回:-***************************************** Error codes handling(corruption_detected) |
1294 | 如果match加matchLength小于等于dictEnd则 |
1296 | 返回:sequenceLength |
1303 | matchLength减等于length1 |
1305 | 如果op大于oend_w或matchLength小于MINMATCH则 |
1309 | 返回:sequenceLength |
1316 | 如果offset小于8则 |
1318 | static const U32 dec32table[] = {0, 1, 2, 1, 4, 4, 4, 4} |
1319 | static const int dec64table[] = {8, 8, 8, 7, 8, 9, 10, 11} |
1320 | sub2等于dec64table[offset] |
1325 | match加等于dec32table[offset] |
1328 | 否则 |
1331 | op加等于8 |
1332 | match加等于8 |
1342 | 否则 |
1343 | ZSTD_wildcopy(op, match, (ptrdiff_t)matchLength - 8) |
1345 | 返回:sequenceLength |
名称 | 描述 |
---|---|
ZSTD_decompressSequencesLong |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |