1
0
forked from VimPlug/jedi

Remove python_version_match from publish_method

This commit is contained in:
Dave Halter
2020-07-02 03:04:14 +02:00
parent 6e184bca97
commit 1fbe0d8d2e
3 changed files with 7 additions and 12 deletions

View File

@@ -265,12 +265,7 @@ class SpecialMethodFilter(DictFilter):
class SpecialMethodName(AbstractNameDefinition): class SpecialMethodName(AbstractNameDefinition):
api_type = u'function' api_type = u'function'
def __init__(self, parent_context, string_name, value, builtin_value): def __init__(self, parent_context, string_name, callable_, builtin_value):
callable_, python_version = value
if python_version is not None and \
python_version != parent_context.inference_state.environment.version_info.major:
raise KeyError
self.parent_context = parent_context self.parent_context = parent_context
self.string_name = string_name self.string_name = string_name
self._callable = callable_ self._callable = callable_
@@ -344,9 +339,9 @@ class AttributeOverwrite(_AttributeOverwriteMixin, ValueWrapper,
pass pass
def publish_method(method_name, python_version_match=None): def publish_method(method_name):
def decorator(func): def decorator(func):
dct = func.__dict__.setdefault('registered_overwritten_methods', {}) dct = func.__dict__.setdefault('registered_overwritten_methods', {})
dct[method_name] = func, python_version_match dct[method_name] = func
return func return func
return decorator return decorator

View File

@@ -52,8 +52,8 @@ class GeneratorBase(LazyAttributeOverwrite, IterableMixin):
return ValueSet([self]) return ValueSet([self])
@publish_method('send') @publish_method('send')
@publish_method('next', python_version_match=2) @publish_method('next')
@publish_method('__next__', python_version_match=3) @publish_method('__next__')
def py__next__(self, arguments): def py__next__(self, arguments):
return ValueSet.from_sets(lazy_value.infer() for lazy_value in self.py__iter__()) return ValueSet.from_sets(lazy_value.infer() for lazy_value in self.py__iter__())

View File

@@ -260,8 +260,8 @@ class ReversedObject(AttributeOverwrite):
def py__iter__(self, contextualized_node): def py__iter__(self, contextualized_node):
return self._iter_list return self._iter_list
@publish_method('next', python_version_match=2) @publish_method('next')
@publish_method('__next__', python_version_match=3) @publish_method('__next__')
def py__next__(self, arguments): def py__next__(self, arguments):
return ValueSet.from_sets( return ValueSet.from_sets(
lazy_value.infer() for lazy_value in self._iter_list lazy_value.infer() for lazy_value in self._iter_list