Max Brunsfeld
7e0d46002c
Rename type ts_state_id -> TSStateId
2014-06-28 18:51:06 -07:00
Max Brunsfeld
5f59de72a8
Rename type ts_tree -> TSTree
2014-06-28 18:48:07 -07:00
Max Brunsfeld
2795078633
Rename type ts_document -> TSDocument
2014-06-28 18:37:29 -07:00
Max Brunsfeld
9686c57e90
Allow ubiquitous tokens to also be used in grammar rules
2014-06-26 08:52:42 -07:00
Max Brunsfeld
81880e000e
Tweak header include paths in tests
2014-06-23 18:50:03 -07:00
Max Brunsfeld
2c382b7363
Trim trailing whitespace
2014-06-16 21:33:35 -07:00
Max Brunsfeld
bb4d83ce47
Add regex postfix flags to javascript grammar
...
- Refactor statement terminators in javascript grammar
- Reorganize javascript language tests
2014-06-11 16:43:27 -07:00
Max Brunsfeld
082560dd6e
Fix operator precedence of '.' operator in js grammar
2014-06-11 14:01:38 -07:00
Max Brunsfeld
174f306e2a
Fix precedence of comments vs '/' operator
2014-06-11 12:27:58 -07:00
Max Brunsfeld
4ad6278334
Add finally, instance of, typeof, in to js grammar
2014-06-11 11:49:06 -07:00
Max Brunsfeld
c91c5cb730
Add range statements to golang grammar
2014-06-10 14:11:25 -07:00
Max Brunsfeld
53bc633a22
Add var decl and if statements to golang grammar
2014-06-10 13:27:55 -07:00
Max Brunsfeld
1c93d5e1a6
Add declarations w/o initialization to golang grammar
2014-06-10 11:57:45 -07:00
Max Brunsfeld
3968f36a03
Reorganize golang specs
2014-06-10 11:39:36 -07:00
Max Brunsfeld
123d3b26d8
Add more expressions, statements to golang grammar
2014-06-10 11:33:05 -07:00
Max Brunsfeld
8d48c3e48a
Fix integer type incompatibility warnings in specs
2014-06-09 21:35:41 -07:00
Max Brunsfeld
1b1f53a5e7
Fix memory leaks in tests
2014-06-09 21:16:33 -07:00
Max Brunsfeld
21c259df9c
Clean up lint errors
2014-06-09 21:14:38 -07:00
Max Brunsfeld
12331d66f5
Fix memory leaks
2014-06-09 13:12:44 -07:00
Max Brunsfeld
4602690c1a
Fix lr parser spec for gcc
2014-06-08 23:34:08 +00:00
Max Brunsfeld
652fa2f8a5
Fix stack spec on gcc
2014-06-04 18:24:54 -07:00
Max Brunsfeld
9a4889176e
Move lr_parser implementation into a separate .c file
2014-06-04 13:34:37 -07:00
Max Brunsfeld
63cde3967c
Add unit test for stack
...
- Also, fix bug where trees pushed onto the stack were not retained
2014-06-03 13:19:49 -07:00
Max Brunsfeld
baec9f2c9a
Move computation of tree size/offset into tree constructor
2014-06-02 13:32:36 -07:00
Max Brunsfeld
e93e254518
In lexer, prefer tokens to skipped separator characters
...
This was causing newlines in go and javascript to be parsed as
meaningless separator characters instead of statement terminators
2014-05-30 13:29:54 -07:00
Max Brunsfeld
2988cc5aa2
Show offending lookahead chars when pretty-printing trees w/ errors
2014-05-26 21:50:01 -07:00
Max Brunsfeld
6f45380f71
Move type-related tests for go grammar into their own file
2014-05-26 21:48:00 -07:00
Max Brunsfeld
4c9ac3dada
Fix parsing of empty strings in javascript and golang
2014-05-20 09:47:26 -07:00
Max Brunsfeld
2d0f90c7d5
Add try and while statements to js grammar
2014-05-09 21:36:18 -07:00
Max Brunsfeld
e4be585c43
Handle ubiquitous tokens at the beginning of programs
...
As a final step before returning the finished parse tree, check if
there are still multiple nodes on the stack. If so, make the inner
nodes children of the top node.
2014-05-09 12:46:36 -07:00
Max Brunsfeld
4700e33746
Introduce 'ubiquitous_tokens' concept, for parsing comments and such
2014-05-06 12:54:04 -07:00
Max Brunsfeld
bae32adc7b
Add constructor calls, pre/postfix operators to js grammar
2014-05-04 13:36:19 -07:00
Max Brunsfeld
1bdd87535a
Add prefix math operators +, - to javascript grammar
2014-05-02 07:42:13 -07:00
Max Brunsfeld
a2c125998e
Add single quoted strings and regexes to javascript grammar
2014-05-01 12:43:53 -07:00
Max Brunsfeld
801f4bd0a8
Add returns, deletes and bool operators to js grammar
2014-04-25 22:08:11 -07:00
Max Brunsfeld
61692c8bb1
Add error recovery in function calls to javascript gramamr
2014-04-24 13:22:54 -07:00
Max Brunsfeld
68c26a06b1
Add comments to javascript grammar
2014-04-24 13:22:23 -07:00
Max Brunsfeld
52c338ed60
Add some infix math operators to javascript grammar
2014-04-23 22:25:48 -07:00
Max Brunsfeld
7be8d469b8
Add ternary expressions to javascript grammar
2014-04-23 22:15:07 -07:00
Max Brunsfeld
a437d39773
Add rule precedence construct
...
Still need to add some way of expressing left and right
associativity
2014-04-15 08:40:46 -07:00
Max Brunsfeld
cad6122295
Use boost regex on travis ci
2014-04-10 13:17:45 -07:00
Max Brunsfeld
6a0a28f4b3
WIP - try to fix travis build
2014-04-08 21:41:38 -07:00
Max Brunsfeld
be1c8e0f17
Add dynamic property access to javascript grammar
2014-04-05 15:55:20 -07:00
Max Brunsfeld
2191a7d988
Add switch statements to javascript grammar
2014-04-04 13:10:33 -07:00
Max Brunsfeld
129d2b9314
Remove extra EOF actions in lexer
2014-04-04 08:44:35 -07:00
Max Brunsfeld
1cc7e32e2d
Fix handling of tokens consisting of separator characters
...
The parser is no longer hard-coded to skip whitespace. Tokens
such as newlines, whose characters overlap with the separator
characters, can now be correctly recognized.
2014-04-03 19:10:09 -07:00
Max Brunsfeld
8e1b78ca8e
Remove trailing whitespace from generated c code
2014-03-29 19:00:31 -07:00
Max Brunsfeld
99817a38c1
Improve trees generated by arithmetic grammar
...
This work should inform how to implement operator
precedence helper functions
2014-03-29 18:37:51 -07:00
Max Brunsfeld
7adb0bf34f
Add golang example grammar
...
Also, support '\a' character class shorthand in regexes,
for alphabetical characters
2014-03-29 16:29:34 -07:00
Max Brunsfeld
13c4e6e648
Tweak format for example grammars
2014-03-28 13:51:32 -07:00