1
0
forked from VimPlug/jedi

Removed the dynamic_arrays_for_instances setting, because it's a subset of dynamic_array_additions, which is more concise.

This commit is contained in:
Dave Halter
2014-12-08 16:36:37 +01:00
parent 936a3c9dfe
commit 4c3584ed3c
2 changed files with 21 additions and 24 deletions

View File

@@ -539,14 +539,12 @@ def _check_array_additions(evaluator, compare_array, module, is_list):
def check_array_instances(evaluator, instance):
"""Used for set() and list() instances."""
if not settings.dynamic_array_additions:
return instance.var_args
if not settings.dynamic_arrays_instances:
return instance.var_args
ai = ArrayInstance(evaluator, instance)
return [ai]
from jedi.evaluate import param
return param.Arguments(evaluator, [AlreadyEvaluated([ai])])
class ArrayInstance(IterableWrapper):
@@ -567,8 +565,9 @@ class ArrayInstance(IterableWrapper):
"""
items = []
from jedi.evaluate.representation import Instance
for stmt in self.var_args:
for typ in self._evaluator.eval_statement(stmt):
for key, nodes in self.var_args.unpack():
for node in nodes:
for typ in self._evaluator.eval_element(node):
if isinstance(typ, Instance) and len(typ.var_args):
array = typ.var_args[0]
if isinstance(array, ArrayInstance):
@@ -578,11 +577,15 @@ class ArrayInstance(IterableWrapper):
self._evaluator.recursion_detector.pop_stmt()
items += get_iterator_types([typ])
# TODO remove?
"""
# TODO check if exclusion of tuple is a problem here.
if isinstance(self.var_args, tuple) or self.var_args.parent is None:
return [] # generated var_args should not be checked for arrays
"""
module = self.var_args.get_parent_until()
module = self.var_args.argument_node.get_parent_until()
is_list = str(self.instance.name) == 'list'
items += _check_array_additions(self._evaluator, self.instance, module, is_list)
return items

View File

@@ -37,7 +37,6 @@ Parser
Dynamic stuff
~~~~~~~~~~~~~
.. autodata:: dynamic_arrays_instances
.. autodata:: dynamic_array_additions
.. autodata:: dynamic_params
.. autodata:: dynamic_params_for_other_modules
@@ -148,14 +147,9 @@ function is being reparsed.
# dynamic stuff
# ----------------
dynamic_arrays_instances = True
"""
Check for `append`, etc. on array instances like list()
"""
dynamic_array_additions = True
"""
check for `append`, etc. on arrays: [], {}, ()
check for `append`, etc. on arrays: [], {}, () as well as list/set calls.
"""
dynamic_params = True