Max Brunsfeld
da2ef7ad35
Store trees in the links between stack nodes, not in the nodes themselves
2016-02-23 17:35:50 -08:00
Max Brunsfeld
abbc282950
Add a public function for printing debugging graphs
2016-02-23 11:16:50 -08:00
Max Brunsfeld
b36143d7a7
Add flag for logging dot graphs of the stack while parsing
2016-02-23 09:45:27 -08:00
Max Brunsfeld
867e1094c3
Fix sharing of lookahead token between parse stacks
2016-02-23 00:09:42 -08:00
Max Brunsfeld
6dd92c3abe
Add function for rendering the stack as a DOT graph
2016-02-23 00:08:55 -08:00
Max Brunsfeld
b99c257e9e
Make test symbol_names array accessible in specs
2016-02-23 00:08:20 -08:00
Max Brunsfeld
9d5a260e5b
🔥 unused variable in tree spec
2016-02-22 21:29:46 -08:00
Max Brunsfeld
f444a715fd
Clean up tree array assertions in stack spec
2016-02-22 09:23:25 -08:00
Max Brunsfeld
b113dc8b0f
Return a TreeArray from ts_stack_pop
...
Since the capacity is now included in the return value, the buffer
can be reused in the ts_parser__accept function. Also, it's just
cleaner to use Array consistently, rather than a separate buffer
and size.
2016-02-21 22:31:13 -08:00
Max Brunsfeld
f92b35e77e
Merge pull request #29 from tree-sitter/multiple-node-types
...
Expose nodes' wrapper symbols
2016-02-20 13:49:22 -08:00
Max Brunsfeld
17db46eded
Add test for node that has only one symbol
2016-02-20 13:38:39 -08:00
Max Brunsfeld
2b35890bbb
Add ts_node_symbols() function
2016-02-19 15:41:30 -08:00
Max Brunsfeld
df1d9b2416
Move sexp-generation code to node.c
2016-02-19 15:41:09 -08:00
Max Brunsfeld
3d7df851b5
Rename Vector -> Array
2016-02-17 20:41:29 -08:00
Max Brunsfeld
6fa7eca966
Make vector struct type-safe
2016-02-17 15:30:47 -08:00
Max Brunsfeld
3f08bfb264
Fix build warnings
2016-02-12 14:11:11 -08:00
Max Brunsfeld
afed91661b
Update repo URLs in readme
2016-02-12 13:10:38 -08:00
Max Brunsfeld
5a595d6e70
Clone fixture grammars from new tree-sitter org
2016-02-12 12:47:38 -08:00
Max Brunsfeld
e90a425618
Only return one result for each revealed head from ts_stack_pop
2016-02-08 12:08:15 -08:00
Max Brunsfeld
171c259300
Merge pull request #25 from maxbrunsfeld/fix-leaks
...
Fix memory leaks
2016-02-05 13:19:55 -08:00
Max Brunsfeld
b80a330a74
Fix assorted memory leaks in test code
2016-02-05 12:23:54 -08:00
Max Brunsfeld
b1c8b74e9c
Avoid leak caused by earlier corpus spec failures
2016-02-05 11:35:40 -08:00
Max Brunsfeld
2f2ca401be
Fix last few leaks, add leak checking to all randomized specs
2016-02-05 11:18:22 -08:00
Max Brunsfeld
f6f02182c1
Tail-call-optimize recursive functions
...
Refs https://github.com/maxbrunsfeld/node-tree-sitter-compiler/pull/7
2016-02-04 12:59:44 -08:00
Max Brunsfeld
c96c4a08e6
Use an object pool for stack nodes, to reduce allocations
...
Also, fix some leaks in the case where memory allocation failed during parsing
2016-02-04 11:19:42 -08:00
Max Brunsfeld
a302ee822a
Add swift runtime memory memory leak to valgrind suppressions
2016-02-02 13:37:23 -08:00
Max Brunsfeld
29c77c34ef
Avoid leaking copy of potentially-extra token
2016-02-02 13:13:32 -08:00
Max Brunsfeld
2da716d659
Update help message for test script
2016-02-02 12:31:13 -08:00
Max Brunsfeld
1c9dff6dad
Guard memcpy calls in ts_parser__accept
2016-02-02 12:22:29 -08:00
Max Brunsfeld
4a7312e514
Fix memory leaks when editing
2016-02-02 12:22:29 -08:00
Max Brunsfeld
e3d65d5cbd
Change name of generated parser files
...
The previous name, parser.c made it harder to set breakpoints inside of
src/runtime/parser.c in LLDB
2016-01-29 17:33:15 -08:00
Max Brunsfeld
7c44b0e387
Fix leaked lookahead trees in normal parsing
2016-01-29 17:31:43 -08:00
Max Brunsfeld
a74bf7ece1
Release tree when changing document's language
2016-01-29 17:25:07 -08:00
Max Brunsfeld
b1f4b046f5
Test script - allow valgrind to be run w/o the leak check
2016-01-29 17:03:35 -08:00
Max Brunsfeld
95828f42a8
Fix leak of StringInput wrapper struct
2016-01-29 16:40:38 -08:00
Max Brunsfeld
0cf59913ae
Fix double retain of child trees
2016-01-28 23:15:22 -08:00
Max Brunsfeld
5f27550a7a
Fix leaked nodes in stack
2016-01-28 21:18:57 -08:00
Max Brunsfeld
ca6dfb81d9
Run valgrind with full leak check
2016-01-28 21:18:41 -08:00
Max Brunsfeld
6401a065ae
Use different types for advance and accept-token actions
...
Unlike with parse actions, lexical actions of different types never appear
in the same places in the table
2016-01-22 22:24:11 -07:00
Max Brunsfeld
1ec39abe6a
clang-format
2016-01-22 22:10:18 -07:00
Max Brunsfeld
f0b1d851ce
Fix uninitialized instance variable in ParseAction
2016-01-21 23:52:05 -07:00
Max Brunsfeld
6e2b49a539
Merge pull request #24 from maxbrunsfeld/handle-oom
...
Handle memory allocation failures gracefully
2016-01-21 23:51:28 -07:00
Max Brunsfeld
e17ce2903e
Clean up ts_parser__breakdown_stack
2016-01-21 14:07:38 -07:00
Max Brunsfeld
39417e55df
Test successful parsing after handling allocation failures
2016-01-19 19:52:07 -08:00
Max Brunsfeld
3dde0a6f39
Handle allocation failures during parsing
2016-01-19 18:08:01 -08:00
Max Brunsfeld
ff97a09343
Compile test grammars w/ debug symbols
2016-01-19 15:33:46 -08:00
Max Brunsfeld
1543a6c7b0
Handle allocation failures when instantiating documents
2016-01-18 11:32:10 -08:00
Max Brunsfeld
9d0835edbf
Return non-const string from ts_node_string
...
The caller should free the string.
2016-01-18 10:27:23 -08:00
Max Brunsfeld
87316f22f3
Wrap all calls to malloc and friends
2016-01-15 15:27:50 -08:00
Max Brunsfeld
19b776e74d
Fix some errors caught by clang static analyzer
2016-01-15 13:33:05 -08:00