1
- use serde:: de:: DeserializeOwned ;
2
- use std:: collections:: HashMap ;
3
- use serde_json:: Value ;
4
- use lsp_types:: Position ;
5
1
use crate :: viewport:: Viewport ;
6
2
use crate :: vim:: Vim ;
7
3
use failure:: Fallible ;
8
4
use lazycell:: LazyCell ;
5
+ use lsp_types:: Position ;
6
+ use serde:: de:: DeserializeOwned ;
7
+ use serde_json:: Value ;
8
+ use std:: collections:: HashMap ;
9
9
10
10
pub struct Context {
11
11
vim : Vim ,
@@ -25,9 +25,9 @@ impl Context {
25
25
bufname,
26
26
language_id : LazyCell :: new ( ) ,
27
27
viewport : LazyCell :: new ( ) ,
28
- position : LazyCell :: new ( ) ,
29
- current_word : LazyCell :: new ( ) ,
30
- text : LazyCell :: new ( ) ,
28
+ position : LazyCell :: new ( ) ,
29
+ current_word : LazyCell :: new ( ) ,
30
+ text : LazyCell :: new ( ) ,
31
31
prepopulated : HashMap :: new ( ) ,
32
32
}
33
33
}
@@ -45,45 +45,34 @@ impl Context {
45
45
let expr = "&filetype" ;
46
46
47
47
self . language_id . try_borrow_with ( || {
48
- self . try_get ( expr) ?. map_or_else ( || {
49
- self . vim . getbufvar ( & self . bufname , expr)
50
- } , Ok )
48
+ self . try_get ( expr) ?
49
+ . map_or_else ( || self . vim . getbufvar ( & self . bufname , expr) , Ok )
51
50
} )
52
51
}
53
52
54
53
pub fn get_viewport ( & self ) -> Fallible < & Viewport > {
55
54
let expr = "LSP#viewport()" ;
56
55
57
- self . viewport . try_borrow_with ( || {
58
- self . try_get ( expr) ?. map_or_else ( || {
59
- self . vim . eval ( expr)
60
- } , Ok )
61
- } )
56
+ self . viewport
57
+ . try_borrow_with ( || self . try_get ( expr) ?. map_or_else ( || self . vim . eval ( expr) , Ok ) )
62
58
}
63
59
64
60
pub fn get_position ( & self ) -> Fallible < & Position > {
65
61
let expr = "LSP#position()" ;
66
62
67
- self . position . try_borrow_with ( || {
68
- self . try_get ( expr) ?. map_or_else ( || {
69
- self . vim . eval ( expr)
70
- } , Ok )
71
- } )
63
+ self . position
64
+ . try_borrow_with ( || self . try_get ( expr) ?. map_or_else ( || self . vim . eval ( expr) , Ok ) )
72
65
}
73
66
74
67
pub fn get_current_word ( & self ) -> Fallible < & String > {
75
68
let expr = "expand('<cword>')" ;
76
69
77
- self . current_word . try_borrow_with ( || {
78
- self . try_get ( expr) ?. map_or_else ( || {
79
- self . vim . eval ( expr)
80
- } , Ok )
81
- } )
70
+ self . current_word
71
+ . try_borrow_with ( || self . try_get ( expr) ?. map_or_else ( || self . vim . eval ( expr) , Ok ) )
82
72
}
83
73
84
74
pub fn get_text ( & self , start : & str , end : & str ) -> Fallible < & Vec < String > > {
85
- self . text . try_borrow_with ( || {
86
- self . vim . getbufline ( & self . bufname , start, end)
87
- } )
75
+ self . text
76
+ . try_borrow_with ( || self . vim . getbufline ( & self . bufname , start, end) )
88
77
}
89
78
}
0 commit comments