diff options
Diffstat (limited to 'Mac/Lib/maccache.py')
-rw-r--r-- | Mac/Lib/maccache.py | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/Mac/Lib/maccache.py b/Mac/Lib/maccache.py deleted file mode 100644 index 1e2b3d0..0000000 --- a/Mac/Lib/maccache.py +++ /dev/null @@ -1,61 +0,0 @@ -# Module 'maccache' -# -# Maintain a cache of listdir(), isdir(), isfile() or exists() outcomes. -# XXX Should merge with module statcache - -import os - - -# The cache. -# Keys are absolute pathnames; -# values are 0 (nothing), 1 (file) or [...] (dir). -# -cache = {} - - -# Current working directory. -# -cwd = os.getcwd() - - -# Constants. -# -NONE = 0 -FILE = 1 -LISTTYPE = type([]) - -def _stat(name): - name = os.path.join(cwd, name) - if cache.has_key(name): - return cache[name] - if os.path.isfile(name): - cache[name] = FILE - return FILE - try: - list = os.listdir(name) - except: - cache[name] = NONE - return NONE - cache[name] = list - if name[-1:] == ':': cache[name[:-1]] = list - else: cache[name+':'] = list - return list - -def isdir(name): - st = _stat(name) - return type(st) == LISTTYPE - -def isfile(name): - st = _stat(name) - return st == FILE - -def exists(name): - st = _stat(name) - return st <> NONE - -def listdir(name): - st = _stat(name) - if type(st) == LISTTYPE: - return st - else: - raise RuntimeError, 'list non-directory' |