1
0
forked from VimPlug/jedi

removed faked_scopes, was only necessary because of weakrefs.

This commit is contained in:
David Halter
2012-12-12 21:31:41 +01:00
parent e8ddc35a1b
commit 9b45ddcb7c
4 changed files with 1 additions and 14 deletions

View File

@@ -1,20 +1,17 @@
memoize_caches = [] memoize_caches = []
faked_scopes = []
def clear_caches(): def clear_caches():
""" Jedi caches many things, that should be completed after each completion """ Jedi caches many things, that should be completed after each completion
finishes. finishes.
""" """
global memoize_caches, faked_scopes global memoize_caches
# memorize_caches must never be deleted, because the dicts will get lost in # memorize_caches must never be deleted, because the dicts will get lost in
# the wrappers. # the wrappers.
for m in memoize_caches: for m in memoize_caches:
m.clear() m.clear()
faked_scopes = [] # TODO really needed anymore? weakrefs are gone...
def memoize_default(default=None): def memoize_default(default=None):
""" This is a typical memoization decorator, BUT there is one difference: """ This is a typical memoization decorator, BUT there is one difference:

View File

@@ -255,8 +255,6 @@ class InstanceElement(use_metaclass(cache.CachedMetaClass)):
par = InstanceElement(self.instance, origin.parent_stmt, par = InstanceElement(self.instance, origin.parent_stmt,
self.is_class_var) self.is_class_var)
new.parent_stmt = par new.parent_stmt = par
cache.faked_scopes.append(par)
cache.faked_scopes.append(new)
return new return new
def __getattr__(self, name): def __getattr__(self, name):
@@ -370,7 +368,6 @@ class Function(use_metaclass(cache.CachedMetaClass, parsing.Base)):
# Create param array. # Create param array.
old_func = Function(f, is_decorated=True) old_func = Function(f, is_decorated=True)
params = helpers.generate_param_array([old_func], old_func) params = helpers.generate_param_array([old_func], old_func)
cache.faked_scopes.append(old_func)
wrappers = Execution(decorator, params).get_return_types() wrappers = Execution(decorator, params).get_return_types()
if not len(wrappers): if not len(wrappers):
@@ -519,7 +516,6 @@ class Execution(Executable):
new_param.is_generated = True new_param.is_generated = True
name = copy.copy(param.get_name()) name = copy.copy(param.get_name())
name.parent = new_param name.parent = new_param
cache.faked_scopes.append(new_param)
return name return name
result = [] result = []
@@ -675,7 +671,6 @@ class Execution(Executable):
if isinstance(copied, parsing.Function): if isinstance(copied, parsing.Function):
copied = Function(copied) copied = Function(copied)
objects.append(copied) objects.append(copied)
cache.faked_scopes.append(copied)
return objects return objects
def __getattr__(self, name): def __getattr__(self, name):
@@ -696,7 +691,6 @@ class Execution(Executable):
else: else:
copied = helpers.fast_parent_copy(scope) copied = helpers.fast_parent_copy(scope)
copied.parent = self._scope_copy(copied.parent) copied.parent = self._scope_copy(copied.parent)
cache.faked_scopes.append(copied)
return copied return copied
except AttributeError: except AttributeError:
raise MultiLevelAttributeError(sys.exc_info()) raise MultiLevelAttributeError(sys.exc_info())

View File

@@ -1,7 +1,6 @@
import copy import copy
import contextlib import contextlib
import cache
import parsing import parsing
import evaluate import evaluate
import debug import debug
@@ -196,7 +195,6 @@ def generate_param_array(args_tuple, parent_stmt=None):
values.append([arg]) values.append([arg])
pos = None pos = None
arr = parsing.Array(pos, parsing.Array.TUPLE, parent_stmt, values=values) arr = parsing.Array(pos, parsing.Array.TUPLE, parent_stmt, values=values)
cache.faked_scopes.append(arr)
return arr return arr

View File

@@ -6,7 +6,6 @@ import imp
import sys import sys
import time import time
import cache
import builtin import builtin
import modules import modules
import debug import debug
@@ -92,7 +91,6 @@ class ImportPath(parsing.Base):
n = parsing.Name(i.namespace.names[1:], zero, zero, self.import_stmt) n = parsing.Name(i.namespace.names[1:], zero, zero, self.import_stmt)
new = parsing.Import(zero, zero, n) new = parsing.Import(zero, zero, n)
new.parent = parent new.parent = parent
cache.faked_scopes.append(new)
debug.dbg('Generated a nested import: %s' % new) debug.dbg('Generated a nested import: %s' % new)
return new return new