parameters: (evaluator, context, until_position, origin_scope)
docstring: Returns all filters in order of priority for name resolution.
  
      For global name lookups. The filters will handle name resolution
      themselves, but here we gather possible filters downwards.
  
      >>> from jedi._compatibility import u, no_unicode_pprint
      >>> from jedi import Script
      >>> script = Script(u('''
      ... x = ['a', 'b', 'c']
      ... def func():
      ...     y = None
      ... '''))
      >>> module_node = script._module_node
      >>> scope = next(module_node.iter_funcdefs())
      >>> scope
      <Function: func@3-5>
      >>> context = script._get_module().create_context(scope)
      >>> filters = list(get_global_filters(context.evaluator, context, (4, 0), None))
  
      First we get the names from the function scope.
  
      >>> no_unicode_pprint(filters[0])                    #doctest: +ELLIPSIS
      MergedFilter(<ParserTreeFilter: ...>, <GlobalNameFilter: ...>)
      >>> sorted(str(n) for n in filters[0].values())
      ['<TreeNameDefinition: func@(3, 4)>', '<TreeNameDefinition: x@(2, 0)>']
      >>> filters[0]._filters[0]._until_position
      (4, 0)
      >>> filters[0]._filters[1]._until_position
  
      Then it yields the names from one level "lower". In this example, this is
      the module scope (including globals).
      As a side note, you can see, that the position in the filter is None on the
      globals filter, because there the whole module is searched.
  
      >>> list(filters[1].values())  # package modules -> Also empty.
      []
      >>> sorted(name.string_name for name in filters[2].values())  # Module attributes
      ['__doc__', '__file__', '__name__', '__package__']
  
      Finally, it yields the builtin filter, if `include_builtin` is
      true (default).
  
      >>> filters[3].values()                              #doctest: +ELLIPSIS
      [<CompiledName: ...>, ...]
docstring_summary: Returns all filters in order of priority for name resolution.
docstring_tokens: Returns all filters in order of priority for name resolution .
function: def get_global_filters(evaluator, context, until_position, origin_scope):
      """
      Returns all filters in order of priority for name resolution.
  
      For global name lookups. The filters will handle name resolution
      themselves, but here we gather possible filters downwards.
  
      >>> from jedi._compatibility import u, no_unicode_pprint
      >>> from jedi import Script
      >>> script = Script(u('''
      ... x = ['a', 'b', 'c']
      ... def func():
      ...     y = None
      ... '''))
      >>> module_node = script._module_node
      >>> scope = next(module_node.iter_funcdefs())
      >>> scope
      <Function: func@3-5>
      >>> context = script._get_module().create_context(scope)
      >>> filters = list(get_global_filters(context.evaluator, context, (4, 0), None))
  
      First we get the names from the function scope.
  
      >>> no_unicode_pprint(filters[0])                    #doctest: +ELLIPSIS
      MergedFilter(<ParserTreeFilter: ...>, <GlobalNameFilter: ...>)
      >>> sorted(str(n) for n in filters[0].values())
      ['<TreeNameDefinition: func@(3, 4)>', '<TreeNameDefinition: x@(2, 0)>']
      >>> filters[0]._filters[0]._until_position
      (4, 0)
      >>> filters[0]._filters[1]._until_position
  
      Then it yields the names from one level "lower". In this example, this is
      the module scope (including globals).
      As a side note, you can see, that the position in the filter is None on the
      globals filter, because there the whole module is searched.
  
      >>> list(filters[1].values())  # package modules -> Also empty.
      []
      >>> sorted(name.string_name for name in filters[2].values())  # Module attributes
      ['__doc__', '__file__', '__name__', '__package__']
  
      Finally, it yields the builtin filter, if `include_builtin` is
      true (default).
  
      >>> filters[3].values()                              #doctest: +ELLIPSIS
      [<CompiledName: ...>, ...]
      """
      from jedi.evaluate.context.function import FunctionExecutionContext
      while context is not None:
          # Names in methods cannot be resolved within the class.
          for filter in context.get_filters(
                  search_global=True,
                  until_position=until_position,
                  origin_scope=origin_scope):
              yield filter
          if isinstance(context, FunctionExecutionContext):
              # The position should be reset if the current scope is a function.
              until_position = None
  
          context = context.parent_context
  
      # Add builtins to the global scope.
      for filter in evaluator.builtins_module.get_filters(search_global=True):
          yield filter
function_tokens: def get_global_filters ( evaluator , context , until_position , origin_scope ) : from jedi . evaluate . context . function import FunctionExecutionContext while context is not None : # Names in methods cannot be resolved within the class. for filter in context . get_filters ( search_global = True , until_position = until_position , origin_scope = origin_scope ) : yield filter if isinstance ( context , FunctionExecutionContext ) : # The position should be reset if the current scope is a function. until_position = None context = context . parent_context # Add builtins to the global scope. for filter in evaluator . builtins_module . get_filters ( search_global = True ) : yield filter