Commit Graph

350 Commits (1fd48ae6143e57e829e7cb93608356890c9c8606)
 

Author SHA1 Message Date
Aadhavan Srinivasan 1fd48ae614 Store the current string pointer as a 'thread variable' (allows us to simulate backtracking)
Aadhavan Srinivasan 09812956ac Disable all optimizations
Aadhavan Srinivasan fbc9dfcc95 Trying something out; we'll see if it works
Aadhavan Srinivasan bc32e0cb76 Started working on converting to PCRE matching rules (prefer left branch of alternation)
Aadhavan Srinivasan ad0f7d0178 Added new state fields to tell if a state is a question or alternation
Aadhavan Srinivasan 4e597f8eb1 Implemented a priority-queue to use while matching
Aadhavan Srinivasan ef476e8875 Reverse the order of the numeric range before adding it, to maintain compatibility with PCRE matching rules (even though I don't implement them, if I do in the future)
Aadhavan Srinivasan 7e6b02632f Added more tests; commented out tests that I am failing
Aadhavan Srinivasan f94e3f2e71 Added comments
Aadhavan Srinivasan b129d83c3f Added function to reset threads
Aadhavan Srinivasan 43aa7b5876 Updated documentation
Aadhavan Srinivasan 9a3bfca313 Renamed unique_append to uniqueAppend
Aadhavan Srinivasan b6ab54f6dd Reset threads when findAllSubmatchHelper is called
Aadhavan Srinivasan 6a96c98d04 Fixed bug where the regex '(()|.)(b)' wouldn't compile
Aadhavan Srinivasan 3cfc2a6854 Updated Makefile
Aadhavan Srinivasan 5d7a02e796 Added gcflags to go build
Aadhavan Srinivasan a46d2f4546 Updated comments
Aadhavan Srinivasan c88ebd1aa5 Added comments explaining what a Match is
Aadhavan Srinivasan fd102292c6 Added example for FindSubmatch
Aadhavan Srinivasan 6d692d0dfc Rename Group.toString() to Group.String()
Aadhavan Srinivasan 7c4538a259 Added 'example' file that contains testable examples
Aadhavan Srinivasan 2a9ae0b68a Wrote test for 'FindSubmatch'
Aadhavan Srinivasan 783ae2ad10 Updated call to 'isValid' with call to 'IsValid'
Aadhavan Srinivasan b5e6bc112c Wrote 'reg.FindSubmatch()' which returns the leftmost match with submatches, renamed 'isValid' to 'IsValid' to export it, renamed 'ToString' to 'String'
Aadhavan Srinivasan 206fea34cd Added function to return the number of subexpressions in the group
Aadhavan Srinivasan fcdb23524a Added more documentation
Aadhavan Srinivasan ac936659b6 Updated documentation
Aadhavan Srinivasan e6dba9fdcf Updated documentation
Aadhavan Srinivasan 30779a446b Updated documentation
Aadhavan Srinivasan f629a0f08f Added 'mustCompile' which panicks if there is an error compiling
Aadhavan Srinivasan 6869cd00a2 Return error instead of nil when 'Find' fails
Aadhavan Srinivasan 02bc8f30a2 Added test for 'Find'
Aadhavan Srinivasan ac05bceda3 Use method instead of function
Aadhavan Srinivasan 037ac75ea6 Wrote new method to return 0-group of leftmost match; reorganized some functions for better clarity; made 'FindNthMatch' a method
Aadhavan Srinivasan e9d4e857cf Run 'TestFindAllStrings' since that function has been implemented
Aadhavan Srinivasan b685d2fd5f Renamed 'findAllMatchesHelper' to 'findAllSubmatchHelper'
Aadhavan Srinivasan 8eda5055ff Replaced call to 'FindAllMatches' with call to 'FindAll' or 'FindAllSubmatch' depending on whether I need submatches
Aadhavan Srinivasan 45b6566b2c Replaced function call with method call
Aadhavan Srinivasan e22822e619 Renamed 'FindAllMatches' to 'FindAll' and made it a method; made it return a slice of 0-groups; the functionality of 'FindAllMatches' is now in 'FindAllSubmatch'
Aadhavan Srinivasan 692de2a32b Added lookarounds and numeric ranges to documentation
Aadhavan Srinivasan 0d19664044 Cleared up some comments, wrote a skeleton for FindAllString
Aadhavan Srinivasan 1bfb09b6c7 Made 'FindString' a method of 'Reg'
Aadhavan Srinivasan b0b8bf23af Updated documentation
Aadhavan Srinivasan 00570f07fe Wrote documentation on syntax
Aadhavan Srinivasan 7431b1a7b2 Changed \Z to \z to fit with Go's naming
Aadhavan Srinivasan ee51e39d59 Added support for start-of-input (\A) and end-of-input (\Z) assertions
Aadhavan Srinivasan db7c884b83 Added test for start-of-input and end-of-input assertion
Aadhavan Srinivasan c3059fe899 Return a new error instead of rethrowing a non-existent error
Aadhavan Srinivasan 4f577592ba Added rule to run tests
Aadhavan Srinivasan b734d61a03 Throw error if \B is used in character class