Commit graph

185 commits

Author SHA1 Message Date
Max Brunsfeld
7ff690371e Add clean script
Also rename other scripts
2014-03-03 20:10:48 -08:00
Max Brunsfeld
0815db1d23 Add c++11 flag to gyp file 2014-03-03 19:49:22 -08:00
Max Brunsfeld
67e008d15d Generate makefile with gyp
- Add gyp submodule
- Add script to generate makefile with gyp
- Switch travis build to do this
2014-03-03 13:20:44 -08:00
Max Brunsfeld
86cc854c54 Add gyp file, generate xcode project with it 2014-03-02 23:09:25 -08:00
Max Brunsfeld
e479773aac Rename files to avoid duplicate basenames 2014-03-02 15:07:43 -08:00
Max Brunsfeld
207ed44fdf Fix library name in xcode 2014-03-02 00:16:34 -08:00
Max Brunsfeld
3c646d707a Add static library as make target 2014-03-02 00:07:00 -08:00
Max Brunsfeld
8797c9097f Add static library as an xcode build target 2014-03-02 00:03:30 -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
5045d5cccc Clean up tree spec 2014-03-01 15:09:41 -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
8b7ed13c8b Add more error recovery tests for JSON 2014-02-26 22:58:45 -08:00
Max Brunsfeld
c520b692d9 Clean up travis file 2014-02-26 20:03:26 -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
a34da59889 Update naming style in parser.h 2014-02-20 18:43:35 -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
1d56578a81 Remove project vimrc file 2014-02-19 13:06:58 -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
49ad910474 Skip whitespace by default in lexer 2014-02-19 12:48:38 -08:00
maxbrunsfeld
19804367b3 Create README.md 2014-02-19 09:28:31 -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
9f0a395c0d Remove clang -stdlib flag in makefile 2014-02-19 09:24:55 -08:00
Max Brunsfeld
6b23a5ac0d Respect CXX env var in Makefile 2014-02-18 12:38:29 -08:00
Max Brunsfeld
741da7b5ae Update .travis.yml 2014-02-18 09:19:41 -08:00
Max Brunsfeld
a0738ea9dc Add travis.yml file 2014-02-18 09:16:57 -08:00
Max Brunsfeld
2c56612650 Get makefile working 2014-02-18 09:07:00 -08:00
Max Brunsfeld
fd757c20d0 Move example grammars from fixtures -> examples dir 2014-02-17 13:18:09 -08:00
Max Brunsfeld
585f9f0054 Fix misplaced file 2014-02-17 12:59:24 -08:00
Max Brunsfeld
7f9b9f9f37 Update todo 2014-02-17 12:58:10 -08:00