Function -> FunctionContext and fakes use the FunctionContext, too.

This commit is contained in:
Dave Halter
2016-10-25 09:59:42 +02:00
parent 64b6396d19
commit 90af0c36e0
9 changed files with 72 additions and 54 deletions

View File

@@ -6,7 +6,7 @@ from abc import abstractmethod
from jedi.parser.tree import search_ancestor
from jedi.evaluate import flow_analysis
from jedi.common import to_list
from jedi.common import to_list, unite
class AbstractNameDefinition():
@@ -28,6 +28,12 @@ class AbstractNameDefinition():
return '<%s: %s>' % (type(self).__name__, self.string_name)
return '<%s: %s@%s>' % (type(self).__name__, self.string_name, self.start_pos)
def execute(self, arguments):
return unite(context.execute(arguments) for context in self.infer())
def execute_evaluated(self, *args, **kwargs):
return unite(context.execute(*args, **kwargs) for context in self.infer())
class ContextName(AbstractNameDefinition):
def __init__(self, parent_context, name):