Aadhavan Srinivasan
|
dc53951408
|
Update package name in import
|
3 days ago |
Aadhavan Srinivasan
|
aef8152fc1
|
Renamed package 'greg' to 'regex'
|
3 days ago |
Aadhavan Srinivasan
|
ca8d32cd7f
|
Added more tests
|
3 days ago |
Aadhavan Srinivasan
|
368941e5c7
|
Fix out-of-bounds access in genRangeInclusive
|
3 days ago |
Aadhavan Srinivasan
|
b9da5ec08d
|
Replace use of 'genRange' with 'genRangeInclusive'
|
3 days ago |
Aadhavan Srinivasan
|
c5a43c47f0
|
Update type and method references to use qualified names
|
3 days ago |
Aadhavan Srinivasan
|
c3c3829ac9
|
Move 'genRange' function to 'cmd'
|
3 days ago |
Aadhavan Srinivasan
|
ee6bb3959c
|
Removed function that wasn't being used in 'greg', moved to 'main'
|
3 days ago |
Aadhavan Srinivasan
|
c06d81d17d
|
Updated struct field reference
|
3 days ago |
Aadhavan Srinivasan
|
1a2f1b7ca9
|
Restructured code into 'cmd' module with CLI and 'greg' module with regex library; export necessary struct fields and methods
|
3 days ago |
Aadhavan Srinivasan
|
54df6f1815
|
Added numeric range tests
|
4 days ago |
Aadhavan Srinivasan
|
bd424ceccd
|
Catch error from range2regex() and return it
|
4 days ago |
Aadhavan Srinivasan
|
e8e09dd0f9
|
Throw error instead of panicking
|
4 days ago |
Aadhavan Srinivasan
|
46f4a2ad83
|
Return error instead of panicking if the range cannot be processed
|
4 days ago |
Aadhavan Srinivasan
|
833dd269a8
|
Added more descriptive comments; throw error if non-greedy operator is used; use new definition for kleene()
|
4 days ago |
Aadhavan Srinivasan
|
ecab7cc522
|
Make kleene() throw an error if the state is not quantifiable
|
4 days ago |
Aadhavan Srinivasan
|
8b6d35c106
|
Finished adding tests from Python's test suite; removed a non-greedy operator from one of the old tests
|
4 days ago |
Aadhavan Srinivasan
|
5e6435d8a7
|
Throw error if non-greedy operator is attempted
|
4 days ago |
Aadhavan Srinivasan
|
5bb06900cc
|
Added more tests
|
5 days ago |
Aadhavan Srinivasan
|
bde153ce08
|
Changed '-t' flag to include the new RE_SINGLE_LINE flag as well
|
5 days ago |
Aadhavan Srinivasan
|
4c3c7e21c5
|
Fixed inverted Perl classes inside character classes eg. '[\D]'; added new flag for 'single-line' mode, where dot metacharacter matches newlines
|
5 days ago |
Aadhavan Srinivasan
|
61a128e27a
|
Added more tests
|
5 days ago |
Aadhavan Srinivasan
|
c700b01e80
|
Remove duplicate lines from `re_tests.py`
|
5 days ago |
Aadhavan Srinivasan
|
578959c9b3
|
Add Python's regex test suite
|
5 days ago |
Aadhavan Srinivasan
|
3918682339
|
Added more tests
|
5 days ago |
Aadhavan Srinivasan
|
d890a93775
|
Store multiline mode as a global flag
|
5 days ago |
Aadhavan Srinivasan
|
d029a171c0
|
Changed behavior of SOS and EOS assertions depending on whether multiline mode is enabled or not
|
5 days ago |
Aadhavan Srinivasan
|
74b37ff818
|
Removed unused function
|
5 days ago |
Aadhavan Srinivasan
|
7cd24959bf
|
Added case-insensitive tests (copied the normal tests, added the case-insensitive flag and swapped the case of all characters in the test string
|
5 days ago |
Aadhavan Srinivasan
|
6e309be71c
|
Moved case-insensitive stuff to thompson(); fixed case-insensitivity in character classes and ranges
|
5 days ago |
Aadhavan Srinivasan
|
c92b3d0e7c
|
Removed case-insensitive functionality from shuntingYard(); should be put in thompson() instead
|
5 days ago |
Aadhavan Srinivasan
|
94c8044eb7
|
Running all tests case-insensitive with the same match indices wasn't a good idea
|
5 days ago |
Aadhavan Srinivasan
|
4a45d1c95e
|
allCases() now takes a boolean parameter that indicates whether we are case-sensitive or not
|
5 days ago |
Aadhavan Srinivasan
|
861eb6067e
|
Apply case-insensitive flag inside character classes as well
|
5 days ago |
Aadhavan Srinivasan
|
027dfb4d6b
|
Run all tests twice - case-sensitive, then case-insensitive
|
5 days ago |
Aadhavan Srinivasan
|
932a20f641
|
Added more tests
|
5 days ago |
Aadhavan Srinivasan
|
4547ba74f0
|
Throw error if a quantifier is quantified eg. 'a**'; throw error if start of character range is greater than the end eg. '[b-a]'
|
5 days ago |
Aadhavan Srinivasan
|
125590d334
|
Replaced literal brackets with LBRACKET and RBRACKET metacharacters
|
5 days ago |
Aadhavan Srinivasan
|
e3b8eaf5f8
|
Removed unused function
|
5 days ago |
Aadhavan Srinivasan
|
20142e93c4
|
Removed some panics with error throwing; changed some comments; removed use of mustPop() in parsing Kleene star - I use pop() and then throw an error if pop() returns an error
|
5 days ago |
Aadhavan Srinivasan
|
5e3801af7c
|
Reformatted error messages according to Go guidelines
|
6 days ago |
Aadhavan Srinivasan
|
d44a25f412
|
Removed a type that I wasn't using
|
6 days ago |
Aadhavan Srinivasan
|
3f5f8fad2c
|
Removed unnecessary functions (using `staticcheck`)
|
6 days ago |
Aadhavan Srinivasan
|
e671137493
|
Changed error messages - removed capitalization and punctuation to find Go's error message guidelines
|
6 days ago |
Aadhavan Srinivasan
|
abc40bf770
|
Return an error if a POSIX charclass is specified outside of brackets
|
6 days ago |
Aadhavan Srinivasan
|
3fb9bc1446
|
Added support for POSIX character classes
|
6 days ago |
Aadhavan Srinivasan
|
ae76e2e55e
|
Added a function to generate a slice of all values (inclusive) in a range
|
6 days ago |
Aadhavan Srinivasan
|
dec6aaca93
|
Added POSIX charclass tests
|
6 days ago |
Aadhavan Srinivasan
|
43d0cbf0a0
|
Use 'CONCAT' instead of literally specifiying the rune
|
6 days ago |
Aadhavan Srinivasan
|
68a3581d93
|
Added note on PCRE backreferences
|
7 days ago |