AxlFind — Byte-Substring Search Engine ====================================== See :doc:`data` for an overview of all data modules. A Boyer-Moore-Horspool byte-substring search (with case-insensitive and whole-word variants, forward and backward) that runs over an abstract random-access byte source — an ``AxlByteReader``. The same engine drives a flat memory block (the built-in ``AxlMemReader``), a :doc:`AxlTextBuffer ` (gap buffer), and a :doc:`AxlPieceTree ` (out-of-core piece table); the ``axl_text_buffer_find`` / ``axl_piece_tree_find`` wrappers build the appropriate reader and call ``axl_find_in_source``. The reader pulls overlapping windows so a match straddling the source's internal boundaries (a piece boundary, the gap) is never missed; a contiguous source that supplies the optional ``peek`` is scanned in place with no copy. A successful find reports an ``AxlMatch`` (start + length); length is carried explicitly so the result shape already fits variable-length matchers. Header: ```` API Reference ------------- .. doxygenfile:: axl-find.h