Commit Graph

361 Commits (1c3c93d727c3bb833b224b062fd1f20eb085f962)
 

Author SHA1 Message Date
Amaan Qureshi 92af69fa84
deps: use `0.20.4` for C 2023-07-26 22:54:07 +07:00
Amaan Qureshi 81e46a7376
chore: remove unnecessary conflicts 2023-07-26 22:54:07 +07:00
Amaan Qureshi ba1f79fb1d
fix: allow `attribute_specifier` after `noexcept` 2023-07-26 22:52:10 +07:00
Amaan Qureshi c7dd622e7a
feat: add `alignas_specifier` and `alignof_expression` 2023-07-26 22:52:10 +07:00
Amaan Qureshi e99ad99231
fix: allow pointer declarators in qualified identifiers & `.*` in field expressions 2023-07-26 22:52:10 +07:00
Amaan Qureshi dbc1e2baac
fix: initializer lists can be the RHS of an assignment expression 2023-07-26 22:52:10 +07:00
Amaan Qureshi 3c898ed3f0
fix: backport `attribute_specifier` fixes from C 2023-07-25 06:35:59 +07:00
Amaan Qureshi eba14809da
fix: primitive types are allowed in compound literal expressions 2023-07-25 06:35:40 +07:00
Amaan Qureshi 2c7aff437d
Merge pull request #216 from amaanq/update
Update grammar from changes in C
2023-07-24 00:21:14 +07:00
Stephan Seitz b050649c68
refactor: remove unused function `skip` in scanner (#215) 2023-07-23 22:39:58 +07:00
Amaan Qureshi 745ad8f5dd
chore: generate 2023-07-23 22:49:10 +07:00
Amaan Qureshi 7ce69cb41d
fix: remove `_typedef_type_specifier`, use git version of tree-sitter-c 2023-07-23 22:47:15 +07:00
Amaan Qureshi 0dd318d271
fix: update `if_statement` to align with C 2023-07-23 22:31:45 +07:00
Amaan Qureshi cbb9974efd
0.20.1 2023-07-18 17:47:27 +07:00
Amaan Qureshi 8dc2b30756
Merge pull request #213 from amaanq/update-c
Update c
2023-07-18 17:46:21 +07:00
Amaan Qureshi 0e3608113e
ci: rework publish action to publish to both npm and crates.io, with logic to fail if the version bump is incorrect 2023-07-18 17:39:47 +07:00
Amaan Qureshi a702543247
chore: generate 2023-07-18 17:32:40 +07:00
Amaan Qureshi 7d975cd142
chore: update tests and queries 2023-07-18 17:32:40 +07:00
Amaan Qureshi 03aec3de1f
chore: update C to v0.20.3 2023-07-18 17:32:40 +07:00
Yoann Padioleau 0e7b7a02b6
Merge pull request #210 from amaanq/ci-lint
Add CI scripts + linting/formatting grammar.js
2023-06-21 10:29:30 +07:00
Amaan Qureshi 72160f477d
feat(ci): add test, lint, and fuzz scripts 2023-06-20 15:12:35 +07:00
Amaan Qureshi bef54737be
feat: add eslint formatting 2023-06-20 15:12:34 +07:00
Yoann Padioleau 2e29f23abc
Merge pull request #209 from amaanq/rewrite-it-in-c
feat: rewrite the scanner in C
2023-06-19 09:24:22 +07:00
Amaan Qureshi d8352a82f6
chore: update manifests 2023-06-18 10:02:35 +07:00
Amaan Qureshi 10d52591d2
feat: rewrite the scanner in C 2023-06-18 03:57:22 +07:00
Yoann Padioleau d63acf7c2a
Merge pull request #208 from vladh/master
Revert "add "this" keyword"
2023-06-14 11:44:58 +07:00
Vlad-Stefan Harbuz 09caf58a4f Revert "add "this" keyword"
This reverts commit 086dd299d4.
2023-06-14 11:18:59 +07:00
Yoann Padioleau 4c917d5605
Merge pull request #206 from XVilka/patch-1
Fix AppVeyor CI builds
2023-05-31 08:06:09 +07:00
Anton Kochkov a395cad14b
Fix AppVeyor CI builds
Update used Windows image and NodeJS version to the latest LTS
2023-05-31 11:19:36 +07:00
Yoann Padioleau 70aed2e9e8
Merge pull request #202 from vladh/patch-1
Add "this" keyword
2023-05-09 10:48:30 +07:00
Vlad-Ștefan Harbuz 086dd299d4
add "this" keyword 2023-05-08 22:13:27 +07:00
John Drouhard 670404d7c6 feat: support template friend declarations 2023-04-15 11:29:44 +07:00
John Drouhard 0b6d0eb9ab feat!: namespace rule tweaks
breaking change: namespace_definition_name has been renamed to
nested_namespace_specifier and the nesting has been reversed to match
the way normal scope resolution works elsewhere.

identifiers that are part of a namespace_definition are now
namespace_identifier, which matches the identifier node type used in
scope resolution for qualified types.

namespace alias definitions use the new nested_namespace_specifier so
all identifiers are namespace_identifier nodes.

support for top-level "inline" namespace declarations (which are valid
if they are nested in another namespace body).
2023-03-26 13:30:32 +07:00
Amaan Qureshi af15a5260b
feat: add missing fold operators (#195) 2023-03-25 10:30:48 +07:00
John Drouhard 03fa93db13 support alternate logical operators (and/or) in requires clauses
Fixes #193
2023-03-02 08:15:22 +07:00
Yoann Padioleau 66262d3e76
Merge pull request #191 from Luni-4/publish
Add an action to publish the grammar automatically
2023-02-22 10:24:05 +07:00
Luni-4 698a576166 Add an action to publish the grammar automatically 2023-02-21 15:12:44 +07:00
John Drouhard 56cec4c2eb feat!: support virtual inheritance
breaking changes:
- access_specifier is now a named node in base class clauses
- virtual_function_specifier node has been renamed to virtual
2023-01-27 11:24:06 +07:00
John Drouhard 5e9f44f632 reduce state count a bit more for function declarations; fix a few places where attributes can appear 2023-01-27 10:32:51 +07:00
John Drouhard bc8809507a reduce parse state count by combining class/struct/union declarations into one anonymous rule 2023-01-27 08:32:21 +07:00
John Drouhard 20beae977e change function declarator to more accurately parse all the possible components
Fixes #184
2023-01-25 22:19:59 +07:00
Yoann Padioleau 3845ff48d6
Merge pull request #190 from v1nh1shungry/alias-attr
support attribute in alias declaration
2023-01-22 12:18:17 +07:00
v1nh1shungry e2fcae8792 support attribute in alias declaration 2023-01-22 15:41:38 +07:00
Rebecca Valentine b9a11ddd09 Adds GH tags queries 2023-01-19 15:26:04 +07:00
John Drouhard 2d2c4aee86 enum_specifier: change to right precedence; fixes #187 2023-01-08 23:02:26 +07:00
John Drouhard 2b908639fd decltype(...) expressions can be used in qualified identifiers prior to scope resolution operators 2023-01-08 21:23:45 +07:00
John Drouhard b3bba3856a scanner: look for string_delimiter first to avoid error recovery hitting the content case and consuming the rest of the input 2023-01-08 20:51:14 +07:00
John Drouhard 115ce374e2 Revert "fix raw string literal external scanner so it doesn't treat EOF as creating a valid raw_string_content"
This reverts commit 5b7e264bc6.
2023-01-08 20:00:31 +07:00
John Drouhard 5b7e264bc6 fix raw string literal external scanner so it doesn't treat EOF as creating a valid raw_string_content 2023-01-08 13:22:08 +07:00
Sam McCall cf12e88166
Include rawstring delimiters in the tree, use for injections (#181)
Include rawstring delimiters in the tree, use for injections

In raw-strings, the delimiter can be used to indicate embedded language:

   R"css( body { background: red; } )css"

This patch adds the delimiter (if present) and raw-string content as
children of the raw_string_literal.

These can be used to parse the content with an injected grammar.

Fixes https://github.com/tree-sitter/tree-sitter-cpp/issues/159
2023-01-05 08:37:51 +07:00