Commit graph

20456 commits

Author SHA1 Message Date
Aleksey Kladov aa1788dc71 clarify semantics of doc links 2021-12-28 17:00:55 +03:00
Aleksey Kladov f9e06e6524 last use of parse api in ssr 2021-12-28 17:00:55 +03:00
Aleksey Kladov 45bba40079 dead code 2021-12-28 17:00:55 +03:00
Aleksey Kladov 55f1564101 remove fragments from syntax 2021-12-28 17:00:55 +03:00
Aleksey Kladov dacbc6a69a move the rest of ssr parsing to fragments 2021-12-28 17:00:55 +03:00
Aleksey Kladov 7e9c74d20b drop dead code 2021-12-28 17:00:55 +03:00
Aleksey Kladov 2cbfcf431e add ssr fragment for statements 2021-12-28 17:00:55 +03:00
Aleksey Kladov df2a996cb0 add ssr fragment for expressions 2021-12-28 17:00:55 +03:00
Aleksey Kladov 2d373dc53c verify during parse 2021-12-28 17:00:55 +03:00
Aleksey Kladov b8b9655236 add test 2021-12-28 17:00:55 +03:00
Aleksey Kladov f0fefde401 remove Item::parse 2021-12-28 17:00:55 +03:00
Aleksey Kladov b468bd6645 internal: start isolating ssr-related parsing APIs to SSR 2021-12-28 17:00:55 +03:00
Aleksey Kladov 634c7682c9 add missing test 2021-12-28 17:00:55 +03:00
Aleksey Kladov 8794892432 dead code 2021-12-28 17:00:55 +03:00
Aleksey Kladov afffa096f6 add TopEntryPoint 2021-12-28 17:00:55 +03:00
Aleksey Kladov 8e7fc7be65 simplify 2021-12-28 17:00:55 +03:00
Aleksey Kladov 369001615f move path 2021-12-28 17:00:55 +03:00
Aleksey Kladov c5d8a9b341 move expr 2021-12-28 17:00:55 +03:00
Aleksey Kladov 04ae18de29 move ty 2021-12-28 17:00:55 +03:00
Aleksey Kladov 5636bef2ec move pat to prefix entry points 2021-12-28 17:00:55 +03:00
Aleksey Kladov f10f51833c move stmt to entry points 2021-12-28 17:00:55 +03:00
Aleksey Kladov 519ee21bcb internal: move block to prefix entry point 2021-12-28 17:00:55 +03:00
Aleksey Kladov 350d5dc152 internal: move visibility to a prefix entry point 2021-12-28 17:00:55 +03:00
Aleksey Kladov abc658aad0 internal: add prefix entry points 2021-12-28 17:00:55 +03:00
Aleksey Kladov d3ba55bd06 cleanup imports 2021-12-28 17:00:55 +03:00
Aleksey Kladov 23ce31e836 simplify 2021-12-28 17:00:55 +03:00
bors[bot] 4d3ad04a9c
Merge #11131
11131: internal: avoid speculation when completing macros r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-12-28 13:52:52 +00:00
Aleksey Kladov 177a183e85 minor: simplify 2021-12-28 16:52:15 +03:00
Aleksey Kladov 56b51852c2 minor: dedup 2021-12-28 16:52:15 +03:00
Aleksey Kladov 726da9884b avoid speculation when completing macros 2021-12-28 16:52:15 +03:00
bors[bot] d6c3070017
Merge #11128
11128: import style r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-12-28 10:53:02 +00:00
Aleksey Kladov 621ba1c2d3 import style 2021-12-28 13:52:40 +03:00
bors[bot] 05f7924c77
Merge #11127
11127: internal: Set a timeout on the Octokit client r=lnicola a=lnicola

CC #11056

Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-12-28 09:04:26 +00:00
Laurențiu Nicola 5aa0d129de Set a timeout on the Octokit client 2021-12-28 11:03:54 +02:00
bors[bot] 5c11b363df
Merge #11125
11125: minor r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-12-27 18:46:05 +00:00
Aleksey Kladov 42ff46c1e8 minor 2021-12-27 21:45:42 +03:00
bors[bot] 68319187d6
Merge #11122
11122: Remove note about alpha status from vscode extension descritpion r=lnicola a=aDotInTheVoid

See https://github.com/rust-analyzer/rust-analyzer.github.io/pull/156 and https://github.com/rust-analyzer/rust-analyzer/pull/8237

Co-authored-by: Nixon Enraght-Moony <nixon.emoony@gmail.com>
2021-12-27 06:47:01 +00:00
Nixon Enraght-Moony 6ebb9ffd2a
Remove note about alpha status from vscode extension descritpion
See https://github.com/rust-analyzer/rust-analyzer.github.io/pull/156 and https://github.com/rust-analyzer/rust-analyzer/pull/8237
2021-12-27 01:26:25 +00:00
bors[bot] 3494d817b3
Merge #11120
11120: internal: move parser tests to parser crate r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-12-26 15:54:02 +00:00
Aleksey Kladov 8e9734e18f fix line endings 2021-12-26 18:46:21 +03:00
Aleksey Kladov b360ea91f2 internal: move inline parser tests to parser crate 2021-12-26 18:19:09 +03:00
Aleksey Kladov 0f74758fea internal: move outlined parser tests 2021-12-26 17:58:33 +03:00
bors[bot] f2f57489db
Merge #11118
11118: internal: move ws attachment logic to the parser crate r=matklad a=matklad

This has to re-introduce the `sink` pattern, because doing this purely
with iterators is awkward :( Maaaybe the event vector was a false start?

But, anyway, I like the current factoring more -- it sort-of obvious
that we do want to keep ws-attachment business in the parser, and that
we also don't want that to depend on the particular tree structure. I
think `shortcuts` module achieves that.

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-12-26 13:49:59 +00:00
Aleksey Kladov f4cb0ff9be internal: move ws attachment logic to the parser crate
This has to re-introduce the `sink` pattern, because doing this purely
with iterators is awkward :( Maaaybe the event vector was a false start?

But, anyway, I like the current factoring more -- it sort-of obvious
that we do want to keep ws-attachment business in the parser, and that
we also don't want that to depend on the particular tree structure. I
think `shortcuts` module achieves that.
2021-12-26 16:47:10 +03:00
bors[bot] c456b217d8
Merge #11117
11117: internal: replace TreeSink with a data structure  r=matklad a=matklad

The general theme of this is to make parser a better independent
library.

The specific thing we do here is replacing callback based TreeSink with
a data structure. That is, rather than calling user-provided tree
construction methods, the parser now spits out a very bare-bones tree,
effectively a log of a DFS traversal.

This makes the parser usable without any *specifc* tree sink, and allows
us to, eg, move tests into this crate.

Now, it's also true that this is a distinction without a difference, as
the old and the new interface are equivalent in expressiveness. Still,
this new thing seems somewhat simpler. But yeah, I admit I don't have a
suuper strong motivation here, just a hunch that this is better.

cc #10765 

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-12-25 19:13:56 +00:00
Aleksey Kladov f692fafee8 rename 2021-12-25 22:03:57 +03:00
Aleksey Kladov 74de79b1da internal: rename 2021-12-25 22:02:26 +03:00
Aleksey Kladov d0d05075ed internal: replace TreeSink with a data structure
The general theme of this is to make parser a better independent
library.

The specific thing we do here is replacing callback based TreeSink with
a data structure. That is, rather than calling user-provided tree
construction methods, the parser now spits out a very bare-bones tree,
effectively a log of a DFS traversal.

This makes the parser usable without any *specifc* tree sink, and allows
us to, eg, move tests into this crate.

Now, it's also true that this is a distinction without a difference, as
the old and the new interface are equivalent in expressiveness. Still,
this new thing seems somewhat simpler. But yeah, I admit I don't have a
suuper strong motivation here, just a hunch that this is better.
2021-12-25 22:02:26 +03:00
bors[bot] 2f63558dc5
Merge #11116
11116: ⬆️ expect test r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-12-25 14:42:16 +00:00
Aleksey Kladov 5d01f2550d ⬆️ expect test 2021-12-25 17:41:17 +03:00