Max Brunsfeld
df769721cb
Parse escape sequences
8年前
Max Brunsfeld
f8cab65c3a
Allow type qualifier lists in pointer declarators
Fixes tree-sitter/tree-sitter-cpp#7
8年前
Max Brunsfeld
3a185d00e2
Add explicit word token
Refs https://github.com/tree-sitter/tree-sitter/pull/176
8年前
Max Brunsfeld
9e21e17371
Allow preprocessor conditionals inside of field declaration lists
Co-Authored-By: Thomas Johansen <thomasjo@gmail.com>
8年前
Max Brunsfeld
cc0dff55a0
Don't allow newlines in system lib strings
8年前
Max Brunsfeld
95b1b4315e
Add _Atomic and restrict type qualifiers
8年前
Max Brunsfeld
96bbceecc8
Regenerate with latest tree-sitter
8年前
Max Brunsfeld
0c38b9f8c9
Handle identifier starting with 'false', 'true', etc
8年前
Max Brunsfeld
a76daa432c
Fix parsing of char16_t, char32_t
8年前
Max Brunsfeld
3a97441df7
Require a line break after an unknown preprocessor directive
8年前
Max Brunsfeld
e6c28cafb3
Avoid relying on old, non-standard tree-sitter regex feature
8年前
Max Brunsfeld
db8d3af84f
Add #elifs inside of #ifdefs
Signed-off-by: Nathan Sobo <nathan@github.com>
8年前
Max Brunsfeld
065bee2c23
Add preprocessor elif clauses
Signed-off-by: Nathan Sobo <nathan@github.com>
8年前
Max Brunsfeld
1e1f7c9cf8
Parse typedef names as type_identifiers
8年前
Max Brunsfeld
060b072223
Fix interpretation of 'unsigned' et al as standalone types
8年前
Max Brunsfeld
82b62611b6
Differentiate primitive types from other type names
8年前
Max Brunsfeld
d80749fc3f
Boost the dynamic precedence of parameter lists (mostly for C++)
8年前
Max Brunsfeld
c4ed85b79b
Call inline a storage class specifier like static
8年前
Max Brunsfeld
31c966ece2
Handle multi-line comments with asterisks at the end
8年前
Max Brunsfeld
f433b2bf8a
Tweak identifier naming convention
9年前
Max Brunsfeld
809cd89afe
Use new alias API
9年前
Max Brunsfeld
6147b5ecca
Rename label_name -> label, extract rules for identifier renames
9年前
Max Brunsfeld
7775b575e6
Differentiate between top-level items and those that appear in statement blocks
9年前
Max Brunsfeld
66003e2afc
Rename type_clause -> type_descriptor and pull out the parens
9年前
Max Brunsfeld
9e7706d922
Distinguish variables, types, fields and labels using renames
9年前
Max Brunsfeld
debe919f84
Allow whitespace after the # in preprocessor directives
9年前
Max Brunsfeld
d9c324ffce
Don't try to parse #if conditions as C expressions
Doing this required treating the newline that follows these conditions as significant
in order to avoid conflicts, but this caused problems for error recovery.
9年前
Max Brunsfeld
eb82660b87
Generalize the ordering of type and declaration specifiers
9年前
Max Brunsfeld
3f65e85781
Reuse declaration_specifiers rule in more places
9年前
Max Brunsfeld
ab0162ce37
Make member_declaration_list its own rule
9年前
Max Brunsfeld
42436c29ae
Allow simple abstract function declarators as in `sizeof(void * ())`
9年前
Max Brunsfeld
39a662907b
Make a named node for argument lists in call expressions
9年前
Max Brunsfeld
281e0cd60d
Add 'u' and 'l' suffixes on number literals
9年前
Max Brunsfeld
e64b56050e
Add preprocessor if blocks
9年前
Max Brunsfeld
8e8a968e3b
Fix handling of backslashes in string literals
9年前
Max Brunsfeld
9b715a2620
Add concatenated strings
9年前
Max Brunsfeld
fb51d81c99
Add comma expressions, make parenthesized expressions named rules
9年前
Max Brunsfeld
c2a7bd2d9c
Allow any type name in a macro-defined type
9年前
Max Brunsfeld
eed36b3f88
Allow object-like defines whose values start with parentheses
9年前
Max Brunsfeld
be2676ed3e
Allow empty initializer lists
9年前
Max Brunsfeld
f3ea61c8fe
Add C++ linkage specifiers, since they appear in .h files
9年前
Max Brunsfeld
367cd73ee2
Allow unsigned, short, etc to be their own types
9年前
Max Brunsfeld
0bb5d2faed
⬆️ tree-sitter-cli
9年前
Max Brunsfeld
46e5a1af6a
Add associativity to pointer declarators
9年前
Max Brunsfeld
7930ba3917
Only allow identifiers after the '.' in a field expression
9年前
Max Brunsfeld
e270a9c486
Remove error rules
10年前
Max Brunsfeld
f9a1ffa413
Add function-like macros as type specifiers
10年前
Max Brunsfeld
a309768a19
Add grammar.json file
10年前