Commit graph

930 commits

Author SHA1 Message Date
Max Brunsfeld
d2bf88d5fe Include rows and columns in TSLength
This way, we don't have to have separate 1D and 2D versions for so many values
2015-12-04 20:20:29 -08:00
Max Brunsfeld
22c76fc71b Remove TSLength from runtime header
Refactor node functions now that character offset and byte offset are stored separately
2015-12-04 10:45:30 -08:00
Max Brunsfeld
8e217f758c Use individual args instead of TSLength in input seek function 2015-12-03 23:06:01 -08:00
Max Brunsfeld
b3a6de6dad Replace node pos/size functions with start/end char/byte functions 2015-12-03 22:59:27 -08:00
Max Brunsfeld
fe5286f863 Merge pull request #11 from maxbrunsfeld/move-ubiquitous-tokens-outward
Put ubiquitous tokens as high in the tree as possible
2015-12-03 10:06:50 -08:00
Max Brunsfeld
8a146a9bef Reset lexer correctly when old input was blank 2015-12-03 10:00:39 -08:00
Max Brunsfeld
e32fe07432 Merge pull request #10 from maxbrunsfeld/more-symbol-metadata
Provide more metadata about symbols in TSLanguage struct
2015-12-02 16:01:17 -08:00
Max Brunsfeld
863cabc827 Don't include trailing ubiquitous tokens as children when reducing 2015-12-02 15:31:15 -08:00
Max Brunsfeld
ad619d95f6 Add 'extra' field to symbol metadata
This stores whether a symbol is only ever used as a ubiquitous token. This will
allow ubiquitous nodes to be reused more effectively: if they are always
ubiquitous, then they can be reused immediately, and otherwise, they must be
broken down in case they need to be used structurally.
2015-12-02 15:10:24 -08:00
Max Brunsfeld
64e56f5acc Add assignments to C grammar
This creates another source of ambiguity: assignments vs initializations
for declarations. This is good for testing ambiguity handling
2015-12-02 15:10:24 -08:00
Max Brunsfeld
f08554e958 Replace NodeType enum with SymbolMetadata bitfield
This will allow storing other metadata about symbols, like if they
only appear as ubiquitous tokens
2015-12-02 15:10:24 -08:00
Max Brunsfeld
53424699e4 Comment all the steps of prepare_grammar 2015-12-02 14:56:59 -08:00
Max Brunsfeld
b7decfa52e Merge pull request #9 from joshvera/line-numbers
Track row/column ranges in TSNodes
2015-12-02 14:54:47 -08:00
joshvera
06c790e16e declare ts_point_make before using it 2015-12-02 17:51:06 -05:00
joshvera
144aab22e6 missed two 2015-12-02 17:47:46 -05:00
joshvera
debf5205fb Don't use c-style structs 2015-12-02 17:44:14 -05:00
joshvera
883bb87e29 add asserts for points in language_specs 2015-12-02 17:29:10 -05:00
joshvera
2df2b58d3e Move point helpers elsewhere 2015-12-02 17:28:52 -05:00
joshvera
e52c38a68f Work correctly when node's offset point is zero 2015-12-02 17:12:32 -05:00
joshvera
14bc05b8ac Fix some names and add more tests 2015-12-02 17:12:00 -05:00
joshvera
4953182707 add row to node equality 2015-12-02 16:45:20 -05:00
joshvera
7ad82cf684 add const 2015-12-02 16:45:12 -05:00
joshvera
da8e48bf09 fix test names 2015-12-02 16:45:08 -05:00
joshvera
5e748fdf63 s/ts_tree_offset_point/ts_tree_total_size_point 2015-12-02 16:41:56 -05:00
joshvera
e674094f64 Sum the offset_point like offset in ts_tree_assign_parents 2015-12-02 16:41:40 -05:00
joshvera
3f9c8b76de Add padding_point.row to ts_node_start_point's row. 2015-12-02 16:41:16 -05:00
joshvera
94a46d9ae1 Add more start_point and end_point tests 2015-12-02 16:40:56 -05:00
joshvera
cc4bd82e8a Fix failing tests using find 2015-12-02 16:06:55 -05:00
joshvera
9da4aeaeff columns start at 0 for sanity's sake 2015-11-30 17:22:47 -05:00
joshvera
dc3818987c start points from zero 2015-11-30 16:54:10 -05:00
joshvera
cc77889d11 combine logs 2015-11-30 14:19:50 -05:00
joshvera
88d3432787 Merge remote-tracking branch 'joshvera/line-numbers' into line-numbers 2015-11-30 13:06:54 -05:00
joshvera
7633cbb836 indentation 2015-11-30 12:59:23 -05:00
joshvera
4af3b7d0fd Add offset_point to LookaheadState 2015-11-30 12:50:16 -05:00
joshvera
f5fc247c8b Merge remote-tracking branch 'origin/master' into line-numbers 2015-11-30 12:36:11 -05:00
joshvera
4cbc4b8bcf Revert "try starting from 1"
This reverts commit 11efff2442.
2015-11-30 12:16:58 -05:00
joshvera
2dc63f2c30 Revert "start the root node from 1"
This reverts commit 7fab9e2c42.
2015-11-30 12:16:49 -05:00
joshvera
7fab9e2c42 start the root node from 1 2015-11-25 14:28:52 -05:00
joshvera
11efff2442 try starting from 1 2015-11-25 14:25:11 -05:00
joshvera
3d9a44d880 Calculate the column and offset separately in TSNode 2015-11-25 13:36:19 -05:00
joshvera
1687d66776 expose ts_node start and end point functions 2015-11-25 11:57:39 -05:00
joshvera
4663b9ce89 Add padding and size points to ts_tree_make_leaf in ts_lexer__accept 2015-11-25 11:44:13 -05:00
joshvera
ad58b752e6 Rename ts_tree_total_size_point to ts_tree_offset_point 2015-11-25 11:28:28 -05:00
joshvera
2669933d06 Implement ts_find_parent_offset_point 2015-11-25 11:08:44 -05:00
Max Brunsfeld
ce27c2ee97 🔥 variable accidentally left in for debugging 2015-11-20 13:12:32 -08:00
Max Brunsfeld
c28db44cd9 🎨 2015-11-20 13:10:11 -08:00
Max Brunsfeld
32b1088823 Rename HeadState -> LookaheadState, remove parser.lookahead field 2015-11-20 12:55:01 -08:00
Max Brunsfeld
467930a785 Move some ts_language functions to the right file 2015-11-20 12:00:49 -08:00
Max Brunsfeld
5c95d02bd0 Move ts_tree_compare to the right file 2015-11-20 11:53:03 -08:00
Max Brunsfeld
7aba2a0716 Rename DEBUG macro to LOG
DEBUG is already used as the symbol to enable/disable assert() calls
2015-11-20 11:50:50 -08:00