1
0
forked from VimPlug/jedi

Fix filters for classes and functions

This commit is contained in:
Dave Halter
2019-07-01 22:24:29 -07:00
parent 3829ef4785
commit 1e3b6a201d
4 changed files with 50 additions and 46 deletions
+7 -2
View File
@@ -45,7 +45,7 @@ from jedi.evaluate import compiled
from jedi.evaluate.lazy_context import LazyKnownContexts
from jedi.evaluate.filters import ParserTreeFilter
from jedi.evaluate.names import TreeNameDefinition, ContextName
from jedi.evaluate.arguments import unpack_arglist
from jedi.evaluate.arguments import unpack_arglist, ValuesArguments
from jedi.evaluate.base_context import ContextSet, iterator_to_context_set, \
NO_CONTEXTS
from jedi.evaluate.context.function import FunctionAndClassBase
@@ -214,7 +214,12 @@ class ClassMixin(object):
type_ = builtin_from_name(self.evaluator, u'type')
assert isinstance(type_, ClassContext)
if type_ != self:
yield next(type_.get_filters())
for instance in type_.py__call__(ValuesArguments([])):
instance_filters = instance.get_filters()
# Filter out self filters
next(instance_filters)
next(instance_filters)
yield next(instance_filters)
class ClassContext(use_metaclass(CachedMetaClass, ClassMixin, FunctionAndClassBase)):