1
0
forked from VimPlug/jedi
This commit is contained in:
David Halter
2013-02-23 01:16:02 +04:30
parent 4d7aad4ce8
commit 6ab10b6fa1
2 changed files with 15 additions and 10 deletions

View File

@@ -589,7 +589,7 @@ class Execution(Executable):
# No value: return the default values. # No value: return the default values.
ignore_creation = True ignore_creation = True
result.append(param.get_name()) result.append(param.get_name())
param.is_generated=True param.is_generated = True
else: else:
# If there is no assignment detail, that means there is # If there is no assignment detail, that means there is
# no assignment, just the result. Therefore nothing has # no assignment, just the result. Therefore nothing has

View File

@@ -46,7 +46,8 @@ class Simple(Base):
The super class for Scope, Import, Name and Statement. Every object in The super class for Scope, Import, Name and Statement. Every object in
the parser tree inherits from this class. the parser tree inherits from this class.
""" """
__slots__ = ('parent', '_sub_module', '_start_pos', 'use_as_parent', '_end_pos') __slots__ = ('parent', '_sub_module', '_start_pos', 'use_as_parent',
'_end_pos')
def __init__(self, module, start_pos, end_pos=(None, None)): def __init__(self, module, start_pos, end_pos=(None, None)):
self._sub_module = module self._sub_module = module
@@ -59,7 +60,8 @@ class Simple(Base):
@property @property
def start_pos(self): def start_pos(self):
return self._sub_module.line_offset + self._start_pos[0], self._start_pos[1] return self._sub_module.line_offset + self._start_pos[0], \
self._start_pos[1]
@start_pos.setter @start_pos.setter
def start_pos(self, value): def start_pos(self, value):
@@ -69,7 +71,8 @@ class Simple(Base):
def end_pos(self): def end_pos(self):
if None in self._end_pos: if None in self._end_pos:
return self._end_pos return self._end_pos
return self._sub_module.line_offset + self._end_pos[0], self._end_pos[1] return self._sub_module.line_offset + self._end_pos[0], \
self._end_pos[1]
@end_pos.setter @end_pos.setter
def end_pos(self, value): def end_pos(self, value):
@@ -536,7 +539,8 @@ class ForFlow(Flow):
""" """
Used for the for loop, because there are two statement parts. Used for the for loop, because there are two statement parts.
""" """
def __init__(self, module, inputs, start_pos, set_stmt, is_list_comp=False): def __init__(self, module, inputs, start_pos, set_stmt,
is_list_comp=False):
super(ForFlow, self).__init__(module, 'for', inputs, start_pos, super(ForFlow, self).__init__(module, 'for', inputs, start_pos,
set_stmt.used_vars) set_stmt.used_vars)
self.set_stmt = set_stmt self.set_stmt = set_stmt
@@ -617,8 +621,8 @@ class Import(Simple):
return [self.alias] return [self.alias]
if len(self.namespace) > 1: if len(self.namespace) > 1:
o = self.namespace o = self.namespace
n = Name(self._sub_module, [(o.names[0], o.start_pos)], o.start_pos, n = Name(self._sub_module, [(o.names[0], o.start_pos)],
o.end_pos, parent=o.parent) o.start_pos, o.end_pos, parent=o.parent)
return [n] return [n]
else: else:
return [self.namespace] return [self.namespace]
@@ -885,7 +889,8 @@ class Statement(Simple):
def parse_list_comp(token_iterator, token_list, start_pos, end_pos): def parse_list_comp(token_iterator, token_list, start_pos, end_pos):
def parse_stmt_or_arr(token_iterator, added_breaks=()): def parse_stmt_or_arr(token_iterator, added_breaks=()):
stmt, tok = parse_stmt(token_iterator, added_breaks=added_breaks) stmt, tok = parse_stmt(token_iterator,
added_breaks=added_breaks)
if not stmt: if not stmt:
return None, tok return None, tok
if tok == ',': if tok == ',':
@@ -908,7 +913,8 @@ class Statement(Simple):
st = Statement(self._sub_module, [], [], token_list, start_pos, st = Statement(self._sub_module, [], [], token_list, start_pos,
end_pos) end_pos)
middle, tok = parse_stmt_or_arr(token_iterator, added_breaks=['in']) middle, tok = parse_stmt_or_arr(token_iterator,
added_breaks=['in'])
if tok != 'in' or middle is None: if tok != 'in' or middle is None:
debug.warning('list comprehension middle @%s' % str(start_pos)) debug.warning('list comprehension middle @%s' % str(start_pos))
return None, tok return None, tok
@@ -997,7 +1003,6 @@ class Statement(Simple):
stmt = Statement(self._sub_module, [], [], result, stmt = Statement(self._sub_module, [], [], result,
start_pos, end_pos, self.parent) start_pos, end_pos, self.parent)
stmt._commands = result stmt._commands = result
#add_el, t = parse_stmt(enumerate(self.token_list[start:i - 1]))
arr, break_tok = parse_array(token_iterator, Array.TUPLE, arr, break_tok = parse_array(token_iterator, Array.TUPLE,
stmt.start_pos, stmt) stmt.start_pos, stmt)
result = [arr] result = [arr]