forked from VimPlug/jedi
LazyInstanceClassName -> Use NameWrapper
This commit is contained in:
@@ -9,7 +9,7 @@ from parso.tree import search_ancestor
|
|||||||
|
|
||||||
from jedi._compatibility import use_metaclass
|
from jedi._compatibility import use_metaclass
|
||||||
from jedi.inference import flow_analysis
|
from jedi.inference import flow_analysis
|
||||||
from jedi.inference.base_value import ValueSet, Value, ValueWrapper, \
|
from jedi.inference.base_value import ValueSet, ValueWrapper, \
|
||||||
LazyValueWrapper
|
LazyValueWrapper
|
||||||
from jedi.parser_utils import get_cached_parent_scope
|
from jedi.parser_utils import get_cached_parent_scope
|
||||||
from jedi.inference.utils import to_list
|
from jedi.inference.utils import to_list
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ from abc import abstractmethod
|
|||||||
from parso.tree import search_ancestor
|
from parso.tree import search_ancestor
|
||||||
|
|
||||||
from jedi._compatibility import Parameter
|
from jedi._compatibility import Parameter
|
||||||
from jedi.parser_utils import clean_scope_docstring, find_statement_documentation
|
from jedi.parser_utils import find_statement_documentation
|
||||||
from jedi.inference.utils import unite
|
from jedi.inference.utils import unite
|
||||||
from jedi.inference.base_value import ValueSet, NO_VALUES
|
from jedi.inference.base_value import ValueSet, NO_VALUES
|
||||||
from jedi.inference import docstrings
|
from jedi.inference import docstrings
|
||||||
|
|||||||
@@ -8,7 +8,8 @@ from jedi.inference import compiled
|
|||||||
from jedi.inference.compiled.value import CompiledObjectFilter
|
from jedi.inference.compiled.value import CompiledObjectFilter
|
||||||
from jedi.inference.helpers import values_from_qualified_names
|
from jedi.inference.helpers import values_from_qualified_names
|
||||||
from jedi.inference.filters import AbstractFilter, AnonymousFunctionExecutionFilter
|
from jedi.inference.filters import AbstractFilter, AnonymousFunctionExecutionFilter
|
||||||
from jedi.inference.names import ValueName, TreeNameDefinition, ParamName
|
from jedi.inference.names import ValueName, TreeNameDefinition, ParamName, \
|
||||||
|
NameWrapper
|
||||||
from jedi.inference.base_value import Value, NO_VALUES, ValueSet, \
|
from jedi.inference.base_value import Value, NO_VALUES, ValueSet, \
|
||||||
iterator_to_value_set, ValueWrapper
|
iterator_to_value_set, ValueWrapper
|
||||||
from jedi.inference.lazy_value import LazyKnownValue, LazyKnownValues
|
from jedi.inference.lazy_value import LazyKnownValue, LazyKnownValues
|
||||||
@@ -507,23 +508,17 @@ class SelfName(TreeNameDefinition):
|
|||||||
return self._instance.create_instance_context(self.class_context, self.tree_name)
|
return self._instance.create_instance_context(self.class_context, self.tree_name)
|
||||||
|
|
||||||
|
|
||||||
class LazyInstanceClassName(object):
|
class LazyInstanceClassName(NameWrapper):
|
||||||
def __init__(self, instance, class_member_name):
|
def __init__(self, instance, class_member_name):
|
||||||
|
super(LazyInstanceClassName, self).__init__(class_member_name)
|
||||||
self._instance = instance
|
self._instance = instance
|
||||||
self._class_member_name = class_member_name
|
|
||||||
|
|
||||||
@iterator_to_value_set
|
@iterator_to_value_set
|
||||||
def infer(self):
|
def infer(self):
|
||||||
for result_value in self._class_member_name.infer():
|
for result_value in super(LazyInstanceClassName, self).infer():
|
||||||
for c in result_value.py__get__(self._instance, self._instance.py__class__()):
|
for c in result_value.py__get__(self._instance, self._instance.py__class__()):
|
||||||
yield c
|
yield c
|
||||||
|
|
||||||
def __getattr__(self, name):
|
|
||||||
return getattr(self._class_member_name, name)
|
|
||||||
|
|
||||||
def __repr__(self):
|
|
||||||
return '<%s: %s>' % (self.__class__.__name__, self._class_member_name)
|
|
||||||
|
|
||||||
|
|
||||||
class InstanceClassFilter(AbstractFilter):
|
class InstanceClassFilter(AbstractFilter):
|
||||||
"""
|
"""
|
||||||
|
|||||||
Reference in New Issue
Block a user