def GetCompletions(): request_data = RequestWrap(request.json) do_filetype_completion = _server_state.ShouldUseFiletypeCompleter( request_data) LOGGER.debug('Using filetype completion: %s', do_filetype_completion) errors = None completions = None if do_filetype_completion: try: filetype_completer = _server_state.GetFiletypeCompleter( request_data['filetypes']) completions = filetype_completer.ComputeCandidates(request_data) except Exception as exception: if request_data['force_semantic']: # user explicitly asked for semantic completion, so just pass the error # back raise # store the error to be returned with results from the identifier # completer LOGGER.exception( 'Exception from semantic completer (using general)') stack = traceback.format_exc() errors = [BuildExceptionResponse(exception, stack)] if not completions and not request_data['force_semantic']: completions = _server_state.GetGeneralCompleter().ComputeCandidates( request_data) return _JsonResponse( BuildCompletionResponse(completions if completions else [], request_data['start_column'], errors=errors))
def GetCompletions(): LOGGER.info( 'Received completion request' ) request_data = RequestWrap( request.json ) do_filetype_completion = SERVER_STATE.ShouldUseFiletypeCompleter( request_data ) filetypes = request_data[ 'filetypes' ] completer = ( SERVER_STATE.GetFiletypeCompleter( filetypes ) if do_filetype_completion else SERVER_STATE.GetGeneralCompleter() ) return _JsonResponse( BuildCompletionResponse( completer.ComputeCandidates( request_data ), request_data.CompletionStartColumn() ) )
def GetCompletions(): _logger.info('Received completion request') request_data = RequestWrap(request.json) do_filetype_completion = _server_state.ShouldUseFiletypeCompleter( request_data) _logger.debug('Using filetype completion: %s', do_filetype_completion) filetypes = request_data['filetypes'] completer = (_server_state.GetFiletypeCompleter(filetypes) if do_filetype_completion else _server_state.GetGeneralCompleter()) return _JsonResponse( BuildCompletionResponse(completer.ComputeCandidates(request_data), request_data.CompletionStartColumn()))
def GetCompletions(): _logger.info( 'Received completion request' ) request_data = RequestWrap( request.json ) ( do_filetype_completion, forced_filetype_completion ) = ( _server_state.ShouldUseFiletypeCompleter(request_data ) ) _logger.debug( 'Using filetype completion: %s', do_filetype_completion ) errors = None completions = None if do_filetype_completion: try: completions = ( _server_state.GetFiletypeCompleter( request_data[ 'filetypes' ] ) .ComputeCandidates( request_data ) ) except Exception as exception: if forced_filetype_completion: # user explicitly asked for semantic completion, so just pass the error # back raise else: # store the error to be returned with results from the identifier # completer stack = traceback.format_exc() _logger.error( 'Exception from semantic completer (using general): ' + "".join( stack ) ) errors = [ BuildExceptionResponse( exception, stack ) ] if not completions and not forced_filetype_completion: completions = ( _server_state.GetGeneralCompleter() .ComputeCandidates( request_data ) ) return _JsonResponse( BuildCompletionResponse( completions if completions else [], request_data.CompletionStartColumn(), errors = errors ) )