Commit graph

2328 commits

Author SHA1 Message Date
Max Brunsfeld
bf4e1304f8 Start work on new ref API, for giving names to nodes' children
Co-Authored-By: Ayman Nadeem <aymannadeem@gmail.com>
2019-02-08 15:16:56 -08:00
Max Brunsfeld
dac13af206 cli: Always write parser.h in generate command 2019-02-08 15:16:38 -08:00
Max Brunsfeld
acd30d4693 Write grammar.json file when generating based on grammar.js 2019-02-08 15:15:47 -08:00
Max Brunsfeld
010d8f9c74 Implement Error for PropertySheetError 2019-02-06 19:43:06 -08:00
Max Brunsfeld
8db1b488e4 Make Node text methods take bytes 2019-02-06 19:42:47 -08:00
Max Brunsfeld
dcd4953498 0.14.3 2019-02-06 16:28:27 -08:00
Max Brunsfeld
4dc475b18c cli: Compile C++ external scanners with exceptions disabled 2019-02-06 16:19:08 -08:00
Max Brunsfeld
9b8bf8dfe2 cli: Compute fragile tokens *after* merging compatibile parse states
Previously, we failed to mark as fragile some tokens that *should* be 
fragile because of tokens that were introduced during parse state 
merging.
2019-02-06 16:18:49 -08:00
Max Brunsfeld
af694b4c13 cli: Fix exit code of parse subcommand 2019-02-06 16:17:35 -08:00
Max Brunsfeld
ccbb8c1cce Add context to error message when opening dynamic libraries 2019-02-06 16:03:50 -08:00
Max Brunsfeld
f239854f29 0.14.2 2019-02-06 13:23:49 -08:00
Max Brunsfeld
18085b9eb9 cli: Compile C++ files first when loading parsers 2019-02-06 13:07:03 -08:00
Max Brunsfeld
92a6a69625 cli: Don't error if parser load path contains a non-existent dir 2019-02-06 12:59:19 -08:00
Max Brunsfeld
b0b93291af 0.14.1 2019-02-06 11:56:31 -08:00
Max Brunsfeld
6d6e29f2dc Add usage info to version script 2019-02-06 11:56:12 -08:00
Max Brunsfeld
4badd7cc40 Disable compiler optimizations for lex functions in more cases
* Reduce the lexer state count threshold from 500 to 300
* Disable optimizations on clang and gcc in addition to MSVC

Optimizations in these source files don't seem to make any impact on
parsing performance, but they slow down compile time substantially.
2019-02-06 11:50:37 -08:00
Max Brunsfeld
a85ed086cc Define UTF8PROC_STATIC macro in the source
This way, there's one less flag you have to pass when building the
library on windows.
2019-02-06 10:42:29 -08:00
Max Brunsfeld
db8de605e6
Merge pull request #270 from vmg/vmg/fixes
Bytes/C Fixes
2019-02-06 10:41:41 -08:00
Max Brunsfeld
b925f6e136 Avoid using fall-through in get_changed_ranges
Also, clean up the that function a bit and add a few comments.
2019-02-06 10:24:15 -08:00
Max Brunsfeld
5c925b3868 cli: Check that extra rules aren't passed to functions like 'optional'
Fixes #247
2019-02-06 09:31:32 -08:00
Vicent Marti
a8cc082ce2 binding: Make walk_with_properties take an &[u8] 2019-02-06 10:10:55 +01:00
Vicent Marti
9a951c859d lib: Fix importing fdopen in parser.c 2019-02-06 10:10:38 +01:00
Vicent Marti
02bc9b5829 lib: Silence explicit fallthrough warning in GCC 2019-02-06 10:10:18 +01:00
Max Brunsfeld
f31a4a25b4 Avoid using '*' for cli's dependency on lib 2019-02-05 12:25:06 -08:00
Max Brunsfeld
58c41c88a7 cli: add missing cargo metadata 2019-02-05 12:22:02 -08:00
Max Brunsfeld
c3fc8c26df 0.14.0 2019-02-05 12:16:27 -08:00
Max Brunsfeld
695b6aff59 lib: fix cargo includes 2019-02-05 12:12:21 -08:00
Max Brunsfeld
0151051392 lib: 0.3.7 2019-02-05 12:05:18 -08:00
Max Brunsfeld
d7bc61cada Include parser header content in library crate 2019-02-05 11:59:34 -08:00
Max Brunsfeld
6194dfc247 Don't rely on PWD to find .git folder in build script 2019-02-05 11:55:12 -08:00
Max Brunsfeld
ba32f884a8 Add a version for the CLI's dependency on tree-sitter library 2019-02-05 11:43:10 -08:00
Max Brunsfeld
8edb6927d0 Update docs after Rust conversion 2019-02-05 11:34:01 -08:00
Max Brunsfeld
50281637d7 binding: Make parse methods more convenient
* Rename parse_str to parse and make it polymorphic.
* Rename parse_utf8 to parse_with, since it is now the callback-based
  version of parse
* Add a parse_utf16 method analogous to parse
* Rename existing parse_utf16 method to parse_utf16_with

This brings in the changes from tree-sitter/rust-tree-sitter#5
2019-02-05 10:59:33 -08:00
Max Brunsfeld
49392c8502
Merge pull request #260 from tree-sitter/rust-cli
Include CLI functionality in the main repo, using Rust instead of C++
2019-02-05 09:53:12 -08:00
Phil Turnbull
6df2adc803 clang must be >= 7 2019-02-05 13:38:00 +00:00
Phil Turnbull
d102c473e8 Remove invalid characters from grammar names 2019-02-05 13:37:59 +00:00
Phil Turnbull
ce040e21e1 trace-pc-guard is unsupported in newer versions of clang 2019-02-05 13:35:30 +00:00
Max Brunsfeld
efe79889be Port node tests 2019-02-04 20:42:56 -08:00
Max Brunsfeld
9a8cf39277 Add incremental parsing unit tests 2019-02-04 16:43:21 -08:00
Max Brunsfeld
4a98f0b87e Port unit test for missing tokens and included ranges 2019-02-04 14:44:06 -08:00
Max Brunsfeld
e62a8a2302 Port more parser unit tests 2019-02-04 10:38:44 -08:00
Max Brunsfeld
59f7511b1c Fix test command's exit code 2019-02-04 09:12:25 -08:00
Max Brunsfeld
b5c057ba04 0.14.0-beta4 2019-02-03 13:59:27 -08:00
Max Brunsfeld
6b8483c53c Start work on porting included range unit tests 2019-02-02 22:57:04 -08:00
Max Brunsfeld
d465850aba Add unit tests for ts_tree_get_changed_ranges 2019-02-02 14:00:11 -08:00
Max Brunsfeld
f263a4fbe3 Separate walk_with_properties tests from parser tests 2019-02-01 21:20:27 -08:00
Max Brunsfeld
6ca1047bb0 Remove ci shell script 2019-02-01 20:19:38 -08:00
Max Brunsfeld
e143710f4a Move properties module out of generate 2019-02-01 19:57:00 -08:00
Max Brunsfeld
91da7206b7 Clean up environment variables after windows batch scripts 2019-02-01 15:54:34 -08:00
Max Brunsfeld
4cac85fec4 Add benchmark script
* Structure `cli` crate as both a library and an executable, so that
benchmarks can import code from the crate.
* Import macros in the Rust 2018 style.
2019-02-01 15:17:35 -08:00