1
0
forked from VimPlug/jedi

ValueualizedName -> ContextualizedName

Basically a change back to an older version
This commit is contained in:
Dave Halter
2019-08-18 00:57:29 +02:00
parent f61246bf13
commit 4415de010d
8 changed files with 25 additions and 25 deletions

View File

@@ -75,7 +75,7 @@ from jedi.inference import recursion
from jedi.inference.cache import inference_state_function_cache from jedi.inference.cache import inference_state_function_cache
from jedi.inference import helpers from jedi.inference import helpers
from jedi.inference.names import TreeNameDefinition, ParamName from jedi.inference.names import TreeNameDefinition, ParamName
from jedi.inference.base_value import ValueualizedName, ValueualizedNode, \ from jedi.inference.base_value import ContextualizedName, ContextualizedNode, \
ValueSet, NO_VALUES, iterate_values ValueSet, NO_VALUES, iterate_values
from jedi.inference.value import ClassValue, FunctionValue, \ from jedi.inference.value import ClassValue, FunctionValue, \
AnonymousInstance, BoundMethod AnonymousInstance, BoundMethod
@@ -255,9 +255,9 @@ class InferenceState(object):
return infer_expr_stmt(context, def_, name) return infer_expr_stmt(context, def_, name)
if type_ == 'for_stmt': if type_ == 'for_stmt':
container_types = context.infer_node(def_.children[3]) container_types = context.infer_node(def_.children[3])
cn = ValueualizedNode(context, def_.children[3]) cn = ContextualizedNode(context, def_.children[3])
for_types = iterate_values(container_types, cn) for_types = iterate_values(container_types, cn)
c_node = ValueualizedName(context, name) c_node = ContextualizedName(context, name)
return check_tuple_assignments(c_node, for_types) return check_tuple_assignments(c_node, for_types)
if type_ in ('import_from', 'import_name'): if type_ in ('import_from', 'import_name'):
return imports.infer_import(context, name) return imports.infer_import(context, name)

View File

@@ -9,7 +9,7 @@ from jedi.inference import analysis
from jedi.inference.lazy_value import LazyKnownValue, LazyKnownValues, \ from jedi.inference.lazy_value import LazyKnownValue, LazyKnownValues, \
LazyTreeValue, get_merged_lazy_value LazyTreeValue, get_merged_lazy_value
from jedi.inference.names import ParamName, TreeNameDefinition from jedi.inference.names import ParamName, TreeNameDefinition
from jedi.inference.base_value import NO_VALUES, ValueSet, ValueualizedNode from jedi.inference.base_value import NO_VALUES, ValueSet, ContextualizedNode
from jedi.inference.value import iterable from jedi.inference.value import iterable
from jedi.inference.cache import inference_state_as_method_param_cache from jedi.inference.cache import inference_state_as_method_param_cache
from jedi.inference.param import get_executed_params_and_issues, ExecutedParam from jedi.inference.param import get_executed_params_and_issues, ExecutedParam
@@ -302,9 +302,9 @@ class TreeArguments(AbstractArguments):
break break
if arguments.argument_node is not None: if arguments.argument_node is not None:
return [ValueualizedNode(arguments.context, arguments.argument_node)] return [ContextualizedNode(arguments.context, arguments.argument_node)]
if arguments.trailer is not None: if arguments.trailer is not None:
return [ValueualizedNode(arguments.context, arguments.trailer)] return [ContextualizedNode(arguments.context, arguments.trailer)]
return [] return []

View File

@@ -292,7 +292,7 @@ class TreeValue(Value):
return '<%s: %s>' % (self.__class__.__name__, self.tree_node) return '<%s: %s>' % (self.__class__.__name__, self.tree_node)
class ValueualizedNode(object): class ContextualizedNode(object):
def __init__(self, context, node): def __init__(self, context, node):
self.context = context self.context = context
self.node = node self.node = node
@@ -307,7 +307,7 @@ class ValueualizedNode(object):
return '<%s: %s in %s>' % (self.__class__.__name__, self.node, self.context) return '<%s: %s in %s>' % (self.__class__.__name__, self.node, self.context)
class ValueualizedName(ValueualizedNode): class ContextualizedName(ContextualizedNode):
# TODO merge with TreeNameDefinition?! # TODO merge with TreeNameDefinition?!
@property @property
def name(self): def name(self):

View File

@@ -8,8 +8,8 @@ from parso.python import tree
from jedi._compatibility import force_unicode, unicode from jedi._compatibility import force_unicode, unicode
from jedi import debug from jedi import debug
from jedi import parser_utils from jedi import parser_utils
from jedi.inference.base_value import ValueSet, NO_VALUES, ValueualizedNode, \ from jedi.inference.base_value import ValueSet, NO_VALUES, ContextualizedNode, \
ValueualizedName, iterator_to_value_set, iterate_values ContextualizedName, iterator_to_value_set, iterate_values
from jedi.inference.lazy_value import LazyTreeValue from jedi.inference.lazy_value import LazyTreeValue
from jedi.inference import compiled from jedi.inference import compiled
from jedi.inference import recursion from jedi.inference import recursion
@@ -157,7 +157,7 @@ def infer_trailer(context, atom_values, trailer):
trailer_op, node, _ = trailer.children trailer_op, node, _ = trailer.children
return atom_values.get_item( return atom_values.get_item(
_infer_subscript_list(context, node), _infer_subscript_list(context, node),
ValueualizedNode(context, trailer) ContextualizedNode(context, trailer)
) )
else: else:
debug.dbg('infer_trailer: %s in %s', trailer, atom_values) debug.dbg('infer_trailer: %s in %s', trailer, atom_values)
@@ -300,7 +300,7 @@ def _infer_expr_stmt(context, stmt, seek_name=None):
value_set = context.infer_node(rhs) value_set = context.infer_node(rhs)
if seek_name: if seek_name:
c_node = ValueualizedName(context, seek_name) c_node = ContextualizedName(context, seek_name)
value_set = check_tuple_assignments(c_node, value_set) value_set = check_tuple_assignments(c_node, value_set)
first_operator = next(stmt.yield_operators(), None) first_operator = next(stmt.yield_operators(), None)
@@ -318,7 +318,7 @@ def _infer_expr_stmt(context, stmt, seek_name=None):
# only in for loops without clutter, because they are # only in for loops without clutter, because they are
# predictable. Also only do it, if the variable is not a tuple. # predictable. Also only do it, if the variable is not a tuple.
node = for_stmt.get_testlist() node = for_stmt.get_testlist()
cn = ValueualizedNode(context, node) cn = ContextualizedNode(context, node)
ordered = list(cn.infer().iterate(cn)) ordered = list(cn.infer().iterate(cn))
for lazy_value in ordered: for lazy_value in ordered:
@@ -595,13 +595,13 @@ def tree_name_to_values(inference_state, context, tree_name):
try: try:
types = context.predefined_names[node][tree_name.value] types = context.predefined_names[node][tree_name.value]
except KeyError: except KeyError:
cn = ValueualizedNode(context, node.children[3]) cn = ContextualizedNode(context, node.children[3])
for_types = iterate_values( for_types = iterate_values(
cn.infer(), cn.infer(),
valueualized_node=cn, valueualized_node=cn,
is_async=node.parent.type == 'async_stmt', is_async=node.parent.type == 'async_stmt',
) )
c_node = ValueualizedName(context, tree_name) c_node = ContextualizedName(context, tree_name)
types = check_tuple_assignments(c_node, for_types) types = check_tuple_assignments(c_node, for_types)
elif typ == 'expr_stmt': elif typ == 'expr_stmt':
types = _remove_statements(context, node, tree_name) types = _remove_statements(context, node, tree_name)
@@ -680,7 +680,7 @@ def check_tuple_assignments(valueualized_name, value_set):
""" """
lazy_value = None lazy_value = None
for index, node in valueualized_name.assignment_indexes(): for index, node in valueualized_name.assignment_indexes():
cn = ValueualizedNode(valueualized_name.context, node) cn = ContextualizedNode(valueualized_name.context, node)
iterated = value_set.iterate(cn) iterated = value_set.iterate(cn)
if isinstance(index, slice): if isinstance(index, slice):
# For no star unpacking is not possible. # For no star unpacking is not possible.

View File

@@ -2,7 +2,7 @@ import os
from jedi._compatibility import unicode, force_unicode, all_suffixes from jedi._compatibility import unicode, force_unicode, all_suffixes
from jedi.inference.cache import inference_state_method_cache from jedi.inference.cache import inference_state_method_cache
from jedi.inference.base_value import ValueualizedNode from jedi.inference.base_value import ContextualizedNode
from jedi.inference.helpers import is_string from jedi.inference.helpers import is_string
from jedi.common.utils import traverse_parents from jedi.common.utils import traverse_parents
from jedi.parser_utils import get_cached_code_lines from jedi.parser_utils import get_cached_code_lines
@@ -60,7 +60,7 @@ def _paths_from_assignment(module_context, expr_stmt):
except AssertionError: except AssertionError:
continue continue
cn = ValueualizedNode(module_context.create_context(expr_stmt), expr_stmt) cn = ContextualizedNode(module_context.create_context(expr_stmt), expr_stmt)
for lazy_value in cn.infer().iterate(cn): for lazy_value in cn.infer().iterate(cn):
for value in lazy_value.infer(): for value in lazy_value.infer():
if is_string(value): if is_string(value):

View File

@@ -12,7 +12,7 @@ from jedi.inference.signature import TreeSignature
from jedi.inference.arguments import AnonymousArguments from jedi.inference.arguments import AnonymousArguments
from jedi.inference.filters import ParserTreeFilter, FunctionExecutionFilter from jedi.inference.filters import ParserTreeFilter, FunctionExecutionFilter
from jedi.inference.names import ValueName, AbstractNameDefinition, ParamName from jedi.inference.names import ValueName, AbstractNameDefinition, ParamName
from jedi.inference.base_value import ValueualizedNode, NO_VALUES, \ from jedi.inference.base_value import ContextualizedNode, NO_VALUES, \
ValueSet, TreeValue, ValueWrapper ValueSet, TreeValue, ValueWrapper
from jedi.inference.lazy_value import LazyKnownValues, LazyKnownValue, \ from jedi.inference.lazy_value import LazyKnownValues, LazyKnownValue, \
LazyTreeValue LazyTreeValue
@@ -224,7 +224,7 @@ class FunctionExecutionContext(AbstractContext):
node = yield_expr.children[1] node = yield_expr.children[1]
if node.type == 'yield_arg': # It must be a yield from. if node.type == 'yield_arg': # It must be a yield from.
cn = ValueualizedNode(self, node.children[1]) cn = ContextualizedNode(self, node.children[1])
for lazy_value in cn.infer().iterate(cn): for lazy_value in cn.infer().iterate(cn):
yield lazy_value yield lazy_value
else: else:
@@ -269,7 +269,7 @@ class FunctionExecutionContext(AbstractContext):
yield result yield result
else: else:
input_node = for_stmt.get_testlist() input_node = for_stmt.get_testlist()
cn = ValueualizedNode(self, input_node) cn = ContextualizedNode(self, input_node)
ordered = cn.infer().iterate(cn) ordered = cn.infer().iterate(cn)
ordered = list(ordered) ordered = list(ordered)
for lazy_value in ordered: for lazy_value in ordered:

View File

@@ -38,7 +38,7 @@ from jedi.inference.cache import inference_state_method_cache
from jedi.inference.filters import ParserTreeFilter, LazyAttributeOverwrite, \ from jedi.inference.filters import ParserTreeFilter, LazyAttributeOverwrite, \
publish_method publish_method
from jedi.inference.base_value import ValueSet, Value, NO_VALUES, \ from jedi.inference.base_value import ValueSet, Value, NO_VALUES, \
TreeValue, ValueualizedNode, iterate_values, HelperValueMixin, _sentinel TreeValue, ContextualizedNode, iterate_values, HelperValueMixin, _sentinel
from jedi.parser_utils import get_sync_comp_fors from jedi.parser_utils import get_sync_comp_fors
@@ -171,7 +171,7 @@ class ComprehensionMixin(object):
input_types = parent_context.infer_node(input_node) input_types = parent_context.infer_node(input_node)
# TODO: simulate await if self.is_async # TODO: simulate await if self.is_async
cn = ValueualizedNode(parent_context, input_node) cn = ContextualizedNode(parent_context, input_node)
iterated = input_types.iterate(cn, is_async=is_async) iterated = input_types.iterate(cn, is_async=is_async)
exprlist = comp_for.children[1] exprlist = comp_for.children[1]
for i, lazy_value in enumerate(iterated): for i, lazy_value in enumerate(iterated):

View File

@@ -21,7 +21,7 @@ from jedi.inference.arguments import ValuesArguments, \
from jedi.inference import analysis from jedi.inference import analysis
from jedi.inference import compiled from jedi.inference import compiled
from jedi.inference.value.instance import BoundMethod, InstanceArguments from jedi.inference.value.instance import BoundMethod, InstanceArguments
from jedi.inference.base_value import ValueualizedNode, \ from jedi.inference.base_value import ContextualizedNode, \
NO_VALUES, ValueSet, ValueWrapper, LazyValueWrapper NO_VALUES, ValueSet, ValueWrapper, LazyValueWrapper
from jedi.inference.value import ClassValue, ModuleValue, \ from jedi.inference.value import ClassValue, ModuleValue, \
FunctionExecutionContext FunctionExecutionContext
@@ -304,7 +304,7 @@ def builtins_reversed(sequences, obj, arguments):
key, lazy_value = next(arguments.unpack()) key, lazy_value = next(arguments.unpack())
cn = None cn = None
if isinstance(lazy_value, LazyTreeValue): if isinstance(lazy_value, LazyTreeValue):
cn = ValueualizedNode(lazy_value.context, lazy_value.data) cn = ContextualizedNode(lazy_value.context, lazy_value.data)
ordered = list(sequences.iterate(cn)) ordered = list(sequences.iterate(cn))
# Repack iterator values and then run it the normal way. This is # Repack iterator values and then run it the normal way. This is