Ejemplo n.º 1
0
 def _code_completions(self):
     lineno = self.code.count("\n", 0, self.offset) + 1
     fixer = fixsyntax.FixSyntax(self.pycore, self.code, self.resource, self.maxfixes)
     pymodule = fixer.get_pymodule()
     module_scope = pymodule.get_scope()
     code = pymodule.source_code
     lines = code.split("\n")
     result = {}
     start = fixsyntax._logical_start(lines, lineno)
     indents = fixsyntax._get_line_indents(lines[start - 1])
     inner_scope = module_scope.get_inner_scope_for_line(start, indents)
     if self.word_finder.is_a_name_after_from_import(self.offset):
         return self._from_import_completions(pymodule)
     if self.expression.strip() != "":
         result.update(self._dotted_completions(module_scope, inner_scope))
     else:
         result.update(self._keyword_parameters(module_scope.pyobject, inner_scope))
         self._undotted_completions(inner_scope, result, lineno=lineno)
     return result
Ejemplo n.º 2
0
 def _code_completions(self):
     lineno = self.code.count('\n', 0, self.offset) + 1
     fixer = fixsyntax.FixSyntax(self.pycore, self.code,
                                 self.resource, self.maxfixes)
     pymodule = fixer.get_pymodule()
     module_scope = pymodule.get_scope()
     code = pymodule.source_code
     lines = code.split('\n')
     result = {}
     start = fixsyntax._logical_start(lines, lineno)
     indents = fixsyntax._get_line_indents(lines[start - 1])
     inner_scope = module_scope.get_inner_scope_for_line(start, indents)
     if self.word_finder.is_a_name_after_from_import(self.offset):
         return self._from_import_completions(pymodule)
     if self.expression.strip() != '':
         result.update(self._dotted_completions(module_scope, inner_scope))
     else:
         result.update(self._keyword_parameters(module_scope.pyobject,
                                                inner_scope))
         self._undotted_completions(inner_scope, result, lineno=lineno)
     return result