diff options
| author | Jubilee <workingjubilee@gmail.com> | 2025-06-24 19:45:29 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-06-24 19:45:29 -0700 |
| commit | 4f477427b81bba86e8b761a5fb5b52635b82d54e (patch) | |
| tree | 0a66aa0f6d0e28614d6060d4185bcbf163bc7394 /compiler/rustc_hir_pretty/src/lib.rs | |
| parent | 3de5b08ef6b260277dd4c77f7472fe6904bd6002 (diff) | |
| parent | afdb54a673243c83660417b540af888f7690f0fb (diff) | |
| download | rust-4f477427b81bba86e8b761a5fb5b52635b82d54e.tar.gz rust-4f477427b81bba86e8b761a5fb5b52635b82d54e.zip | |
Rollup merge of #135731 - frank-king:feature/pin-borrow, r=eholk,traviscross
Implement parsing of pinned borrows This PR implements part of #130494. EDIT: It introduces `&pin mut $place` and `&pin const $place` as sugars for `std::pin::pin!($place)` and its shared reference equivalent, except that `$place` will not be moved when borrowing. The borrow check will be in charge of enforcing places cannot be moved or mutably borrowed since being pinned till dropped. ### Implementation steps: - [x] parse the `&pin mut $place` and `&pin const $place` syntaxes - [ ] borrowck of `&pin mut|const` - [ ] support autoref of `&pin mut|const` when needed
Diffstat (limited to 'compiler/rustc_hir_pretty/src/lib.rs')
| -rw-r--r-- | compiler/rustc_hir_pretty/src/lib.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/rustc_hir_pretty/src/lib.rs b/compiler/rustc_hir_pretty/src/lib.rs index d3289e4cc6d..ff87d3dec6e 100644 --- a/compiler/rustc_hir_pretty/src/lib.rs +++ b/compiler/rustc_hir_pretty/src/lib.rs @@ -1335,6 +1335,10 @@ impl<'a> State<'a> { self.word_nbsp("raw"); self.print_mutability(mutability, true); } + hir::BorrowKind::Pin => { + self.word_nbsp("pin"); + self.print_mutability(mutability, true); + } } self.print_expr_cond_paren(expr, self.precedence(expr) < ExprPrecedence::Prefix); } |
