mirror of
https://github.com/davidhalter/jedi.git
synced 2025-12-18 19:45:57 +08:00
default arguments should now always be the right ones
This commit is contained in:
15
evaluate.py
15
evaluate.py
@@ -351,10 +351,10 @@ class Execution(Executable):
|
|||||||
var_arg_iterator = self.get_var_args_iterator()
|
var_arg_iterator = self.get_var_args_iterator()
|
||||||
|
|
||||||
non_matching_keys = []
|
non_matching_keys = []
|
||||||
|
keys_only = False
|
||||||
for param in self.base.params[start_offset:]:
|
for param in self.base.params[start_offset:]:
|
||||||
# The value and key can both be null. There, the defaults apply.
|
# The value and key can both be null. There, the defaults apply.
|
||||||
# args / kwargs will just be empty arrays / dicts, respectively.
|
# args / kwargs will just be empty arrays / dicts, respectively.
|
||||||
keys_only = False
|
|
||||||
key, value = next(var_arg_iterator, (None, None))
|
key, value = next(var_arg_iterator, (None, None))
|
||||||
while key:
|
while key:
|
||||||
try:
|
try:
|
||||||
@@ -637,13 +637,12 @@ class ArrayElement(object):
|
|||||||
super(ArrayElement, self).__init__()
|
super(ArrayElement, self).__init__()
|
||||||
self.name = name
|
self.name = name
|
||||||
|
|
||||||
@property
|
def __getattr__(self, name):
|
||||||
def parent(self):
|
# set access rights:
|
||||||
return self.name.parent
|
if name in ['parent', 'names', 'line_nr', 'indent']:
|
||||||
|
return getattr(self.name, name)
|
||||||
@property
|
else:
|
||||||
def names(self):
|
raise NotImplementedError("Strange access, shouldn't happen!")
|
||||||
return self.name.names
|
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<%s of %s>" % (self.__class__.__name__, self.name)
|
return "<%s of %s>" % (self.__class__.__name__, self.name)
|
||||||
|
|||||||
12
parsetest.py
12
parsetest.py
@@ -172,9 +172,9 @@ def decorated(a,b):
|
|||||||
return a,b
|
return a,b
|
||||||
exe = decorated(frozenset, '')
|
exe = decorated(frozenset, '')
|
||||||
exe[1].
|
exe[1].
|
||||||
def gen():
|
|
||||||
yield 1
|
def rev(a=1, b=""):
|
||||||
yield ""
|
return a, b
|
||||||
gen_exe = gen()
|
|
||||||
#? ['upper']
|
|
||||||
next(gen_exe).
|
rev(b=list, a=set)[1].
|
||||||
|
|||||||
Reference in New Issue
Block a user