forked from VimPlug/jedi
Rename the filter context argument to parent_context
This commit is contained in:
@@ -89,7 +89,7 @@ class FunctionContext(AbstractContext):
|
|||||||
def get_filters(self, until_position=None, origin_scope=None):
|
def get_filters(self, until_position=None, origin_scope=None):
|
||||||
yield ParserTreeFilter(
|
yield ParserTreeFilter(
|
||||||
self.inference_state,
|
self.inference_state,
|
||||||
context=self,
|
parent_context=self,
|
||||||
until_position=until_position,
|
until_position=until_position,
|
||||||
origin_scope=origin_scope
|
origin_scope=origin_scope
|
||||||
)
|
)
|
||||||
@@ -113,7 +113,7 @@ class ModuleContext(AbstractContext):
|
|||||||
next(filters)
|
next(filters)
|
||||||
yield MergedFilter(
|
yield MergedFilter(
|
||||||
ParserTreeFilter(
|
ParserTreeFilter(
|
||||||
context=self,
|
parent_context=self,
|
||||||
until_position=until_position,
|
until_position=until_position,
|
||||||
origin_scope=origin_scope
|
origin_scope=origin_scope
|
||||||
),
|
),
|
||||||
@@ -153,7 +153,7 @@ class ClassContext(AbstractContext):
|
|||||||
|
|
||||||
def get_global_filter(self, until_position=None, origin_scope=None):
|
def get_global_filter(self, until_position=None, origin_scope=None):
|
||||||
return ParserTreeFilter(
|
return ParserTreeFilter(
|
||||||
context=self,
|
parent_context=self,
|
||||||
until_position=until_position,
|
until_position=until_position,
|
||||||
origin_scope=origin_scope
|
origin_scope=origin_scope
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -68,11 +68,11 @@ def _get_definition_names(used_names, name_key):
|
|||||||
class AbstractUsedNamesFilter(AbstractFilter):
|
class AbstractUsedNamesFilter(AbstractFilter):
|
||||||
name_class = TreeNameDefinition
|
name_class = TreeNameDefinition
|
||||||
|
|
||||||
def __init__(self, context, parser_scope):
|
def __init__(self, parent_context, parser_scope):
|
||||||
self._parser_scope = parser_scope
|
self._parser_scope = parser_scope
|
||||||
self._module_node = self._parser_scope.get_root_node()
|
self._module_node = self._parser_scope.get_root_node()
|
||||||
self._used_names = self._module_node.get_used_names()
|
self._used_names = self._module_node.get_used_names()
|
||||||
self.context = context
|
self.parent_context = parent_context
|
||||||
|
|
||||||
def get(self, name, **filter_kwargs):
|
def get(self, name, **filter_kwargs):
|
||||||
return self._convert_names(self._filter(
|
return self._convert_names(self._filter(
|
||||||
@@ -81,7 +81,7 @@ class AbstractUsedNamesFilter(AbstractFilter):
|
|||||||
))
|
))
|
||||||
|
|
||||||
def _convert_names(self, names):
|
def _convert_names(self, names):
|
||||||
return [self.name_class(self.context, name) for name in names]
|
return [self.name_class(self.parent_context, name) for name in names]
|
||||||
|
|
||||||
def values(self, **filter_kwargs):
|
def values(self, **filter_kwargs):
|
||||||
return self._convert_names(
|
return self._convert_names(
|
||||||
@@ -94,11 +94,11 @@ class AbstractUsedNamesFilter(AbstractFilter):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return '<%s: %s>' % (self.__class__.__name__, self.context)
|
return '<%s: %s>' % (self.__class__.__name__, self.parent_context)
|
||||||
|
|
||||||
|
|
||||||
class ParserTreeFilter(AbstractUsedNamesFilter):
|
class ParserTreeFilter(AbstractUsedNamesFilter):
|
||||||
def __init__(self, context, node_context=None, until_position=None,
|
def __init__(self, parent_context, node_context=None, until_position=None,
|
||||||
origin_scope=None):
|
origin_scope=None):
|
||||||
"""
|
"""
|
||||||
node_context is an option to specify a second value for use cases
|
node_context is an option to specify a second value for use cases
|
||||||
@@ -107,8 +107,8 @@ class ParserTreeFilter(AbstractUsedNamesFilter):
|
|||||||
value of the other classes.
|
value of the other classes.
|
||||||
"""
|
"""
|
||||||
if node_context is None:
|
if node_context is None:
|
||||||
node_context = context
|
node_context = parent_context
|
||||||
super(ParserTreeFilter, self).__init__(context, node_context.tree_node)
|
super(ParserTreeFilter, self).__init__(parent_context, node_context.tree_node)
|
||||||
self._node_context = node_context
|
self._node_context = node_context
|
||||||
self._origin_scope = origin_scope
|
self._origin_scope = origin_scope
|
||||||
self._until_position = until_position
|
self._until_position = until_position
|
||||||
@@ -143,10 +143,10 @@ class ParserTreeFilter(AbstractUsedNamesFilter):
|
|||||||
class FunctionExecutionFilter(ParserTreeFilter):
|
class FunctionExecutionFilter(ParserTreeFilter):
|
||||||
param_name = ParamName
|
param_name = ParamName
|
||||||
|
|
||||||
def __init__(self, context, node_context=None,
|
def __init__(self, parent_context, node_context=None,
|
||||||
until_position=None, origin_scope=None):
|
until_position=None, origin_scope=None):
|
||||||
super(FunctionExecutionFilter, self).__init__(
|
super(FunctionExecutionFilter, self).__init__(
|
||||||
context,
|
parent_context,
|
||||||
node_context,
|
node_context,
|
||||||
until_position,
|
until_position,
|
||||||
origin_scope
|
origin_scope
|
||||||
@@ -157,9 +157,9 @@ class FunctionExecutionFilter(ParserTreeFilter):
|
|||||||
for name in names:
|
for name in names:
|
||||||
param = search_ancestor(name, 'param')
|
param = search_ancestor(name, 'param')
|
||||||
if param:
|
if param:
|
||||||
yield self.param_name(self.context, name)
|
yield self.param_name(self.parent_context, name)
|
||||||
else:
|
else:
|
||||||
yield TreeNameDefinition(self.context, name)
|
yield TreeNameDefinition(self.parent_context, name)
|
||||||
|
|
||||||
|
|
||||||
class GlobalNameFilter(AbstractUsedNamesFilter):
|
class GlobalNameFilter(AbstractUsedNamesFilter):
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class StubModuleValue(ModuleValue):
|
|||||||
|
|
||||||
def _get_stub_filters(self, origin_scope):
|
def _get_stub_filters(self, origin_scope):
|
||||||
return [StubFilter(
|
return [StubFilter(
|
||||||
context=self.as_context(),
|
parent_context=self.as_context(),
|
||||||
origin_scope=origin_scope
|
origin_scope=origin_scope
|
||||||
)] + list(self.iter_star_filters())
|
)] + list(self.iter_star_filters())
|
||||||
|
|
||||||
|
|||||||
@@ -469,7 +469,7 @@ class InstanceClassFilter(AbstractFilter):
|
|||||||
|
|
||||||
def _convert(self, names):
|
def _convert(self, names):
|
||||||
return [
|
return [
|
||||||
LazyInstanceClassName(self._instance, self._class_filter.context, n)
|
LazyInstanceClassName(self._instance, self._class_filter.parent_context, n)
|
||||||
for n in names
|
for n in names
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -485,7 +485,7 @@ class SelfAttributeFilter(ClassFilter):
|
|||||||
|
|
||||||
def __init__(self, value, class_value, origin_scope):
|
def __init__(self, value, class_value, origin_scope):
|
||||||
super(SelfAttributeFilter, self).__init__(
|
super(SelfAttributeFilter, self).__init__(
|
||||||
context=value,
|
parent_context=value,
|
||||||
node_context=class_value.as_context(),
|
node_context=class_value.as_context(),
|
||||||
origin_scope=origin_scope,
|
origin_scope=origin_scope,
|
||||||
is_instance=True,
|
is_instance=True,
|
||||||
@@ -508,7 +508,7 @@ class SelfAttributeFilter(ClassFilter):
|
|||||||
yield name
|
yield name
|
||||||
|
|
||||||
def _convert_names(self, names):
|
def _convert_names(self, names):
|
||||||
return [self.name_class(self.context, self._class_value, name) for name in names]
|
return [self.name_class(self.parent_context, self._class_value, name) for name in names]
|
||||||
|
|
||||||
def _check_flows(self, names):
|
def _check_flows(self, names):
|
||||||
return names
|
return names
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ class ClassFilter(ParserTreeFilter):
|
|||||||
def _convert_names(self, names):
|
def _convert_names(self, names):
|
||||||
return [
|
return [
|
||||||
self.name_class(
|
self.name_class(
|
||||||
parent_context=self.context,
|
parent_context=self.parent_context,
|
||||||
tree_name=name,
|
tree_name=name,
|
||||||
name_context=self._node_context,
|
name_context=self._node_context,
|
||||||
apply_decorators=not self._is_instance,
|
apply_decorators=not self._is_instance,
|
||||||
@@ -107,7 +107,7 @@ class ClassFilter(ParserTreeFilter):
|
|||||||
def _equals_origin_scope(self):
|
def _equals_origin_scope(self):
|
||||||
node = self._origin_scope
|
node = self._origin_scope
|
||||||
while node is not None:
|
while node is not None:
|
||||||
if node == self._parser_scope or node == self.context:
|
if node == self._parser_scope or node == self.parent_context:
|
||||||
return True
|
return True
|
||||||
node = get_cached_parent_scope(self._used_names, node)
|
node = get_cached_parent_scope(self._used_names, node)
|
||||||
return False
|
return False
|
||||||
|
|||||||
@@ -98,7 +98,7 @@ class ModuleMixin(SubModuleDictMixin):
|
|||||||
def get_filters(self, origin_scope=None):
|
def get_filters(self, origin_scope=None):
|
||||||
yield MergedFilter(
|
yield MergedFilter(
|
||||||
ParserTreeFilter(
|
ParserTreeFilter(
|
||||||
context=self.as_context(),
|
parent_context=self.as_context(),
|
||||||
origin_scope=origin_scope
|
origin_scope=origin_scope
|
||||||
),
|
),
|
||||||
GlobalNameFilter(self, self.tree_node),
|
GlobalNameFilter(self, self.tree_node),
|
||||||
|
|||||||
@@ -792,7 +792,7 @@ def get_metaclass_filters(func):
|
|||||||
for metaclass in metaclasses:
|
for metaclass in metaclasses:
|
||||||
if metaclass.py__name__() == 'EnumMeta' \
|
if metaclass.py__name__() == 'EnumMeta' \
|
||||||
and metaclass.get_root_context().py__name__() == 'enum':
|
and metaclass.get_root_context().py__name__() == 'enum':
|
||||||
filter_ = ParserTreeFilter(context=cls)
|
filter_ = ParserTreeFilter(parent_context=cls.as_context())
|
||||||
return [DictFilter({
|
return [DictFilter({
|
||||||
name.string_name: EnumInstance(cls, name).name for name in filter_.values()
|
name.string_name: EnumInstance(cls, name).name for name in filter_.values()
|
||||||
})]
|
})]
|
||||||
|
|||||||
Reference in New Issue
Block a user