From a09d48380204fa948a3af397dc2188b93bf5793f Mon Sep 17 00:00:00 2001 From: Jonas Schievink Date: Tue, 14 Jul 2020 18:23:45 +0200 Subject: Thread varargs through r-a --- crates/ra_hir_def/src/item_tree/lower.rs | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'crates/ra_hir_def/src/item_tree/lower.rs') diff --git a/crates/ra_hir_def/src/item_tree/lower.rs b/crates/ra_hir_def/src/item_tree/lower.rs index 4182a9e3b..f79b8fca3 100644 --- a/crates/ra_hir_def/src/item_tree/lower.rs +++ b/crates/ra_hir_def/src/item_tree/lower.rs @@ -313,6 +313,14 @@ impl Ctx { params.push(type_ref); } } + + let mut is_varargs = false; + if let Some(params) = func.param_list() { + if let Some(last) = params.params().last() { + is_varargs = last.dotdotdot_token().is_some(); + } + } + let ret_type = match func.ret_type().and_then(|rt| rt.type_ref()) { Some(type_ref) => TypeRef::from_ast(&self.body_ctx, type_ref), _ => TypeRef::unit(), @@ -334,6 +342,7 @@ impl Ctx { has_self_param, is_unsafe: func.unsafe_token().is_some(), params: params.into_boxed_slice(), + is_varargs, ret_type, ast_id, }; -- cgit v1.2.3