From 3c4f1a4eca455a346a5265b6d64a89c0f932bb84 Mon Sep 17 00:00:00 2001 From: Adam Welc Date: Fri, 26 Jul 2024 11:21:01 -0700 Subject: [PATCH] Added 'address' to list of primitive types --- .../move/crates/move-analyzer/src/completion.rs | 12 ++++++++---- .../move-analyzer/tests/colon_colon_completion.exp | 3 +++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/external-crates/move/crates/move-analyzer/src/completion.rs b/external-crates/move/crates/move-analyzer/src/completion.rs index b19ad9cb777121..6467b5dd4fb59f 100644 --- a/external-crates/move/crates/move-analyzer/src/completion.rs +++ b/external-crates/move/crates/move-analyzer/src/completion.rs @@ -77,7 +77,7 @@ fn completion_item(label: &str, kind: CompletionItemKind) -> CompletionItem { /// all specification language keywords, but in the future it should be modified to only do so /// within a spec block. fn keywords() -> Vec { - KEYWORDS + let mut keywords = KEYWORDS .iter() .chain(CONTEXTUAL_KEYWORDS.iter()) .chain(PRIMITIVE_TYPES.iter()) @@ -89,15 +89,19 @@ fn keywords() -> Vec { }; completion_item(label, kind) }) - .collect() + .collect::>(); + keywords.extend(primitive_types()); + keywords } /// Return a list of completion items of Move's primitive types fn primitive_types() -> Vec { - PRIMITIVE_TYPES + let mut primitive_types = PRIMITIVE_TYPES .iter() .map(|label| completion_item(label, CompletionItemKind::KEYWORD)) - .collect() + .collect::>(); + primitive_types.push(completion_item("address", CompletionItemKind::KEYWORD)); + primitive_types } /// Return a list of completion items corresponding to each one of Move's builtin functions. diff --git a/external-crates/move/crates/move-analyzer/tests/colon_colon_completion.exp b/external-crates/move/crates/move-analyzer/tests/colon_colon_completion.exp index 8938bc1323f868..2fb27f6358117c 100644 --- a/external-crates/move/crates/move-analyzer/tests/colon_colon_completion.exp +++ b/external-crates/move/crates/move-analyzer/tests/colon_colon_completion.exp @@ -482,6 +482,7 @@ Keyword 'u128' Keyword 'u256' Keyword 'bool' Keyword 'vector' +Keyword 'address' -- test 18 ------------------- use line: 33, use_col: 37 @@ -505,6 +506,7 @@ Keyword 'u128' Keyword 'u256' Keyword 'bool' Keyword 'vector' +Keyword 'address' -- test 20 ------------------- use line: 38, use_col: 9 @@ -599,6 +601,7 @@ Keyword 'u128' Keyword 'u256' Keyword 'bool' Keyword 'vector' +Keyword 'address' TypeParameter 'SOME_TYPE' -- test 24 -------------------