|
97529fdd2b
|
Write some matching benchmarks
|
2024-11-10 15:22:28 +00:00 |
|
|
e4d3b08bf2
|
Create benchmarking library
|
2024-11-10 15:22:28 +00:00 |
|
|
15a6195bf0
|
Use entr's -c flag in script
|
2024-11-10 15:17:00 +00:00 |
|
|
b7737fba39
|
Tweak README
|
2024-11-03 13:20:26 +00:00 |
|
|
dad687216b
|
Surround input regex with .*( ).* in demo
|
2024-11-03 12:31:06 +00:00 |
|
|
656726a8c1
|
Move regex_t into parse.h and rename to parse_tree_t
|
2024-11-03 12:23:58 +00:00 |
|
|
1f248ad4cd
|
Remove desugaring step
|
2024-11-03 12:16:52 +00:00 |
|
|
e283fd2c52
|
Support + and ? in construct_nfa()
|
2024-11-03 12:16:38 +00:00 |
|
|
1fea81b74b
|
Remove wildcard assert from desugar
|
2024-11-03 12:06:27 +00:00 |
|
|
77e1a77e02
|
Support wildcards in construct
|
2024-11-03 11:59:56 +00:00 |
|
|
892ff89a66
|
Add integration test using negated class
|
2024-11-03 11:55:05 +00:00 |
|
|
3c89cc4e99
|
Remove class desugaring
|
2024-11-03 11:55:05 +00:00 |
|
|
38b5b48289
|
Support classes in construct step
|
2024-11-03 11:55:05 +00:00 |
|
|
3c4146468e
|
Reorder header includes in compile.c
|
2024-11-03 11:54:56 +00:00 |
|
|
f95de25842
|
Turn off extensions in set_default_target_options
|
2024-11-02 23:47:09 +00:00 |
|
|
d6d5951b95
|
Fix allocation issue in FSA module
|
2024-11-02 23:15:27 +00:00 |
|
|
232295fff4
|
Fix bug in table growing routine
|
2024-11-02 23:14:59 +00:00 |
|
|
34fee99232
|
Fix bug in construct_nfa
Intermediate final states were being left in by add_fsa(); we always
want to mark the added FSA's final state as non-final.
|
2024-11-02 23:12:23 +00:00 |
|
|
074b174d0f
|
Create some integration tests
|
2024-11-02 17:35:04 +00:00 |
|
|
5dbcaaaf40
|
Add ASSERT_ACCEPTS and ASSERT_REJECTS testing macros
|
2024-11-02 17:24:40 +00:00 |
|
|
c6f0cf6381
|
Recurse on subexpression when desugaring
|
2024-11-02 17:24:40 +00:00 |
|
|
c935279def
|
Make demo program
|
2024-11-02 17:24:39 +00:00 |
|
|
18271a2988
|
Create compile module combining passes together
|
2024-11-02 16:23:44 +00:00 |
|
|
018aec5339
|
Move procedure for running NFA into FSA module
|
2024-11-02 16:23:44 +00:00 |
|
|
557ab451a8
|
Implement conversion from NFA to DFA
|
2024-11-02 16:23:44 +00:00 |
|
|
6b52d4d9cd
|
Implement min heap
|
2024-11-02 14:15:22 +00:00 |
|
|
730ec80220
|
No longer set state zero to be final in fsa_init()
|
2024-10-29 13:14:35 +00:00 |
|
|
d35fa4e9da
|
Rename construct to construct_nfa and improve tests
|
2024-10-29 09:29:10 +00:00 |
|
|
55e4e4f5ee
|
Add non-base-case construct tests and fix construct logic
|
2024-10-27 17:07:19 +00:00 |
|
|
3eb782f59f
|
Execute NFA rather than inspecting in construct_tests
|
2024-10-27 14:18:46 +00:00 |
|
|
d4b7a0a25c
|
Revert "Use char instead of int for FSA rule input"
This reverts commit eb22abfb1b6dbdf6dc702e3d9d99314cbbb22d7b.
|
2024-10-27 13:55:12 +00:00 |
|
|
d5b40f9324
|
Support subexpressions in construct()
|
2024-10-27 13:35:45 +00:00 |
|
|
bbecd12c91
|
Implement star construction
|
2024-10-27 13:33:40 +00:00 |
|
|
d54080032c
|
Remove invalid assert() in construct()
|
2024-10-27 13:24:12 +00:00 |
|
|
280168bb6f
|
Handle initial state being final in merge_fsas()
|
2024-10-27 13:23:15 +00:00 |
|
|
755f3f6805
|
Add runtime assertion on unhandled case in concat_fsas()
|
2024-10-27 13:21:29 +00:00 |
|
|
edc14bc1de
|
Tweak build script and README
|
2024-10-27 02:39:24 +00:00 |
|
|
99b8d3bcd0
|
Define PARSE_FAIL and use instead of -1 in parse.c
|
2024-10-27 02:16:14 +00:00 |
|
|
8743a45b2a
|
Use runtime asserts on allocation success in parse.c
|
2024-10-27 02:15:37 +00:00 |
|
|
721d0a2b49
|
Use runtime asserts instead of error returns in desugar.c
The error paths are not tested and are mostly for NULL allocations so
it makes more sense to use runtime asserts for now for simplicity's
sake.
|
2024-10-27 02:15:34 +00:00 |
|
|
eb22abfb1b
|
Use char instead of int for FSA rule input
|
2024-10-27 01:52:33 +00:00 |
|
|
852102cab9
|
Implement union construction
|
2024-10-27 01:50:35 +00:00 |
|
|
afd4cf928c
|
Enable test output on failure in test.sh
|
2024-10-27 01:50:28 +00:00 |
|
|
007cddc292
|
Add some runtime assertions for state zero being final
I'm using this invariant to save work finding the final state so it
makes sense to test it.
|
2024-10-27 01:24:43 +01:00 |
|
|
c58cabd2e6
|
Replace build scripts with CMake
Rebuilding everything each time was getting a bit slow.
|
2024-10-27 00:12:57 +01:00 |
|
|
403d081e13
|
Move headers into include directories
|
2024-10-27 00:06:15 +01:00 |
|
|
2804638d84
|
Support sequences in construct()
|
2024-10-27 00:06:15 +01:00 |
|
|
2ac92f62f1
|
Implement NFA construction for empty expression and literals
|
2024-10-27 00:06:15 +01:00 |
|
|
5d980cf64b
|
Make scripts directly executable
|
2024-10-27 00:06:15 +01:00 |
|
|
8a06c7ceb6
|
Add ASSERT_LT() testing macro
|
2024-10-26 22:17:53 +01:00 |
|