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
Max Brunsfeld
8d1b9501ab
Fix integer comparison warnings
2015-11-20 11:47:39 -08:00
Max Brunsfeld
16692be210
Merge pull request #8 from maxbrunsfeld/glr-with-differing-lex-states
...
Handle ambiguities where each interpretation expects different lexical tokens
2015-11-20 00:18:08 -08:00
Max Brunsfeld
ee66f1e774
Make vector.h compile when included by C++, w/o clang extensions
2015-11-20 00:11:17 -08:00
Max Brunsfeld
c88e9044d5
Make stack popping more robust
2015-11-20 00:04:21 -08:00
Max Brunsfeld
64874449e4
Allow different parse stack heads to lex differently
2015-11-19 20:55:18 -08:00