Commit graph

261 commits

Author SHA1 Message Date
Paul Beckingham
690df0ded0 FS: Removed unnecessary methods 2016-01-09 22:17:13 -05:00
Paul Beckingham
a00e326d01 Color: Removed unnecessary methods 2016-01-09 22:13:49 -05:00
Paul Beckingham
123973b634 gr: After initalizing LR0 with grammar, calls parse on input 2016-01-09 22:06:48 -05:00
Paul Beckingham
8cd6fd2a5f LR0: Stubbed ::parse functionality 2016-01-09 22:06:26 -05:00
Paul Beckingham
6558f8422d LR0: Removed obsolete ::setTransition 2016-01-09 00:33:14 -05:00
Paul Beckingham
63d835b1cd LR0: createParseTable now finds the shift transitions 2016-01-09 00:30:43 -05:00
Paul Beckingham
42d1a420ef LR0: Parser table diagnostics formatting 2016-01-08 10:07:09 -05:00
Paul Beckingham
6d37c467cb LR0: Removed Lexer dependence 2016-01-08 10:06:47 -05:00
Paul Beckingham
227c5ae8e5 LR0: Capture state transitions during closure 2016-01-07 22:22:45 -05:00
Paul Beckingham
67b497733f LR0: No need to implement a do-nothing default constructor 2016-01-07 22:12:05 -05:00
Paul Beckingham
928597c425 LR0: Renamed _reducesTo to _transitionsTo 2016-01-07 18:17:21 -05:00
Paul Beckingham
bc0a904b50 LR0: Color update 2016-01-07 17:21:27 -05:00
Paul Beckingham
62f11f6603 LR0: Cleaner parse table dump 2016-01-06 10:46:38 -05:00
Paul Beckingham
2890d73f24 Tests: Added ::dequote 2016-01-06 10:43:44 -05:00
Paul Beckingham
8b159d7225 Lexer: Added ::dequote 2016-01-06 10:43:26 -05:00
Paul Beckingham
a2e45b9297 LR0: ::createParseTable now find acceptance and reductions 2016-01-06 10:33:17 -05:00
Paul Beckingham
b3eef3f959 LR0: The artificial terminal "$" is now autoamtically included 2016-01-06 10:31:14 -05:00
Paul Beckingham
1abcd7ed3d LR0: Added missing '$' symbol from action table diagnostics 2016-01-05 23:58:31 -05:00
Paul Beckingham
1f1cd34134 LR0: Color-coded the parser table 2016-01-05 23:26:55 -05:00
Paul Beckingham
ab2eb68d7c LR0: ::dump now includes the action and goto tables 2016-01-05 23:19:32 -05:00
Paul Beckingham
1211dda9b0 Table: Made more methods and args const 2016-01-05 23:04:59 -05:00
Paul Beckingham
bcaaa96ab0 Color: Made more methods and args const 2016-01-05 23:04:01 -05:00
Paul Beckingham
485b8a884d Tests: Added a chessboard table test 2016-01-05 22:00:43 -05:00
Paul Beckingham
9ed040d018 Common: Added Table 2016-01-05 17:00:49 -05:00
Paul Beckingham
6d53cb7c95 Tests: Added Table tests 2016-01-05 16:57:07 -05:00
Paul Beckingham
60a13aa10c Table: Added string table renderer 2016-01-05 16:56:16 -05:00
Paul Beckingham
201bf5ad21 Tests: Added ::leftJustify, ::rightJustify tests 2016-01-05 16:46:20 -05:00
Paul Beckingham
4a2ac6f4fc Common: Added ::leftJustify and ::rightJustify variants 2016-01-05 16:45:52 -05:00
Paul Beckingham
33dce5de7b Tests: Added ::wrapText, ::extractLine tests 2016-01-05 16:33:07 -05:00
Paul Beckingham
3b9a4ba77c Common: Added ::wrapText, ::extractLine 2016-01-05 16:32:42 -05:00
Paul Beckingham
35c9394a92 Tests: Added longestWord, longestLine tests 2016-01-05 16:25:15 -05:00
Paul Beckingham
0e859d668c Common: Added longestLine and longestWord 2016-01-05 16:24:39 -05:00
Paul Beckingham
90ccdc872f LR0: Implemented unformatted ::dump 2016-01-05 12:04:26 -05:00
Paul Beckingham
5f6a522ad8 LR0: Initialization in ::createParseTable 2016-01-05 12:03:43 -05:00
Paul Beckingham
9d239f7a80 LR0: Added ::Item::setReductionRule 2016-01-05 12:00:40 -05:00
Paul Beckingham
88e932ea2e LR0: Diagnostics only in debug mode 2016-01-05 11:58:42 -05:00
Paul Beckingham
eac94e99bf LR0: Now copies lists of grammar rules and terminals 2016-01-05 02:21:08 -05:00
Paul Beckingham
04ce6a8b91 LR0: Stubbed ::createParseTable 2016-01-05 02:14:10 -05:00
Paul Beckingham
6b79a9a975 LR0: Removed obsolete ::getClosure 2016-01-05 02:06:54 -05:00
Paul Beckingham
5b6a232112 LR0: Removed duplicate States::dump call 2016-01-05 01:56:26 -05:00
Paul Beckingham
8a13686643 LR0: Removed debugging diagnostics 2016-01-05 01:55:38 -05:00
Paul Beckingham
6c9b186dc2 LR0: Fixed ::closeState
- Added check to prevent duplicate states.
- Added extra recursion for cases of the new item containing '. X' where X is a
  non-terminal.
2016-01-05 01:55:24 -05:00
Paul Beckingham
a9b7ca04c9 LR0: Documented ::initializeFirstState 2016-01-05 01:51:08 -05:00
Paul Beckingham
c33e12f099 LR0: Added ::Item::operator== 2016-01-05 01:48:38 -05:00
Paul Beckingham
0d7c356bed LR0: Replaced old first-state init code 2016-01-05 01:16:07 -05:00
Paul Beckingham
7126046049 LR0: Added ::initializeFirstState 2016-01-05 01:15:30 -05:00
Paul Beckingham
1f9826a07e LR0: ::closeState no longer has any return value 2016-01-05 01:13:47 -05:00
Paul Beckingham
1491df085d LR0: Implemnted ::closeState 2016-01-05 01:02:14 -05:00
Paul Beckingham
79f5e03a26 LR0: Changed the structure of the _actions and _goto tables 2016-01-05 01:01:00 -05:00
Paul Beckingham
c7aa6a3beb LR0: Modified ::getExpectedSymbols to use index-based looping
- Index-based looping makes it easier to link the items in the states to be
  linked back to the augmented grammar.
2016-01-03 17:24:32 -05:00