MCPcopy Index your code
hub / github.com/ycm-core/YouCompleteMe / CommandRequest

Class CommandRequest

python/ycm/client/command_request.py:32–215  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

30
31
32class CommandRequest( BaseRequest ):
33 def __init__( self,
34 arguments,
35 extra_data = None,
36 silent = False,
37 location = None ):
38 super( CommandRequest, self ).__init__()
39 self._arguments = _EnsureBackwardsCompatibility( arguments )
40 self._command = arguments and arguments[ 0 ]
41 self._extra_data = extra_data
42 self._response = None
43 self._request_data = None
44 self._response_future = None
45 self._silent = silent
46 self._bufnr = extra_data.pop( 'bufnr', None ) if extra_data else None
47 self._location = location
48
49
50 def Start( self ):
51 if self._location is not None:
52 self._request_data = BuildRequestDataForLocation( *self._location )
53 elif self._bufnr is not None:
54 self._request_data = BuildRequestData( self._bufnr )
55 else:
56 self._request_data = BuildRequestData()
57
58 if self._extra_data:
59 self._request_data.update( self._extra_data )
60 self._request_data.update( {
61 'command_arguments': self._arguments
62 } )
63 self._response_future = self.PostDataToHandlerAsync(
64 self._request_data,
65 'run_completer_command' )
66
67
68 def Done( self ):
69 return bool( self._response_future ) and self._response_future.done()
70
71
72 def Response( self ):
73 if self._response is None and self._response_future is not None:
74 # Block
75 self._response = self.HandleFuture( self._response_future,
76 display_message = not self._silent )
77
78 return self._response
79
80
81 def RunPostCommandActionsIfNeeded( self,
82 modifiers,
83 buffer_command = DEFAULT_BUFFER_COMMAND ):
84
85 # This is a blocking call if not Done()
86 self.Response()
87
88 if self._response is None:
89 # An exception was raised and handled.

Callers 9

GoToTestFunction · 0.90
GoToListTestFunction · 0.90
setUpMethod · 0.90
_BasicResponseTestMethod · 0.90
EmptyFixItTestMethod · 0.90
FixItTestMethod · 0.90
MessageTestMethod · 0.90
DetailedInfoTestMethod · 0.90
SendCommandRequestAsyncFunction · 0.85

Calls

no outgoing calls

Tested by 8

GoToTestFunction · 0.72
GoToListTestFunction · 0.72
setUpMethod · 0.72
_BasicResponseTestMethod · 0.72
EmptyFixItTestMethod · 0.72
FixItTestMethod · 0.72
MessageTestMethod · 0.72
DetailedInfoTestMethod · 0.72