mirror of
https://github.com/davidhalter/jedi.git
synced 2025-12-08 06:44:46 +08:00
Fix goto_definitions being invoked on a parent class
When invoking `goto_definitions` on `RequestFactory` in line 5, it would
jump to `Client` after 27f05de:
```python
class RequestFactory(object):
pass
class Client(RequestFactory):
pass
```
Fixes https://github.com/davidhalter/jedi/issues/761.
This commit is contained in:
@@ -446,7 +446,9 @@ class Evaluator(object):
|
|||||||
def_ = name.get_definition()
|
def_ = name.get_definition()
|
||||||
is_simple_name = name.parent.type not in ('power', 'trailer')
|
is_simple_name = name.parent.type not in ('power', 'trailer')
|
||||||
if is_simple_name:
|
if is_simple_name:
|
||||||
if name.parent.type in ('file_input', 'classdef', 'funcdef'):
|
if name.parent.type == 'classdef' and name.parent.name == name:
|
||||||
|
return [self.wrap(name.parent)]
|
||||||
|
if name.parent.type in ('file_input', 'funcdef'):
|
||||||
return [self.wrap(name.parent)]
|
return [self.wrap(name.parent)]
|
||||||
if def_.type == 'expr_stmt' and name in def_.get_defined_names():
|
if def_.type == 'expr_stmt' and name in def_.get_defined_names():
|
||||||
return self.eval_statement(def_, name)
|
return self.eval_statement(def_, name)
|
||||||
|
|||||||
@@ -160,6 +160,7 @@ class Mixin(SuperClass):
|
|||||||
def method_mixin(self):
|
def method_mixin(self):
|
||||||
return int
|
return int
|
||||||
|
|
||||||
|
#? 20 SuperClass
|
||||||
class SubClass(SuperClass):
|
class SubClass(SuperClass):
|
||||||
class_sub = 3
|
class_sub = 3
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
|||||||
Reference in New Issue
Block a user