1
Fork 0
mirror of https://github.com/RGBCube/cstree synced 2025-09-12 16:17:57 +00:00
Commit graph

118 commits

Author SHA1 Message Date
e66a5fc775
text: add SyntaxText::rfind_char 2025-07-29 23:18:06 +03:00
DQ
11e2269627
Merge pull request #78 from domenicquirl/internal/chores
Chore: Edition and Dependency Updates
2025-07-29 21:23:37 +02:00
Domenic Quirl
a85ed08485 update changelog 2025-07-29 21:11:48 +02:00
Domenic Quirl
9c64a715cb bump (unreleased) crate version to 0.13.0 2025-07-29 21:11:35 +02:00
Domenic Quirl
e7fddb3e3d chore: bump the version of criterion used for benchmarking 2025-07-29 21:09:40 +02:00
Domenic Quirl
f531eeed29 chore: bump dependency minor versions 2025-07-29 21:04:59 +02:00
Domenic Quirl
8708fda02f update to Rust edition 2024 2025-07-29 21:00:18 +02:00
Domenic Quirl
de990819b1 bump MSRV to Rust 1.85 to support Edition 2024 2025-07-29 20:44:15 +02:00
d006fcbcfe
treewide: specify lifetimes correctly (#77)
don't overrestrict lifetimes, prefer `use<...>` to prevent `impl Trait` from capturing too much
2025-07-29 18:54:24 +02:00
a8ebf29808
Fix overly restrictive derive(Clone)s (#74)
Previously, we couldn't clone `SyntaxNodeChildren<S, D>` if D wasn't `Clone`,
but `D` doesn't get cloned, so this is misleading and overly restrictive.

This patch fixes that & other structs that did the same thing.
2025-07-12 17:27:24 +02:00
27c40cbf01
Fix clippy lints (#75) 2025-07-12 10:31:17 +02:00
fb8cc54104
Implement Resolver and Interner for Arc<MultiThreadedTokenInterner> (#72)
* Implement traits for Arc<MultiThreadedTokenInterner>

* implement Resolver for Arc<Resolver>, update docs
2025-03-20 22:33:19 +01:00
e90300f4fc
use rustc_hash instead of fxhash (#73)
* use rustc_hash instead of fxhash

* implement debug properly
2025-03-20 22:18:26 +01:00
DQ
c061bf5a6b
Migrate to stable strict provenance APIs and elide some redundant lifetimes (#71)
* elide unnecessary lifetimes in `PartialEq` impls for `Symbol`

* remove strict provenance polyfill after std APIs are now stable

this raises MSRV to 1.84

* elide more redundant lifetimes

---------

Co-authored-by: Domenic Quirl <DomenicQuirl@protonmail.com>
2025-02-02 18:43:46 +01:00
DQ
6c62982f67 [CI] Update built-in GitHub Actions to v4 2025-02-02 18:19:54 +01:00
DQ
d602fe22eb
Support backtracking and Checkpoints across nodes (#68)
* Add [`GreenTreeBuilder::revert`] to support backtracking parsers

Rowan, and hence CSTree, is designed around hand-written parsers.
In particular, the APIs for *building* trees require that each token is recorded only once.

Some parsers, and especially parser combinators, use backtracking instead, where the same token may be seen multiple times.
To support this, add a new `revert` function which discards all tokens seen since the last checkpoint.

* allow checkpointing across nodes (within reason)

* clean up asserts and expand documentation

* add Changelog entry

* prepare v0.12.2 release

---------

Co-authored-by: jyn <github@jyn.dev>
Co-authored-by: Domenic Quirl <DomenicQuirl@protonmail.com>
2024-11-01 13:47:49 +01:00
DQ
7f8515844d
Prepare v0.12.1 release (#66)
* [Deps] bump indexmap to v2

* bump version to 0.12.1

---------

Co-authored-by: Domenic Quirl <DomenicQuirl@protonmail.com>
2024-08-21 18:03:21 +02:00
Alona Enraght-Moony
1080120348
implement Hash and Eq for ResolvedNode and ResolvedToken. (#63)
These simply forward to the impls for SyntaxNode and SyntaxToken respectivly.
2024-08-21 17:47:47 +02:00
DQ
1babdb03ee
[CI] Cancel in progress jobs (plus readonly permissions) (#65)
Co-authored-by: Domenic Quirl <DomenicQuirl@protonmail.com>
2024-08-20 20:37:16 +02:00
DQ
70e9f92d3e
[Deps] Update criterion to v0.5 (#64)
* [Deps] update criterion to 0.5

* make clippy happy

---------

Co-authored-by: Domenic Quirl <DomenicQuirl@protonmail.com>
2024-08-20 20:17:38 +02:00
DQ
4d1c90a56f
[Changelog] add additional note for upgrading with lasso compat 2024-06-22 12:00:23 +02:00
DQ
b793b75f23
Clean up redundant doc links (#62) 2023-09-03 14:10:39 +02:00
Domenic Quirl
3606ac007a adapt serde tests to new adjacently tagged enum repr 2023-08-10 21:20:00 +02:00
Domenic Quirl
1314baf058 update renamed lint that was moved into rustc 2023-08-10 19:56:46 +02:00
Domenic Quirl
03ac773d0e fix rustfmt complaints 2023-08-10 19:49:31 +02:00
Klas Segeljakt
057d51f6e1
Fix typo in README.md (#61) 2023-06-27 17:00:25 +02:00
DQ
9c0a22f87f
Version 0.12.0 (#60) 2023-06-12 20:36:49 +02:00
DQ
c9a776d118
Bump triomphe to 0.1.8 (#59) 2023-06-12 20:15:27 +02:00
Isaac Hung
2173cc3c96
Feature gate triomphe/serde behind cstree/serialize (#58) 2023-06-12 20:02:20 +02:00
DQ
574adbde8f
Update CHANGELOG.md 2023-04-26 20:22:12 +02:00
DQ
39c8cd125e
Prepare release candidate for publishing (#57) 2023-04-25 20:30:18 +02:00
DQ
f3ad677de8
Update README shields (#56) 2023-04-25 11:32:11 +02:00
DQ
47179dab79
Prepare release candidate (#55) 2023-04-19 21:48:09 +02:00
DQ
64e94d7d30
Enable sparse registry protocol in CI (#54) 2023-04-19 20:08:03 +02:00
DQ
b4d07fbf65
Update CI workflows (#53) 2023-04-18 22:36:02 +02:00
DQ
30597dbb8b
Support and use cargo nextest (#52) 2023-04-18 21:40:28 +02:00
DQ
c5279bae7d
Add derive macro for Syntax (used to be Language) (#51) 2023-04-18 20:10:35 +02:00
DQ
2aa543036f
Use 32 bits for RawSyntaxKind internally (#49) 2023-04-07 19:18:47 +02:00
DQ
8750498b7a
Bump parking_lot dependency (#48) 2023-04-07 18:49:00 +02:00
DQ
16f7a3bd80
Set up a module structure (#44) 2023-04-07 18:06:51 +02:00
dawn
baa0a9f2f0
remove extra bracket in docs of ResolvedToken (#46) 2022-11-26 14:30:52 +01:00
DQ
e7b00a603e
Performance Improvements (#43)
- add `Language::static_text` and optimize static tokens
 - re-use existing `ThinArc`s in `GreenNodeBuilder::finish_node`
 - replace `*mut` in `SyntaxNode` with `NonNull`
 - add CHANGELOG
2022-08-25 22:22:45 +02:00
Domenic Quirl
9be9dc9597 bump version to 2022-07-07 19:49:12 +02:00
DQ
21dcf99f04
Fix Stacked Borrows violations (Miri) (#37)
Co-authored-by: Domenic Quirl <DomenicQuirl@protonmail.com>
2022-07-07 19:38:14 +02:00
DQ
2ffeb0e166
Use strict provenance for pointer tagging (#36) 2022-07-01 10:44:24 +02:00
DQ
f187aba06c
[CI] increase delay between scheduled pipelines
7d --> 20d (now 1st and 21st of month)
2022-06-01 20:23:00 +02:00
Domenic Quirl
152b0b0838 new version 0.11 2022-02-20 12:55:16 +01:00
DQ
ac7c383f74
Merge pull request #34 from domenicquirl/feature/fold-chunks 2022-02-20 09:53:00 +01:00
Domenic Quirl
f88b980ed1 use fold_chunks in for_each_chunk 2022-02-20 09:41:43 +01:00
Domenic Quirl
2b084c6f82 add SyntaxText::fold_chunks #33 2022-02-20 09:39:36 +01:00