Filter FASTA/FASTQ records from input (a file path, or "-" for
stdin) into out. Sequence search (-s/-d/-R) buffers records and
matches them across a rayon pool since revcomp + regex/substring search
scale with sequence length; ID/name search stays a single streaming
pass — it’s O(1) per record and buffering would only add overhead.
Load patterns from a plain-text file, one per line. Trailing \r\n/\n
is stripped; blank lines are skipped (matches seqkit’s breader
default line reader plus its own empty-line skip in grep.go).