Commit Graph

161 Commits (93a5e24c8ded4d59bec27ec693bc30a54e28a077)
 

Author SHA1 Message Date
Aadhavan Srinivasan 76157af2b8 Wrote function to generate rune slice representing valid dot metacharacter values
Aadhavan Srinivasan 96b3009c14 Updated TODO
Aadhavan Srinivasan 444413e1f7 Added postfixNode type to represent a node in the postfix representation of the regex
Aadhavan Srinivasan 74c6a2e195 Added more functions to stateContents type, removed append because I don't think I need it
Aadhavan Srinivasan 49b84c5728 Added test cases
Aadhavan Srinivasan 3778869567 Use stateContents type to allow a state to store multiple characters
Aadhavan Srinivasan 4f2f14212c Use contains function, since the content may have multiple characters
Aadhavan Srinivasan 11073759e3 Added support for character classes (not ranges, yet); also take input from stdin instead of cmdline arg
Aadhavan Srinivasan cd680371fb Added function allEqual - checks if all given values are equal
Aadhavan Srinivasan df6efcd1f0 Unique append to match indices (ensure match indices aren't repeated
Aadhavan Srinivasan 704bec122a Added more tests
Aadhavan Srinivasan 3a7373bb2b Started working on new type to represent state contents
Aadhavan Srinivasan fe5c94b4df Use new unique append to check if unique states have been added to tempStates
Aadhavan Srinivasan 3984c54080 Added more test cases
Aadhavan Srinivasan 84c768fd5e Fixed small bug with question mark operator, wasn't adding the empty state's output
Aadhavan Srinivasan aee24644e9 Use new unique_append function signature
Aadhavan Srinivasan aee04cd8fe unique_append now returns the number of unique elements appended
Aadhavan Srinivasan ac2320b7ea Updated TODO
Aadhavan Srinivasan 7286e07858 Added question mark operator - 0 or 1
Aadhavan Srinivasan 13a57a4347 Stricter check for adding zero-length match at end of string
Aadhavan Srinivasan 4a30977d15 Added test cases
Aadhavan Srinivasan 89a43c8f41 Added test case
Aadhavan Srinivasan ae219f763a Added alternate function, removed relevant code from main; also started working on escape characters
Aadhavan Srinivasan cda0dfb0cc Match empty string if start state is kleene star
Aadhavan Srinivasan 7e7e75903d Added more tests
Aadhavan Srinivasan 95654e3e34 Take all possible 0-states (until no more left to take) before checking if we are in an acceptable position
Aadhavan Srinivasan b92912f7e4 Added test
Aadhavan Srinivasan 4781b87b90 Added comments
Aadhavan Srinivasan bf3060b672 Used 'unique append' to ensure that a transition can only contain a given state once
Aadhavan Srinivasan 50e86b5db4 Added 'unique append' function, to ensure that elements in slice are unique
Aadhavan Srinivasan b1e2d7147e Added tests
Aadhavan Srinivasan b327143fa2 Added function for concatenation and kleene star
Aadhavan Srinivasan c9fdf5aa6c Restored old behavior with end-of-string - new one didn't seem to work well
Aadhavan Srinivasan 956bdbdcb6 Added test case
Aadhavan Srinivasan 761a5ad052 Added functions for concatenation and kleene star creation, removed relevant code from main
Aadhavan Srinivasan 916168dd42 Updated TODO
Aadhavan Srinivasan cd2b800b04 Fixed greediness of kleene star
Aadhavan Srinivasan d1205c781c Added 'mustPop' function which panics if slice is empty
Aadhavan Srinivasan 5ee427230c Replaced 'pop' with 'mustPop' which panics on error
Aadhavan Srinivasan 3f2b4716f1 Added more test cases
Aadhavan Srinivasan 91128c218e Updated TODO
Aadhavan Srinivasan d0e812a730 Return error if stack is empty
Aadhavan Srinivasan 273a03e3cf Added more test cases
Aadhavan Srinivasan 935759ed9f Added testing file
Aadhavan Srinivasan db7d946c5c Updated todo
Aadhavan Srinivasan 139c88dd58 Started working on '+' operator
Aadhavan Srinivasan c894ee4c0d Renamed match function to 'findAllMatches', to better represent what it does
Aadhavan Srinivasan ce156c4405 Fixed kleene star matching at end of string - failed test a* and ppppppppaaaaaaaa
Aadhavan Srinivasan 9d786997df Initial support for multiple matching
Aadhavan Srinivasan 60b798d904 Working on multiple matching