Max Brunsfeld
|
0d6435e24a
|
Pass edit information into parser function
|
2014-03-15 16:55:35 -07:00 |
|
Max Brunsfeld
|
da992b77ff
|
Rename 'parse_config' export -> 'parser'
|
2014-03-15 14:48:28 -07:00 |
|
Max Brunsfeld
|
0dc3a95d0c
|
Refactor parser header
Make separate lexer, stack and parser structs.
|
2014-03-15 14:43:50 -07:00 |
|
Max Brunsfeld
|
05a5f9c124
|
Add function for notifying documents of edits
|
2014-03-12 13:39:12 -07:00 |
|
Max Brunsfeld
|
ff0c8a98b8
|
Consolidate reading of input chunks in parser
|
2014-03-11 12:43:13 -07:00 |
|
Max Brunsfeld
|
42e9a264f3
|
In parser, read chunked input correctly
|
2014-03-10 13:25:31 -07:00 |
|
Max Brunsfeld
|
3aaa08b948
|
Fix some egregiously long lines
|
2014-03-09 23:58:25 -07:00 |
|
Max Brunsfeld
|
39cb420df2
|
Remove uses of 'short' and 'long'
|
2014-03-09 23:00:14 -07:00 |
|
Max Brunsfeld
|
632a88c8ef
|
Remove some C-style casts
|
2014-03-09 22:55:48 -07:00 |
|
Max Brunsfeld
|
504c361cb8
|
Make some implicit constructors explicit
|
2014-03-09 22:53:49 -07:00 |
|
Max Brunsfeld
|
a4120f36d4
|
Remove all uses of 'using namespace'
|
2014-03-09 22:45:33 -07:00 |
|
Max Brunsfeld
|
de5deeeb69
|
Remove spurious semicolons
|
2014-03-09 22:24:52 -07:00 |
|
Max Brunsfeld
|
661314cf4e
|
Remove all non const reference parameters
|
2014-03-09 22:21:58 -07:00 |
|
Max Brunsfeld
|
a411e43484
|
Rename source files: .cpp -> .cc
|
2014-03-09 22:13:08 -07:00 |
|
Max Brunsfeld
|
31a58bc7e4
|
Make include guards pass cpplint
|
2014-03-09 22:05:24 -07:00 |
|
Max Brunsfeld
|
eb30429700
|
Make paths explicit in #includes
|
2014-03-09 21:43:14 -07:00 |
|
Max Brunsfeld
|
39aa0ccc91
|
Add script to trim whitespace
|
2014-03-09 19:49:35 -07:00 |
|
Max Brunsfeld
|
9c6c47e02f
|
Make parser input reads indicate the # of bytes read
|
2014-03-08 16:51:08 -08:00 |
|
Max Brunsfeld
|
1fd381ae7a
|
Don't use c++ for runtime
Don't really need it, and it makes compilation slightly more
complicated
|
2014-03-08 16:30:44 -08:00 |
|
Max Brunsfeld
|
af64d3fffa
|
Build with all warnings enabled
Fix resulting warnings
|
2014-03-04 18:28:28 -08:00 |
|
Max Brunsfeld
|
ae82b90fdb
|
Don't use exceptions in pattern parser
|
2014-03-04 12:36:38 -08:00 |
|
Max Brunsfeld
|
e479773aac
|
Rename files to avoid duplicate basenames
|
2014-03-02 15:07:43 -08:00 |
|
Max Brunsfeld
|
0f4b6332cb
|
Refactor document to allow other input data structures
|
2014-03-01 22:43:25 -08:00 |
|
Max Brunsfeld
|
72a0c0e09c
|
Keep track of AST node sizes and positions
|
2014-03-01 15:44:25 -08:00 |
|
Max Brunsfeld
|
ded54a3a1a
|
Fix some memory management bugs with trees
|
2014-03-01 00:25:05 -08:00 |
|
Max Brunsfeld
|
21c0f51b84
|
Rename ts_document_{set_text,set_input_string}
Because next I'll add a more general 'set_input' method
|
2014-02-27 13:30:11 -08:00 |
|
Max Brunsfeld
|
c43ec90dad
|
Fix missing auxiliary tokens in lex error state
|
2014-02-27 00:38:08 -08:00 |
|
Max Brunsfeld
|
926b4ef242
|
Clean up parser.h
|
2014-02-27 00:06:22 -08:00 |
|
Max Brunsfeld
|
0d4687bdad
|
Make start and EOF symbols into builtin symbols
|
2014-02-26 23:18:49 -08:00 |
|
Max Brunsfeld
|
8deeff392b
|
Fix memory leak in tree
|
2014-02-26 19:54:22 -08:00 |
|
Max Brunsfeld
|
7251456cd2
|
Move some general code generation helpers into their own file
|
2014-02-26 19:08:07 -08:00 |
|
Max Brunsfeld
|
63718d5bad
|
Add basic support for error recovery
|
2014-02-26 19:03:43 -08:00 |
|
Max Brunsfeld
|
df05c75525
|
Backfill unit tests for follow sets
Also, add some comment docs for some compiler functions
|
2014-02-26 00:39:31 -08:00 |
|
Max Brunsfeld
|
df223d566e
|
Fix bug in parser error handling
|
2014-02-25 18:33:24 -08:00 |
|
Max Brunsfeld
|
4541332c2b
|
Put definition of EOF symbol back in parse table builder (not in parser.h)
|
2014-02-25 13:25:58 -08:00 |
|
Max Brunsfeld
|
e58a6d8ba7
|
Start work on error recovery
- In runtime, make parse errors part of the parse tree
- Add error state to lexers in which they can accept any token
|
2014-02-24 18:42:54 -08:00 |
|
Max Brunsfeld
|
4520d6e1a2
|
Remove unnecessary downcast in prepare_grammar::perform
|
2014-02-23 19:01:24 -08:00 |
|
Max Brunsfeld
|
2c30dce08e
|
Refactor rule visitors
|
2014-02-23 18:46:53 -08:00 |
|
Max Brunsfeld
|
713b3899c5
|
Simplify logic for extracting tokens from grammar
|
2014-02-23 10:00:49 -08:00 |
|
Max Brunsfeld
|
946088bccc
|
Remove unused typedef from compiler.h
|
2014-02-21 08:23:20 -08:00 |
|
Max Brunsfeld
|
cdf63b6083
|
Add missing includes
|
2014-02-20 23:11:27 -08:00 |
|
Max Brunsfeld
|
688fe993cf
|
Remove rules that don't need to be public from compiler.h
|
2014-02-20 23:05:32 -08:00 |
|
Max Brunsfeld
|
ceee7eefd0
|
Don't store text on documents
|
2014-02-20 18:38:31 -08:00 |
|
Max Brunsfeld
|
6ed6aa05cc
|
Update runtime code naming
Also, add macros so that code generator doesn't
need to know about any runtime variables names
or types
|
2014-02-20 13:30:43 -08:00 |
|
Max Brunsfeld
|
1b56832cb7
|
Use c++ in runtime src file
It makes string manipulation easier
|
2014-02-19 18:58:28 -08:00 |
|
Max Brunsfeld
|
e40c6ec60d
|
Clean up PreparedGrammar::operator==
|
2014-02-19 18:30:56 -08:00 |
|
Max Brunsfeld
|
e87380a8b7
|
Make separate PreparedGrammar subclass of Grammar for internal use
|
2014-02-19 13:36:38 -08:00 |
|
Max Brunsfeld
|
acad97cfd2
|
Separate concepts of hidden and auxiliary symbols
This way, we can hide auxiliary symbols from library users,
but still allow them to use hidden symbols
|
2014-02-19 13:05:54 -08:00 |
|
Max Brunsfeld
|
7c57c521af
|
Add missing header includes
For some reason, xcode tolerated these missing includes.
Travis CI doesn't.
|
2014-02-19 09:25:06 -08:00 |
|
Max Brunsfeld
|
2c56612650
|
Get makefile working
|
2014-02-18 09:07:00 -08:00 |
|