Go to the SVN repository for this file.
71 #if (WSIZE<<1) > (1<<BITS) 72 # error: cannot overlay Nlmzip_window with tab_suffix and Nlmzip_prev with tab_prefix0 74 #if HASH_BITS > BITS-1 75 # error: cannot overlay head with tab_prefix1 79 #define HASH_SIZE (Uint4)(1<<HASH_BITS) 80 #define HASH_MASK (HASH_SIZE-1) 81 #define WMASK (WSIZE-1) 99 #define H_SHIFT ((HASH_BITS+MIN_MATCH-1)/MIN_MATCH) 106 #define max_insert_length max_lazy_match 116 #define UPDATE_HASH(h,c) (h = (((h)<<H_SHIFT) ^ (c)) & HASH_MASK) 126 #define INSERT_STRING(s, match_head) \ 127 (UPDATE_HASH(ins_h, Nlmzip_window[(s) + MIN_MATCH-1]), \ 128 Nlmzip_prev[(s) & WMASK] = match_head = head[ins_h], \ 135 #define FLUSH_BLOCK(eof) \ 136 Nlmzip_flush_block(Nlmzip_block_start >= 0L \ 137 ? (char*)&Nlmzip_window[(Uint4)Nlmzip_block_start] \ 138 : (char*)NULL,(Int4)Nlmzip_strstart-Nlmzip_block_start,(eof)) 148 typedef unsigned short Pos;
218{32, 128, 258, 1024},
258 uchscan_end1 = scan[best_len-1];
259 uchscan_end = scan[best_len];
278 if(
match[best_len] != scan_end ||
279 match[best_len-1] != scan_end1 ||
281*++
match!= scan[1])
continue;
299&& *++scan == *++
match&& *++scan == *++
match 300&& *++scan == *++
match&& *++scan == *++
match 301&& *++scan == *++
match&& *++scan == *++
match 308 if(
len> best_len ) {
314scan_end1 = scan[best_len-1];
315scan_end = scan[best_len];
318&& --chain_length != 0 );
349 if( more == (
Uint4)~0 ) {
403 Uint4match_length = 0;
451}
while( --match_length != 0 );
500 if( pack_level < 1 || pack_level > 9 ) {
501 URCOMPRERR(
"Invalid compression Nlmzip_level");
516 if( pack_level == 1 ) {
518}
else if( pack_level == 9 ) {
566 intmatch_available = 0;
585 if( hash_head !=
NIL 644}
else if( match_available ) {
674 if( match_available ) {
unsigned short Nlmzip_prev[1L<< 16]
unsigned char Nlmzip_window[2L *0x8000]
int Nlmzip_ReadData(unsigned char *pData, int iSize)
static ulg deflate_fast(void)
#define max_insert_length
static config configuration_table[10]
#define INSERT_STRING(s, match_head)
static int longest_match(IPos cur_match)
#define UPDATE_HASH(h, c)
static Uint4 max_chain_length
static Uint4 max_lazy_match
void Nlmzip_lm_init(int pack_level, ush *flags)
static void fill_window(void)
int Nlmzip_ct_tally(int, int)
int32_t Int4
4-byte (32-bit) signed integer
uint32_t Uint4
4-byte (32-bit) unsigned integer
unsigned int
A callback function used to compare two keys in a database.
static int match(PCRE2_SPTR start_eptr, PCRE2_SPTR start_ecode, uint16_t top_bracket, PCRE2_SIZE frame_size, pcre2_match_data *match_data, match_block *mb)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4