mirror of
https://github.com/davidhalter/jedi.git
synced 2025-12-06 22:14:27 +08:00
Fix some more stuff because of newer parso changes.
This commit is contained in:
@@ -7,7 +7,6 @@ from textwrap import dedent
|
||||
|
||||
from parso.python.parser import Parser
|
||||
from parso.python import tree
|
||||
from parso.python.tokenize import tokenize
|
||||
from parso.utils import splitlines
|
||||
|
||||
from jedi._compatibility import u
|
||||
@@ -121,7 +120,9 @@ def get_stack_at_position(grammar, code_lines, module_node, pos):
|
||||
pass
|
||||
|
||||
def tokenize_without_endmarker(code):
|
||||
tokens = tokenize(code)
|
||||
# TODO This is for now not an official parso API that exists purely
|
||||
# for Jedi.
|
||||
tokens = grammar._tokenize(code)
|
||||
for token_ in tokens:
|
||||
if token_.string == safeword:
|
||||
raise EndMarkerReached()
|
||||
|
||||
@@ -180,7 +180,7 @@ class ContextualizedName(ContextualizedNode):
|
||||
node = self._node.parent
|
||||
compare = self._node
|
||||
while node is not None:
|
||||
if node.type in ('testlist_comp', 'testlist_star_expr', 'exprlist'):
|
||||
if node.type in ('testlist', 'testlist_comp', 'testlist_star_expr', 'exprlist'):
|
||||
for i, child in enumerate(node.children):
|
||||
if child == compare:
|
||||
indexes.insert(0, (int(i / 2), node))
|
||||
|
||||
@@ -199,7 +199,7 @@ def find_type_from_comment_hint_assign(context, node, name):
|
||||
|
||||
def _find_type_from_comment_hint(context, node, varlist, name):
|
||||
index = None
|
||||
if varlist.type in ("testlist_star_expr", "exprlist"):
|
||||
if varlist.type in ("testlist_star_expr", "exprlist", "testlist"):
|
||||
# something like "a, b = 1, 2"
|
||||
index = 0
|
||||
for child in varlist.children:
|
||||
|
||||
@@ -404,7 +404,7 @@ def test_func():
|
||||
#? str()
|
||||
x
|
||||
|
||||
|
||||
# python >= 3.3
|
||||
# -----------------
|
||||
# PEP 3132 Extended Iterable Unpacking (star unpacking)
|
||||
# -----------------
|
||||
|
||||
@@ -80,7 +80,7 @@ def test_hex_values_in_docstring():
|
||||
('lambda x, y, z: x + y * z\n', '<lambda>(x, y, z)')
|
||||
])
|
||||
def test_get_call_signature(code, call_signature):
|
||||
node = parse(code).children[0]
|
||||
node = parse(code, version='3.5').children[0]
|
||||
if node.type == 'simple_stmt':
|
||||
node = node.children[0]
|
||||
assert parser_utils.get_call_signature(node) == call_signature
|
||||
|
||||
Reference in New Issue
Block a user