@@ -29,16 +29,11 @@ impl LSPServer {
29
29
match context. trigger_character ?. as_str ( ) {
30
30
"." => Some ( CompletionList {
31
31
is_incomplete : false ,
32
- items : self
33
- . srcs
34
- . get_dot_completions (
35
- token. trim_end_matches ( '.' ) ,
36
- file. text . pos_to_byte ( & doc. position ) ,
37
- & doc. text_document . uri ,
38
- )
39
- . iter ( )
40
- . map ( |s| s. to_completion ( & file. text ) )
41
- . collect ( ) ,
32
+ items : self . srcs . get_dot_completions (
33
+ token. trim_end_matches ( '.' ) ,
34
+ file. text . pos_to_byte ( & doc. position ) ,
35
+ & doc. text_document . uri ,
36
+ ) ,
42
37
} ) ,
43
38
"$" => Some ( CompletionList {
44
39
is_incomplete : false ,
@@ -54,16 +49,11 @@ impl LSPServer {
54
49
CompletionTriggerKind :: TRIGGER_FOR_INCOMPLETE_COMPLETIONS => None ,
55
50
CompletionTriggerKind :: INVOKED => {
56
51
debug ! ( "Invoked Completion" ) ;
57
- let mut comps: Vec < CompletionItem > = self
58
- . srcs
59
- . get_completions (
60
- & token,
61
- file. text . pos_to_byte ( & doc. position ) ,
62
- & doc. text_document . uri ,
63
- )
64
- . iter ( )
65
- . map ( |s| s. to_completion ( & file. text ) )
66
- . collect ( ) ;
52
+ let mut comps: Vec < CompletionItem > = self . srcs . get_completions (
53
+ & token,
54
+ file. text . pos_to_byte ( & doc. position ) ,
55
+ & doc. text_document . uri ,
56
+ ) ;
67
57
// complete keywords
68
58
comps. extend :: < Vec < CompletionItem > > (
69
59
keyword_completions ( KEYWORDS )
@@ -86,16 +76,11 @@ impl LSPServer {
86
76
match trigger {
87
77
'.' => Some ( CompletionList {
88
78
is_incomplete : false ,
89
- items : self
90
- . srcs
91
- . get_dot_completions (
92
- token. trim_end_matches ( '.' ) ,
93
- file. text . pos_to_byte ( & doc. position ) ,
94
- & doc. text_document . uri ,
95
- )
96
- . iter ( )
97
- . map ( |s| s. to_completion ( & file. text ) )
98
- . collect ( ) ,
79
+ items : self . srcs . get_dot_completions (
80
+ token. trim_end_matches ( '.' ) ,
81
+ file. text . pos_to_byte ( & doc. position ) ,
82
+ & doc. text_document . uri ,
83
+ ) ,
99
84
} ) ,
100
85
'$' => Some ( CompletionList {
101
86
is_incomplete : false ,
@@ -106,16 +91,11 @@ impl LSPServer {
106
91
items : other_completions ( DIRECTIVES ) ,
107
92
} ) ,
108
93
_ => {
109
- let mut comps: Vec < CompletionItem > = self
110
- . srcs
111
- . get_completions (
112
- & token,
113
- file. text . pos_to_byte ( & doc. position ) ,
114
- & doc. text_document . uri ,
115
- )
116
- . iter ( )
117
- . map ( |s| s. to_completion ( & file. text ) )
118
- . collect ( ) ;
94
+ let mut comps: Vec < CompletionItem > = self . srcs . get_completions (
95
+ & token,
96
+ file. text . pos_to_byte ( & doc. position ) ,
97
+ & doc. text_document . uri ,
98
+ ) ;
119
99
comps. extend :: < Vec < CompletionItem > > (
120
100
keyword_completions ( KEYWORDS )
121
101
. iter ( )
@@ -751,6 +731,7 @@ endinterface"#;
751
731
} ) ,
752
732
} ;
753
733
let response: CompletionResponse = server. completion ( completion_params) . unwrap ( ) ;
734
+ dbg ! ( & response) ;
754
735
if let CompletionResponse :: List ( item) = response {
755
736
// eprintln!("{:#?}", item);
756
737
let names: Vec < & String > = item. items . iter ( ) . map ( |x| & x. label ) . collect ( ) ;
0 commit comments