From 34e3ea8cc85e98ddb65a2bc75ccfe4297fa7a0fb Mon Sep 17 00:00:00 2001 From: Swarnim Arun Date: Mon, 13 Mar 2023 16:38:26 +0530 Subject: [PATCH 1/2] feat: add `remove_slice` to `hir::Type` --- crates/hir/src/lib.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/crates/hir/src/lib.rs b/crates/hir/src/lib.rs index 25c07a2fbd..866641202c 100644 --- a/crates/hir/src/lib.rs +++ b/crates/hir/src/lib.rs @@ -3224,6 +3224,13 @@ impl Type { } } + pub fn remove_slice(&self) -> Option { + match &self.ty.kind(Interner) { + TyKind::Slice(ty) => Some(self.derived(ty.clone())), + _ => None, + } + } + pub fn strip_references(&self) -> Type { self.derived(self.ty.strip_references().clone()) } From cfbdf62344cad34f0d6b7ffcc9c0ed90e543e84a Mon Sep 17 00:00:00 2001 From: Swarnim Arun Date: Mon, 13 Mar 2023 17:28:37 +0530 Subject: [PATCH 2/2] fix: as suggested change `remove_slice` to `as_slice` --- crates/hir/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/hir/src/lib.rs b/crates/hir/src/lib.rs index 866641202c..bc6cd41e0d 100644 --- a/crates/hir/src/lib.rs +++ b/crates/hir/src/lib.rs @@ -3224,7 +3224,7 @@ impl Type { } } - pub fn remove_slice(&self) -> Option { + pub fn as_slice(&self) -> Option { match &self.ty.kind(Interner) { TyKind::Slice(ty) => Some(self.derived(ty.clone())), _ => None,