137ea3c746cac224092a6aa9fc89b64564652db3
I made findAllMatchesHelper a non-recursive function. It now only returns the first match it finds in the string (so I should probably rename it). These indices are collected by findAllMatches and pruned (to remove overlaps). The overlap function has also been rewritten, to make it (I believe) less than O(n^2). I also used the uniq_arr type to make checking for uniqueness O(1) instaed of O(n) (as it was with unique_append()). This has resulted in massive performance gains. There's been a lot of changes here, and I probably haven't documented all of them.
Description
An NFA-based regex engine with a library and command-line tool.
Languages
Go
75.7%
Python
24.2%
Makefile
0.1%