Paul Beckingham
|
05063904a6
|
LR0: Converted ::expandNonTerminals to use new data structure
|
2015-12-27 11:19:36 -05:00 |
|
Paul Beckingham
|
ad5f1e4fd7
|
LR0: Added ::dump method to display intermediate parsing table
|
2015-12-27 11:18:47 -05:00 |
|
Paul Beckingham
|
26e0a472ac
|
LR0: Created data strcuture to represent intermediate parsing table
|
2015-12-27 11:17:39 -05:00 |
|
Paul Beckingham
|
a3260246bf
|
Grammar: Annotated data structure
|
2015-12-27 11:16:48 -05:00 |
|
Paul Beckingham
|
474ed85811
|
LR0: ::expandNonTerminals now writes expansion state in debug mode
|
2015-12-27 10:34:59 -05:00 |
|
Paul Beckingham
|
08457be4a0
|
LR0: Expansion of non-terminals also needs a reference to the augmented grammar
|
2015-12-27 10:08:47 -05:00 |
|
Paul Beckingham
|
b56e8fb226
|
LR0: Items are properly initialized for the first step
|
2015-12-27 09:59:33 -05:00 |
|
Paul Beckingham
|
90fbdaa08b
|
LR0: ::expandNonTerminals now accepts a set of items and states
|
2015-12-27 09:58:40 -05:00 |
|
Paul Beckingham
|
d3353aba24
|
Tests: Added augmented grammar tests
|
2015-12-27 09:50:37 -05:00 |
|
Paul Beckingham
|
d347303e6e
|
LR0: Stubbed expanѕion of non-terminals
|
2015-12-26 23:08:17 -05:00 |
|
Paul Beckingham
|
53d8500000
|
Debug: Diagnostic output cleanup
|
2015-12-26 22:31:11 -05:00 |
|
Paul Beckingham
|
b80964dac5
|
gr: Diagnostic output now controlled by '-d' and '--debug' options
|
2015-12-26 14:43:58 -05:00 |
|
Paul Beckingham
|
ec69d5fa4c
|
LR0: Diagnostics now controlled by ::debug
- Added ::parse stub
|
2015-12-26 14:41:10 -05:00 |
|
Paul Beckingham
|
0ff2ebb37f
|
Grammar: No need to notify on validation pass
- The lack of exceptions is all we need.
|
2015-12-26 14:38:45 -05:00 |
|
Paul Beckingham
|
63df5ba992
|
Grammar: Diagnostics now controlled by ::debug
|
2015-12-26 14:37:43 -05:00 |
|
Paul Beckingham
|
3829415d19
|
gr: Added '-d' and '--debug' command line option
|
2015-12-26 14:15:58 -05:00 |
|
Paul Beckingham
|
2d594c33dc
|
Grammar: Added debug mode
|
2015-12-26 14:13:43 -05:00 |
|
Paul Beckingham
|
980dda147f
|
LR0: Added debug mode
|
2015-12-26 14:12:11 -05:00 |
|
Paul Beckingham
|
ee7fd61991
|
LR0: Formatted debug output for terseness, given expected output volume
|
2015-12-26 14:08:44 -05:00 |
|
Paul Beckingham
|
0a9e1f7299
|
Grammar: MAde ::dump output more compact, because this is going to get large
|
2015-12-26 14:08:13 -05:00 |
|
Paul Beckingham
|
e3199833f7
|
LR0: Obtains and displays the augmented grammar
|
2015-12-26 13:36:09 -05:00 |
|
Paul Beckingham
|
49ca83ad10
|
Grammar: Updated ::items to ::augmented, returning the full augmented grammar
|
2015-12-26 13:35:15 -05:00 |
|
Paul Beckingham
|
5719191467
|
Grammar: Added ::items, for seeding the LR0 parse table
|
2015-12-26 12:29:39 -05:00 |
|
Paul Beckingham
|
c73464b39f
|
Grammar: Converted from std::set to std::vector to preserve ordering
|
2015-12-25 22:54:25 -05:00 |
|
Paul Beckingham
|
9b126699e7
|
Grammar: Removed obsolete method
|
2015-12-25 22:54:03 -05:00 |
|
Paul Beckingham
|
9b599597f1
|
Grammar: Corrected left-recursion check
|
2015-12-25 22:49:37 -05:00 |
|
Paul Beckingham
|
a164a72156
|
Lexer: Added operator support
|
2015-12-25 16:44:21 -05:00 |
|
Paul Beckingham
|
476551c563
|
Lexer: Added path support
|
2015-12-24 00:26:34 -05:00 |
|
Paul Beckingham
|
703ec44ad0
|
Lexer: Aded URL support
|
2015-12-24 00:18:23 -05:00 |
|
Paul Beckingham
|
78653a16cf
|
timew: Renamed grammar files, added rule.grammar
|
2015-12-23 11:50:50 -05:00 |
|
Paul Beckingham
|
925e8ec14b
|
Tests: Added LR0 test framework
|
2015-12-23 09:23:57 -05:00 |
|
Paul Beckingham
|
dcc1a3c451
|
Tests: Added rules test framework
|
2015-12-23 09:23:11 -05:00 |
|
Paul Beckingham
|
3c2c159af8
|
Rules: Added stubbed objects
|
2015-12-23 09:21:44 -05:00 |
|
Paul Beckingham
|
0ad9012b5c
|
LR0: ::createParseTables now accesses Grammar metedata
|
2015-12-23 00:23:00 -05:00 |
|
Paul Beckingham
|
6a6709d2c8
|
Tests: Added Grammar metadata tests
|
2015-12-23 00:22:17 -05:00 |
|
Paul Beckingham
|
c62c6448d2
|
Grammar: Converted from std::vector to std::set for metadata
|
2015-12-23 00:21:30 -05:00 |
|
Paul Beckingham
|
ed138fc819
|
gr: Removed unused code
|
2015-12-22 23:43:57 -05:00 |
|
Paul Beckingham
|
23fb1aedd5
|
Grammar: Renamed ::dump vars for accuracy
|
2015-12-22 23:40:43 -05:00 |
|
Paul Beckingham
|
0cd1d48290
|
Grammar: Added ::terminals
|
2015-12-22 23:40:22 -05:00 |
|
Paul Beckingham
|
35d246aa32
|
Grammar: Added ::rules
|
2015-12-22 23:39:50 -05:00 |
|
Paul Beckingham
|
459bf183dc
|
Grammar: Added ::start
|
2015-12-22 23:39:13 -05:00 |
|
Paul Beckingham
|
791e870eda
|
gr: Instantiates a parser
|
2015-12-22 23:31:32 -05:00 |
|
Paul Beckingham
|
9569b5dcc3
|
timew: Instantiates a parser
|
2015-12-22 23:31:09 -05:00 |
|
Paul Beckingham
|
bc22348822
|
LR0: Added ::createParseTables, ::dump
|
2015-12-22 23:26:06 -05:00 |
|
Paul Beckingham
|
fa375615cd
|
Grammar: Added regex support
|
2015-12-22 15:28:00 -05:00 |
|
Paul Beckingham
|
ee667cb68c
|
Lexer: Added pattern support
|
2015-12-22 15:26:57 -05:00 |
|
Paul Beckingham
|
fbc47dc1e4
|
gr: Added utility to check grammar
|
2015-12-22 12:26:06 -05:00 |
|
Paul Beckingham
|
75ca4a3b71
|
Tests: Refactoring
- Added functions to reduce code size.
- Added test to check for bad file, bad grammar.
|
2015-12-22 10:07:07 -05:00 |
|
Paul Beckingham
|
18186de479
|
Tests: Added test for trivial but non-empty grammar
|
2015-12-22 09:48:53 -05:00 |
|
Paul Beckingham
|
59e2b7911b
|
Tests: Added test for empty grammar string
|
2015-12-22 09:46:14 -05:00 |
|