Commit graph

139 commits

Author SHA1 Message Date
Max Brunsfeld
52126a6606 Update JS test to reflect typescript grammar changes 2019-08-08 10:23:17 -07:00
Rob Donnelly
b1a4cc044d Fix Rust bindings example (#415)
`Parser::parse` returns `Option<&Tree>`.  An `unwrap()` or similar is required to get the actual `Tree`.
2019-08-08 08:35:23 -07:00
Max Brunsfeld
93f7de03e2 cli: Handle multi-parser repos, content-regex property
Prompted by tree-sitter/tree-sitter-typescript#68
2019-08-07 17:41:45 -07:00
Max Brunsfeld
0afbc31789 Automatically skip BOM characters at beginnings of files
Refs tree-sitter/tree-sitter-python#48
2019-08-02 12:03:04 -07:00
Max Brunsfeld
9848ceb3e2 wasm: Fix infinite loop in Node.text when tree and text are out-of-sync 2019-07-31 13:55:15 -07:00
Max Brunsfeld
3714e330d3 wasm: 0.15.9 2019-07-29 17:19:52 -07:00
Max Brunsfeld
08021301c7 wasm: Fix descendants of type error
Fixes #394
2019-07-29 17:18:47 -07:00
Max Brunsfeld
56f30ac06f wasm: 0.15.8 2019-07-23 11:20:24 -07:00
Stafford Brunk
ce10b53fe3
Add missing currentFieldName() to TreeCursor 2019-07-23 06:47:44 -06:00
Stafford Brunk
d686d24563
Add missing delete() to TreeCursor 2019-07-23 06:47:44 -06:00
Stafford Brunk
e5ee59c051
Correct currentNode on TreeCursor
It's a method not a getter in this implementation
2019-07-23 06:47:44 -06:00
Max Brunsfeld
443ac1c1e5 Update python tests to reflect grammar changes 2019-07-22 09:55:30 -07:00
Max Brunsfeld
f4740a1beb Make properties generation aware of which nodes are leaves 2019-07-22 09:30:05 -07:00
Max Brunsfeld
ea515b6967 Fix ts_node_string behavior for anonymous leaf nodes
Refs tree-sitter/py-tree-sitter#8
2019-07-18 12:39:15 -07:00
Max Brunsfeld
f505613af3 Fix bug introduced when optimizing property sheet JSON files 2019-07-17 17:00:25 -07:00
Max Brunsfeld
311fc51e8a wasm: 0.15.7 2019-07-17 15:19:53 -07:00
Max Brunsfeld
def1e1e91a Reduce bloat in generated property sheet JSON files 2019-07-17 14:28:44 -07:00
Max Brunsfeld
5289e009c1 wasm: Add descendantsOfType to typescript interface 2019-07-17 08:59:14 -07:00
Max Brunsfeld
f00b310908 wasm: Implement Node.descendantsOfType 2019-07-17 08:58:46 -07:00
Stafford Brunk
6340c820c1
Add missing copy() and getLanguage() calls to Tree web types 2019-07-16 20:42:57 -06:00
Stafford Brunk
3953cb317f
Add delete() to Parser and Tree web types 2019-07-16 20:39:57 -06:00
Max Brunsfeld
bd466febb4 highlight: Fix panic when cancelled before parsing a nested document 2019-07-16 14:34:24 -07:00
Max Brunsfeld
1a33f1a665 Add TreeCursor.currentFieldName to wasm binding 2019-07-10 14:31:10 -05:00
Max Brunsfeld
c90a532d8f Update tests to reflect javascript grammar changes 2019-07-10 14:30:43 -05:00
Max Brunsfeld
f2b13721d9 Update wasm test to reflect C++ grammar changes 2019-07-05 12:13:38 -07:00
Max Brunsfeld
64fc944202 Fix missing criteria for leaf node reuse 2019-06-20 15:02:20 -07:00
Sebastián Gurin
bd97ad5c4c Wasm file generation note in readme (#368)
* readme .wasm file generate and usage in node.js

* generate wasm language files readme note
2019-06-20 14:06:09 -07:00
Max Brunsfeld
e4873191d6 Refactor generated lex function to use fewer instructions per state 2019-06-20 09:57:38 -07:00
Max Brunsfeld
28011b1e60 Add ts_node_is_extra API 2019-06-19 15:58:29 -07:00
Andrey Zaytsev
7f2233ddaf Ts tree cursor copy (#363)
* add ts_tree_cursor_copy fn

* indentation
2019-06-16 10:52:37 -07:00
Max Brunsfeld
0e046fc6c0 Fix bug when the assert macro is disabled
Fixes #364
2019-06-14 14:23:38 -07:00
Max Brunsfeld
80b785daee Improve behavior of node descendant queries with single positions 2019-06-13 10:53:59 -07:00
Antonio Scandurra
25b0fbd679 Don't use clock_gettime on macOS
This commit stops using the monotonic clock API on macOS because it is 
supported only on macOS >= 10.12. Instead, it uses the fallback clock 
APIs for platforms without monotonic clock support.

The use of `clock_gettime` was causing issues on Atom because, even 
though we build it on a new macOS version supporting such API, some 
users may run Atom on older versions of macOS. On those platforms, Atom 
would crash whenever opening a file parsed with a tree-sitter grammar.
2019-06-12 19:03:46 +02:00
Max Brunsfeld
3a51b23f1a web: 0.15.6 2019-06-03 16:19:16 -07:00
Max Brunsfeld
1cef6d4550 web: Don't require Parser.init to be called immediately 2019-06-03 16:18:49 -07:00
Max Brunsfeld
790b5558be web: 0.15.5 2019-05-31 11:14:45 -07:00
Max Brunsfeld
e58b69e3b8 Include type declarations in npm tarball 2019-05-31 11:14:29 -07:00
Max Brunsfeld
2084745152 0.15.4 2019-05-31 10:43:42 -07:00
Max Brunsfeld
31537a68c6 Bump library versions 2019-05-31 10:24:29 -07:00
Max Brunsfeld
b7bc2d30ae
Merge pull request #345 from tree-sitter/delete_nulls_safely
Make ts_tree_delete and ts_parser_delete NULL-safe.
2019-05-30 13:01:56 -07:00
Max Brunsfeld
f5163126c8 generate-fixtures-wasm: handle language repos w/ multiple grammars
Refs tree-sitter/tree-sitter-typescript#68
2019-05-30 12:34:03 -07:00
Patrick Thomson
6e2a60629c Make ts_tree_delete and ts_parser_delete NULL-safe.
Historically, `free(3)`-style functions have been NULL-safe, to make
resource handling functions more robust. This doesn't seem to be the
case with tree-sitter's `ts_tree_delete` and `ts_parser_delete` C
functions, which immediately dereference the passed pointer. This
leads to complexity in client libraries that have to ensure that trees
and parsers are cleaned up correctly.

This patch adds NULL checks to `parse_delete` and `tree_delete`. They
should have negligable performance impacts, since null checks are fast.

I didn't change the internal _delete functions, as arguably those
being NULL-unsafe is a feature, not a bug.
2019-05-30 11:47:56 -04:00
Max Brunsfeld
659f2825ba
Merge pull request #342 from georgewfraser/patch-1
Add type definitions
2019-05-28 15:31:23 -07:00
George Fraser
0fe67dc8b4 Dedent 2019-05-28 23:01:41 +01:00
Max Brunsfeld
6055108936 Wasm: 0.15.3 2019-05-28 13:00:17 -07:00
Max Brunsfeld
068f7b1a0c Wasm: Throw an exception if Parser is constructed before init() resolves 2019-05-28 12:59:00 -07:00
George Fraser
d4597e14f4
Reference tree-sitter-web.d.ts in package.json 2019-05-27 15:10:43 +01:00
George Fraser
a0d0ba9709
Add type definitions
This is based on https://github.com/tree-sitter/node-tree-sitter/blob/master/tree-sitter.d.ts with slight modifications because web-tree-sitter has a slightly different interface than node-tree-sitter
2019-05-27 15:08:29 +01:00
Federico
51345f3ea2 Ensure Point has column typeof number field 2019-05-24 14:34:04 +02:00
Max Brunsfeld
3ec91a8d8a Wasm: When in node, use fs APIs to load language wasm files
Fixes #338
2019-05-23 16:12:32 -07:00