1
0
forked from VimPlug/jedi

Rename the filter context argument to parent_context

This commit is contained in:
Dave Halter
2019-08-22 10:06:09 +02:00
parent 4e260cdadb
commit b97237f264
7 changed files with 22 additions and 22 deletions

View File

@@ -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
) )

View File

@@ -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):

View File

@@ -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())

View File

@@ -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

View File

@@ -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

View File

@@ -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),

View File

@@ -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()
})] })]