Skip to main content

Module tac

Module tac 

Source

Functions§

tac_bytes
Reverse records separated by a single byte. Uses forward SIMD scan (memchr_iter) to collect all separator positions, then fills output buffer in reverse order with parallel copy for large data. Single write_all at the end for minimum syscall overhead.
tac_regex_separator
Reverse records using a regex separator. Uses regex::bytes for direct byte-level matching (no UTF-8 conversion needed). NOTE: GNU tac uses POSIX Basic Regular Expressions (BRE), so we convert to ERE first. Uses backward scanning to match GNU tac’s re_search behavior.
tac_string_separator
Reverse records using a multi-byte string separator. Uses SIMD-accelerated memmem for substring search + parallel reverse copy.