mirror of
https://github.com/davidhalter/jedi.git
synced 2025-12-06 22:14:27 +08:00
Don't make complicated subprocess calls for version info comparisons
This commit is contained in:
@@ -10,6 +10,7 @@ from jedi import debug
|
|||||||
from jedi import parser_utils
|
from jedi import parser_utils
|
||||||
from jedi.evaluate.base_context import ContextSet, NO_CONTEXTS, ContextualizedNode, \
|
from jedi.evaluate.base_context import ContextSet, NO_CONTEXTS, ContextualizedNode, \
|
||||||
ContextualizedName, iterator_to_context_set, iterate_contexts
|
ContextualizedName, iterator_to_context_set, iterate_contexts
|
||||||
|
from jedi.evaluate.lazy_context import LazyTreeContext
|
||||||
from jedi.evaluate import compiled
|
from jedi.evaluate import compiled
|
||||||
from jedi.evaluate import pep0484
|
from jedi.evaluate import pep0484
|
||||||
from jedi.evaluate import recursion
|
from jedi.evaluate import recursion
|
||||||
@@ -440,18 +441,15 @@ def _get_tuple_ints(context):
|
|||||||
return None
|
return None
|
||||||
numbers = []
|
numbers = []
|
||||||
for lazy_context in context.py__iter__():
|
for lazy_context in context.py__iter__():
|
||||||
result = lazy_context.infer()
|
if not isinstance(lazy_context, LazyTreeContext):
|
||||||
|
return None
|
||||||
|
node = lazy_context.data
|
||||||
|
if node.type != 'number':
|
||||||
|
return None
|
||||||
try:
|
try:
|
||||||
number, = result # Must be exactly one element
|
numbers.append(int(node.value))
|
||||||
except ValueError:
|
except ValueError:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
if not isinstance(number, compiled.CompiledValue):
|
|
||||||
return None
|
|
||||||
value = number.get_safe_value()
|
|
||||||
if not isinstance(value, int):
|
|
||||||
return None
|
|
||||||
numbers.append(value)
|
|
||||||
return numbers
|
return numbers
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user