An NFA-based regex engine with a library and command-line tool.
 
 
 
Go to file
Aadhavan Srinivasan 1a1a8f4f9c Moved flag-checking after flag.Parse()
.gitignore Added gitignore
Makefile Disable compile-time optimization
go.mod Updated go.mod
go.sum Print matched content in color
main.go Moved flag-checking after flag.Parse()
matching.go Wrote toString function for MatchIndex
misc.go Replaced isAlphaNum() with isNormalChar(), which returns true if the character isn't special (also returns true for unicode characters, which the previous function didn't
nfa.go Added field to denote all characters which an 'allChars' node _shouldn't_ match (useful for invertinc character classes
postfixNode.go Added fields to denote all the characters that an 'allChars' postfixNode _shouldn't_ represent (useful for inverting character classes)
re_test.go Added unicode tests
sliceQueue.go Added 'mustPop' function which panics if slice is empty
stateContents.go Got rid of function that I don't need anymore
todo.txt Updated TODO
unique_array.go Got rid of list for uniq_arr (O(n) deletion) and instead have separate method to create list (O(n) list creation)