              prefix_search=prefix_re.search,
              suffix_search=suffix_re.search,
              infix_finditer=infix_re.finditer,
              token_match=nlp.tokenizer.token_match,
          )
          nlp.tokenizer = new_tokenizer
  
      test_string = "Test c."
      # Load default language
 
</s> remove         cdef int max_length
 </s> add         cdef int max_length = 0 </s> remove             "exceptions": lambda b: data.setdefault("rules", b)
 </s> add             "exceptions": lambda b: data.setdefault("rules", b),
            "faster_heuristics": lambda b: data.setdefault("faster_heuristics", b),
            faster_heuristics=False,
              prefix_search=prefix_re.search,
              suffix_search=suffix_re.search,
              infix_finditer=infix_re.finditer,
              token_match=nlp.tokenizer.token_match,
            faster_heuristics=False,
          )
          nlp.tokenizer = new_tokenizer
  
      test_string = "Test c."
      # Load default language
keep keep keep add keep keep keep keep keep
 Add tokenizer option to allow Matcher handling for all rules (#10452)

* Add tokenizer option to allow Matcher handling for all rules

Add tokenizer option `with_faster_rules_heuristics` that determines
whether the special cases applied by the internal `Matcher` are filtered
by whether they contain affixes or space. If `True` (default), the rules
are filtered to prioritize speed over rare edge cases. If `False`, all
rules are included in the final `Matcher`-based pass over the doc.

* Reset all caches when reloading special cases

* Revert "Reset all caches when reloading special cases"

This reverts commit 4ef6bd171d00da01cbabc3bcde00088ba4bd5578.

* Initialize max_length properly

* Add new tag to API docs

* Rename to faster heuristics 
spacy/tests/serialize/test_serialize_tokenizer.py