Max Brunsfeld
|
ebc52f109d
|
Merge branch 'flatten-rules-into-productions'
This branch had diverged considerably, so merging it required changing a lot
of code.
Conflicts:
project.gyp
spec/compiler/build_tables/action_takes_precedence_spec.cc
spec/compiler/build_tables/build_conflict_spec.cc
spec/compiler/build_tables/build_parse_table_spec.cc
spec/compiler/build_tables/first_symbols_spec.cc
spec/compiler/build_tables/item_set_closure_spec.cc
spec/compiler/build_tables/item_set_transitions_spec.cc
spec/compiler/build_tables/rule_can_be_blank_spec.cc
spec/compiler/helpers/containers.h
spec/compiler/prepare_grammar/expand_repeats_spec.cc
spec/compiler/prepare_grammar/extract_tokens_spec.cc
src/compiler/build_tables/action_takes_precedence.h
src/compiler/build_tables/build_parse_table.cc
src/compiler/build_tables/first_symbols.cc
src/compiler/build_tables/first_symbols.h
src/compiler/build_tables/item_set_closure.cc
src/compiler/build_tables/item_set_transitions.cc
src/compiler/build_tables/parse_item.cc
src/compiler/build_tables/parse_item.h
src/compiler/build_tables/rule_can_be_blank.cc
src/compiler/build_tables/rule_can_be_blank.h
src/compiler/prepare_grammar/expand_repeats.cc
src/compiler/prepare_grammar/extract_tokens.cc
src/compiler/prepare_grammar/extract_tokens.h
src/compiler/prepare_grammar/prepare_grammar.cc
src/compiler/rules/built_in_symbols.cc
src/compiler/rules/built_in_symbols.h
src/compiler/syntax_grammar.cc
src/compiler/syntax_grammar.h
|
2015-10-02 23:46:39 -07:00 |
|
Max Brunsfeld
|
e6f3239bef
|
Move stream operator definitions to spec helpers
This is one less thing for users to worry about when compiling and linking
the library itself
|
2015-09-10 10:12:11 -07:00 |
|
Max Brunsfeld
|
bd77ab1ac9
|
Move public rule functions out of rule namespace
This way, there's only one public namespace: tree_sitter
|
2015-09-03 17:49:20 -07:00 |
|
Max Brunsfeld
|
f9b057f3a9
|
clang-format everything
|
2015-07-27 18:29:48 -07:00 |
|
Max Brunsfeld
|
aabcb10cfb
|
Respect expected_conflicts field when building parse table
|
2015-06-28 16:22:31 -05:00 |
|
Max Brunsfeld
|
80ec303b10
|
Replace prec rule w/ left_assoc and right_assoc
Consider shift/reduce conflicts to be compilation errors unless
they are resolved by a specified associativity.
|
2015-03-16 23:12:34 -07:00 |
|
Max Brunsfeld
|
3458fa6e50
|
Fix non-deterministic order in conflict description
|
2015-03-07 11:02:21 -08:00 |
|
Max Brunsfeld
|
2d436cf141
|
Identify fragile reductions at compile time
|
2015-02-21 15:11:03 -08:00 |
|
Max Brunsfeld
|
98cc2f2264
|
Auto-format all source code with clang-format
|
2014-07-21 13:20:00 -07:00 |
|
Max Brunsfeld
|
f4287c07d0
|
Fix ParseStateId / size_t confusion in parse table
|
2014-07-07 13:21:30 -07:00 |
|
Max Brunsfeld
|
83a1b9439e
|
Fix handling of ubiquitous tokens used in grammar rules
|
2014-07-01 20:47:35 -07:00 |
|
Max Brunsfeld
|
9686c57e90
|
Allow ubiquitous tokens to also be used in grammar rules
|
2014-06-26 08:52:42 -07:00 |
|
Max Brunsfeld
|
25eda9d889
|
ISymbol -> Symbol
Interned symbols are now the main type of symbol in use
|
2014-04-28 20:43:27 -07:00 |
|
Max Brunsfeld
|
68d44fd565
|
Intern symbols during grammar preparation
|
2014-04-22 23:38:26 -07:00 |
|
Max Brunsfeld
|
a437d39773
|
Add rule precedence construct
Still need to add some way of expressing left and right
associativity
|
2014-04-15 08:40:46 -07:00 |
|
Max Brunsfeld
|
3982b73ed6
|
Start work on recording parse action conflicts
|
2014-04-08 08:19:55 -07:00 |
|
Max Brunsfeld
|
3f770ff3c3
|
Remove unused consumed_symbols vector from parse items
|
2014-03-26 21:04:11 -07:00 |
|
Max Brunsfeld
|
aac0786449
|
Resolve token conflicts by tokens' order in grammar
|
2014-03-24 19:18:06 -07:00 |
|
Max Brunsfeld
|
9cb92a0a96
|
Remove code related to old error recovery function
|
2014-03-24 13:17:38 -07:00 |
|
Max Brunsfeld
|
3aaa08b948
|
Fix some egregiously long lines
|
2014-03-09 23:58:25 -07:00 |
|
Max Brunsfeld
|
39cb420df2
|
Remove uses of 'short' and 'long'
|
2014-03-09 23:00:14 -07:00 |
|
Max Brunsfeld
|
a4120f36d4
|
Remove all uses of 'using namespace'
|
2014-03-09 22:45:33 -07:00 |
|
Max Brunsfeld
|
31a58bc7e4
|
Make include guards pass cpplint
|
2014-03-09 22:05:24 -07:00 |
|
Max Brunsfeld
|
eb30429700
|
Make paths explicit in #includes
|
2014-03-09 21:43:14 -07:00 |
|
Max Brunsfeld
|
39aa0ccc91
|
Add script to trim whitespace
|
2014-03-09 19:49:35 -07:00 |
|
Max Brunsfeld
|
63718d5bad
|
Add basic support for error recovery
|
2014-02-26 19:03:43 -08:00 |
|
Max Brunsfeld
|
e58a6d8ba7
|
Start work on error recovery
- In runtime, make parse errors part of the parse tree
- Add error state to lexers in which they can accept any token
|
2014-02-24 18:42:54 -08:00 |
|
Max Brunsfeld
|
2c56612650
|
Get makefile working
|
2014-02-18 09:07:00 -08:00 |
|
Max Brunsfeld
|
15c9e2d398
|
Make ordering of cases deterministic in generated parsers
|
2014-02-10 18:38:01 -08:00 |
|
Max Brunsfeld
|
7d297f2f9e
|
Remove auxiliary rules from syntax tree
|
2014-01-28 22:09:37 -08:00 |
|
Max Brunsfeld
|
ca33c3942a
|
In parse table, store symbols as Symbol objects, not strings
|
2014-01-27 13:40:10 -08:00 |
|
Max Brunsfeld
|
0877d01194
|
Add stream operator for parse states
|
2014-01-26 16:38:41 -08:00 |
|
Max Brunsfeld
|
5d9dc71da1
|
Remove default_actions from ParseTable
|
2014-01-25 23:40:51 -08:00 |
|
Max Brunsfeld
|
3ca2e126be
|
Remove unnecessary public START and END constants
|
2014-01-25 21:34:46 -08:00 |
|
Max Brunsfeld
|
5eb5b61c14
|
Don’t pass rule names to code generator separately from parse tables
|
2014-01-25 20:45:00 -08:00 |
|
Max Brunsfeld
|
92cec5758f
|
Reorganize compiler directory
|
2014-01-11 15:14:17 -08:00 |
|