Commit graph

1058 commits

Author SHA1 Message Date
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
Max Brunsfeld
04afda2e66 Drop extensions from script filenames 2016-01-15 13:01:19 -08:00
Max Brunsfeld
7dfb1dbdf6 Restore default value of USE_BOOST_REGEX build option 2016-01-15 11:53:30 -08:00
Max Brunsfeld
3bc7045e05 Fix fixtures path in fetch_languages script 2016-01-15 11:46:13 -08:00
Max Brunsfeld
90cbd61280 Adjust static library path on linux 2016-01-15 11:40:46 -08:00
Max Brunsfeld
9cc24f3e28 Make test script fail properly 2016-01-15 11:35:35 -08:00
Max Brunsfeld
d6ed783c8c Improve error handling when dynamically loading languages in specs 2016-01-15 11:35:22 -08:00
Max Brunsfeld
eef1ae17a0 Restore USE_BOOST_REGEX build option for specs 2016-01-15 11:30:32 -08:00
Max Brunsfeld
8ec0e3f43e Link to libld in specs 2016-01-15 11:29:17 -08:00