Lines Matching refs:shift
2850 SHIFT_TAB *shift; /* table mapping hash to allowed shift */ member
2870 …ne void php_strtr_populate_shift(PATNREPL *patterns, int patnum, int B, STRLEN m, SHIFT_TAB *shift) argument
2878 shift->entries[i] = max_shift;
2882 HASH h = php_strtr_hash(&S(&patterns[i].pat)[j], B) & shift->table_mask;
2884 shift->entries[h] = MIN(shift->entries[h], m - j - B);
3004 res->shift = safe_emalloc(SHIFT_TAB_SIZE, sizeof(*res->shift->entries), sizeof(*res->shift));
3005 res->shift->table_mask = SHIFT_TAB_SIZE - 1;
3006 php_strtr_populate_shift(patterns, patnum, B, res->m, res->shift);
3059 efree(d->shift);
3076 HASH h = php_strtr_hash(&S(text)[pos + d->m - d->B], d->B) & d->shift->table_mask;
3077 STRLEN shift = d->shift->entries[h]; local
3079 if (shift > 0) {
3080 pos += shift;